EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: mrfioc2 Linux driver
From: Jeong Han Lee <[email protected]>
To: [email protected]
Date: Tue, 7 Aug 2018 20:24:37 +0200
Hi,

There are are two versions of mrfioc2, one is http://epics.sourceforge.net/mrfioc2/ and the other is the PSI one. At the some level, Michael merged from PSI changes into the community master branch.

Last year, ESS supported Michael in order to integrate all MTCA EVR 300 and PCIe EVR 300DC, because MTCA EVR 300 and PCIe EVR 300DC are the main EVRs which are used at ESS.

The recent version of mrfioc2 is 2.2.0, and based on that version, ESS has the local customized one in github [1]. The most files which we've changed are DB and template files, and few configuration related files.

The kernel driver and other configuration files can be done manually according to Michael's explanation. In addition, you might get the glimpse how ESS does in README [2]. Note that one shouldn't delete the cloned repository after the installation, because it uses the symbolic link instead of a hard copied path.

In addition, two directories (template, cmds) in e3-mrfioc have useful information about hardware orientated substitution files and ESS EPICS startup scripts, which one can ignore the beginning few lines started with "require". In the template directory, you can find the ESS PCIe-EVR-300DC substitutions file. We are planing to merge our changes to the main community one after this summer before next year.


  HTH,
  Han


[1] https://github.com/javicereijo/mrfioc2
[2] https://github.com/icshwi/e3-mrfioc2
[3] https://raw.githubusercontent.com/icshwi/e3-mrfioc2/master/template/evr-pcie-300dc-ess.substitutions

On 08/07/2018 06:15 PM, Michael Davidsaver wrote:
mrfioc2 3-0-0

The latest version of the mrfioc2 modules is 2.2.0 released in October 2017.  Are you my chance using the PSI forked version?

http://epics.sourceforge.net/mrfioc2/

Please note the Supported Hardware section.  This includes the PCIe-EVR-300dc

Section 4 of my manual covers the setup you're trying to do.

http://epics.sourceforge.net/mrfioc2/evr-usage.pdf

There is also a example UDEV rule in mrmShared/linux/README

If you're able to try 2.2.0, and still have difficulty getting the kernel module loaded,
please reply with the output of:

lsmod |grep mrf

dmesg|grep mrf


On 08/07/2018 08:40 AM, Steve Kinder - UKRI STFC wrote:
Hello all


I am trying to get an MRF PCIe-EVR-300DC configured and working on Linux using mrfioc2. I think I have an IOC built. I think I have some understanding of the parameters to mrmEvrSetupPCI(EVR-01, 1, 0, 0, 0). I could well be wrong on those but that isn't the source of my immediate problem. Executing the previous call gives:


Can't open /sys/module/mrf/parameters/interfaceversion in order to read kernel module interface version. Is kernel module loaded?


I found some documentation that indicates an MRF kernel driver is also required:


$ make -C /location/of/mrmShared/linux \

KERNELDIR=/lib/modules/`uname -r`/build modules_install

$ sudo depmod -a

$ sudo modprobe mrf


I seem to need to execute the first line as root or I get permissions problems. However then I get:


# make -C /home/controls/work/R3.14.12.5/support/mrfioc2/3-0-0/mrmShared/linux KERNELDIR=/lib/modules/`uname -r`/build modules_install
make: Entering directory `/home/controls/work/R3.14.12.5/support/mrfioc2/3-0-0/mrmShared/linux'
make -C /lib/modules/3.10.0-514.6.1.el7.x86_64/build M=/home/controls/work/R3.14.12.5/support/mrfioc2/3-0-0/mrmShared/linux modules_install
make[1]: Entering directory `/usr/src/kernels/3.10.0-514.6.1.el7.x86_64'
Makefile:641: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler
   DEPMOD  3.10.0-514.6.1.el7.x86_64
make[1]: Leaving directory `/usr/src/kernels/3.10.0-514.6.1.el7.x86_64'
make: Leaving directory `/home/controls/work/R3.14.12.5/support/mrfioc2/3-0-0/mrmShared/linux'


The documentation dates back to 2015, Rev 7, so may be out of date?


Any advice/help would be much appreciated. Further documentation?


My kernel is 3.10.0-514.6.1.el7.x86_64, mrfioc2 3-0-0


Thanks


Steve


d
o
m
o
d
p
r
o
b
e
m
r
f



References:
mrfioc2 Linux driver Steve Kinder - UKRI STFC
Re: mrfioc2 Linux driver Michael Davidsaver

Navigate by Date:
Prev: Re: mrfioc2 Linux driver Michael Davidsaver
Next: Re: IOC Crash with No Exception Generated Ricardo Cardenes via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: mrfioc2 Linux driver Michael Davidsaver
Next: Re: mrfioc2 Linux driver Steve Kinder - UKRI STFC
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
ANJ, 09 Aug 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·