Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Send email to Ken Brobeck requesting:
    1. create controls infrastructure for a new  linuxRT linuxRT CPU and / or IOC to a specific facility production server.
      1. includes $IOC_DATA/<cpu,ioc>  directories
      2. includes $IOC_DATA/<ioc>/<autosave,autosave-req,restore,iocInfo,archive>  directories
    2. add CPU boot information to the DHCP configuration file, and reboot the DHCP server. Ken will need the following details:
      1. Which facility the CPU will boot (e.g. facet, lcls, lcls2, testfac). Thins This indicates the path to the startup.cmd  script and the DHCP server.
      2.  MAC Address of the CPU
      3. The CPU EPICS target architecture  (e.g. linuxRT-x86,linuxRT-x86_64,etc)
  2. Proceed to Development Step Development Step #3

Development:    dev

  1. Create the $IOC_DATA directory for your cpu and iocs  iocs as follows:
      1. cd $IOC_DATDATA
  2.  Create the $EPICS_IOCS cpu and ioc boot directories
    1. cd $EPICS_IOCS
    2. mkdir cpu-<area>-<subsystem-prefix><2-digit#>  
    3. mkdir  sioc-<area>-<subsystem-prefix><2-digit#>
  3. Setup cpu directory files
    1. cd cpu-<area>-<subsystem-prefix><2-digit#>
    2. Setup relative symbolic links to the common startup script and EPICS version:.
      1. ln -s ../common/st.cmd.linuxRT.cpu               startupcpu  startup.cmd
      2. ln -s ../common/bin/<epics base version>     epicsSpecificRelease epicsSpecificRelease
    3. Generate the file kernel-module.cmd. This file load kernels modules and drivers: kernel-modules.cmd
      1. for examples click  here.
  4. Setup ioc directory files
    1. cd sioc-<area>-<subsystem-prefix><2-digit#>
    1. copy the ioc startup.cmd script from  $EPICS_IOCS/template
      1.  for linuxRT running iocsh:    cp ../template/startup.cmd.linuxRT          startup.cmd
      2. for  linuxRT running cexp:     cp ../template/startup.cmd.linuxRT.cexp  startup.cmd
    2. edit startup.cmd
      1.  replace <ioc>  with your ioc name and for cexp replace <facility>
      2.  change path of the EPICS_IOC_APP in if your st,.cmd file is in a non-standard location.
    1. cp ../template/screenrc   screenrc
    2. edit screenrc and replace <ioc> with your ioc name.
    3. Setup a relative symbolic link to the TOP of the IOC Application release.
      1. ln -s ../../iocTop/<app>/<version> iocSpecificRelease
  5. Modify $EPICS_IOCS/screeniocs    Please note that this is a symbolic link to this CVSed a CVS file:
    1. verify that the file in use has not been modified without being committed.
      1. cd $EPICS_IOCS/facility
      2. cvs diff -r HEAD screeniocs
      3. if these is an there are issues, then send email to whoever made the change or to controls-software that you are about to update this file and uncommitted edits will be lost, so please commit your changes to CVS.  If you don't get a response,  you can either add the changes to CVS in addition to yours or just add yours.
         
    2. check out screeniocs from CVS into your work area
      1. cd
      2. cd <work>
        cvs co epics/iocCommon/<facility>   , where facility is Dev,Prod,facet,acctest
        1. cd epics/iocCommon/<facility>/screeniocs
        2. edit screeniocs
          1. add line for cpu
            format:  cpu-<area>-<subsystem-prefix><2-digit #>      <ts>   <ts port #t>   <screen  host>   [ # comment]
          2. add line for each ioc
            format:  sioc-<area>-<subsystem prefix><2-digit #>  cpu-<area>-<subsystem-prefix><2-digit #>    <account>   [ # comment]
          3. The "comment" field in  screeeniocs  is optional and must be precede but  "#".
    3. commit your changes of screeniocs to CVS  as follows:
      1.  cvs commit  -m "added cpu and ioc blah" screeniocs
    4. update the screeniocs file in use
      1. cd $EPICS_IOCS/<facility>
      2.  rm -f screeniocs
      3. cvs update screeniocs
         

...