epics-modules / xxx

APS BCDA synApps module: xxx
http://epics-modules.github.io/xxx
Other
5 stars 6 forks source link

PV aliases work around double-colon problem #31

Closed prjemian closed 4 years ago

prjemian commented 4 years ago

refs #30

keenanlang commented 4 years ago

Shouldn't there also be a set of aliases for the iocAdminVxWorks PVs?

Also, it probably shouldn't be an example file, it's not really an example of how to setup support it's us finding a way to use a generic prefix for loading a given database. Just change the startup script to load the aliases after the iocStats db is loaded.

prjemian commented 4 years ago

@keenanlang : Those are good comments. @kmpeters : Thanks for the review.

prjemian commented 4 years ago

Commits 3f3efd1 & 7447a68 also change the hard-coded IOC name xxx into the environment variable $(PREFIX) (#28) since that is what creates the double-colon in the PV names. This PR will eliminate the need for PR #29.

prjemian commented 4 years ago

Do not merge yet. Need to get the list of PVs created under VxWorks.

What about CygWin?

keenanlang commented 4 years ago

Here's the extra pv's for vxWorks

$(IOC):MEM_BLK $(IOC):MEM_BLK_FREE $(IOC):BOOTLINE1 $(IOC):BOOTLINE2 $(IOC):BOOTLINE3 $(IOC):BOOTLINE4 $(IOC):BOOTLINE5 $(IOC):BOOTLINE6 $(IOC):BOOTLINE $(IOC):SYS_MBUF_FREE $(IOC):SYS_MBUF_MAX $(IOC):IFI_ERR_CNT $(IOC):IFO_ERR_CNT $(IOC):BSP_REV $(IOC):DAT_MBUF_FREE $(IOC):DAT_MBUF_MAX $(IOC):CLUST_0_0_0 $(IOC):CLUST_0_0_1 $(IOC):CLUST_0_0_2 $(IOC):CLUST_0_0_3 $(IOC):DAT_CLUST_AVAIL_0 $(IOC):CLUST_0_1_0 $(IOC):CLUST_0_1_1 $(IOC):CLUST_0_1_2 $(IOC):CLUST_0_1_3 $(IOC):DAT_CLUST_AVAIL_1 $(IOC):CLUST_0_2_0 $(IOC):CLUST_0_2_1 $(IOC):CLUST_0_2_2 $(IOC):CLUST_0_2_3 $(IOC):DAT_CLUST_AVAIL_2 $(IOC):CLUST_0_3_0 $(IOC):CLUST_0_3_1 $(IOC):CLUST_0_3_2 $(IOC):CLUST_0_3_3 $(IOC):DAT_CLUST_AVAIL_3 $(IOC):CLUST_0_4_0 $(IOC):CLUST_0_4_1 $(IOC):CLUST_0_4_2 $(IOC):CLUST_0_4_3 $(IOC):DAT_CLUST_AVAIL_4 $(IOC):CLUST_0_5_0 $(IOC):CLUST_0_5_1 $(IOC):CLUST_0_5_2 $(IOC):CLUST_0_5_3 $(IOC):DAT_CLUST_AVAIL_5 $(IOC):CLUST_0_6_0 $(IOC):CLUST_0_6_1 $(IOC):CLUST_0_6_2 $(IOC):CLUST_0_6_3 $(IOC):DAT_CLUST_AVAIL_6 $(IOC):CLUST_0_7_0 $(IOC):CLUST_0_7_1 $(IOC):CLUST_0_7_2 $(IOC):CLUST_0_7_3 $(IOC):DAT_CLUST_AVAIL_7 $(IOC):CLUST_1_0_0 $(IOC):CLUST_1_0_1 $(IOC):CLUST_1_0_2 $(IOC):CLUST_1_0_3 $(IOC):SYS_CLUST_AVAIL_0 $(IOC):CLUST_1_1_0 $(IOC):CLUST_1_1_1 $(IOC):CLUST_1_1_2 $(IOC):CLUST_1_1_3 $(IOC):SYS_CLUST_AVAIL_1 $(IOC):CLUST_1_2_0 $(IOC):CLUST_1_2_1 $(IOC):CLUST_1_2_2 $(IOC):CLUST_1_2_3 $(IOC):SYS_CLUST_AVAIL_2 $(IOC):CLUST_1_3_0 $(IOC):CLUST_1_3_1 $(IOC):CLUST_1_3_2 $(IOC):CLUST_1_3_3 $(IOC):SYS_CLUST_AVAIL_3 $(IOC):CLUST_1_4_0 $(IOC):CLUST_1_4_1 $(IOC):CLUST_1_4_2 $(IOC):CLUST_1_4_3 $(IOC):SYS_CLUST_AVAIL_4 $(IOC):CLUST_1_5_0 $(IOC):CLUST_1_5_1 $(IOC):CLUST_1_5_2 $(IOC):CLUST_1_5_3 $(IOC):SYS_CLUST_AVAIL_5 $(IOC):CLUST_1_6_0 $(IOC):CLUST_1_6_1 $(IOC):CLUST_1_6_2 $(IOC):CLUST_1_6_3 $(IOC):SYS_CLUST_AVAIL_6 $(IOC):CLUST_1_7_0 $(IOC):CLUST_1_7_1 $(IOC):CLUST_1_7_2 $(IOC):CLUST_1_7_3 $(IOC):SYS_CLUST_AVAIL_7

prjemian commented 4 years ago

For VxWorks, these are in addition to the PVs above?

keenanlang commented 4 years ago

Yes, these are the differences between iocAdminSoft.db and iocAdminVxWorks.db

keenanlang commented 4 years ago

Checking cygwin, with the macros that we use, ioc.db ends up being the exact same as iocAdminSoft.db. We can change cygwin's dbLoadDatabase line to be the same as the other soft IOCs.

prjemian commented 4 years ago

Did you mean "... cygwin's dbLoadRecords line ..."?

prjemian commented 4 years ago

@keenanlang : Check st.cmd.Cygwin -- no aliases there yet

prjemian commented 4 years ago

Ready for review

anjohnson commented 4 years ago

Note that many of those CLUST and DAT_CLUST PVs are meaningless with VxWorks 6.9, they refer to network memory management parts that are no longer provided in the newer network stack.

prjemian commented 4 years ago

I'm happy to remove them.

anjohnson commented 4 years ago

(and SYS_CLUST too)

prjemian commented 4 years ago

Anything matching *CLUST*?

keenanlang commented 4 years ago

If all the clust PV's are unnecessary, we could move dbLoadRecords(iocAdminSoft.db) to common.iocsh and just have the vxWorks startup also include iocRTOS.db instead of iocAdminVxWorks.db.

prjemian commented 4 years ago

@keenanlang Can you do that in a branch and make PR to this branch?

keenanlang commented 4 years ago

Oops, made a second branch off of this one, but forgot to switch to it before making change.

prjemian commented 4 years ago

That's ok. I see what you have done. Looks good to me.

keenanlang commented 4 years ago

If everything is good on your end I'll merge

prjemian commented 4 years ago

I'm good.