On 08/09/2018 08:21 AM, Steve Kinder - UKRI STFC wrote:
> Hi Michael
>
>
> Thanks for your response.
>
>
> Yes we require the PSI version for the VME-EVR/M-300s we also use.
>
>
> I have moved on from my original problem. Of course you have to do a make in the mrmShared/linux directory before doing the command documented to install the driver.
>
>
> I got compilation errors when trying to make the 3-0-0 driver. Since it should work with my IOC and a PCIe-EVR-300DC, and the driver with 2-2-0 builds, I have gone over to mrfioc2 2-2-0 for this. I still get the original STACKPOINTER message on installation but the driver is copied to /lib/modules/`uname -r`/extra so I think that's all ok?
>> Makefile:641: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler
This error suggests that your build is using a different gcc version (< 4.9) then was used to
build the kernel. I don't believe that the gcc stack protector change the ABI or calling
conventions, so it should be ok to mix objects built with and without this option.
https://lwn.net/Articles/584225/
You can add "V=1" to your make to see which gcc executable is being used.
> I executed 'depmod -a', 'modprobe mrf' and rebooted.
>
>
> My current problem (I think) is:
>
>
> 'grep mrf /proc/devices' returns nothing
>
>
> 'dmesg | grep mrf' produces:
>
>
> [ 5.296883] mrf-pci 0000:81:00.0: Attaching MRF device w/o PLX bridge (00007011)
> [ 5.296898] mrf-pci 0000:81:00.0: no match for version 0x04020017 against 18
>
> Neither of these seem right?
Definitely wrong.. The second message looks like a mixup in the linux driver code,
which is doing a cross comparison between the PCI ID of each device,
and the MRF form factor code. The card advertises type 0x17 (PCIe EVR) which
is to be expected from a PCIe-EVR-300DC. However, the driver apparently
wants this to be 0x18 (MTCA EVR).
This doesn't match up with what I have in:
https://github.com/epics-modules/mrfioc2/blob/master/mrmShared/linux/uio_mrf.c#L731-L738
If you are using the kernel module from 2.2.0 then please send the output of
> lspci -vv -nn -s 81:0.0
> 'lsmod | grep mrf' produces:
>
>
> mrf 18124 0
> uio 19259 1 mrf
> parport 42348 1 mrf
>
> My attempts to use mrmEvrSetupPCI from the IOC have so far failed. Preumambly in part down to the abover 'error' reported via dmesg?
Correct. Until the linux driver initializes successfully the userspace component can't do much.
Look for "MRF Setup complete" to be printed, and a file /dev/uio* to be created.
https://github.com/epics-modules/mrfioc2/blob/master/mrmShared/linux/uio_mrf.c#L671
- Replies:
- Re: mrfioc2 Linux driver Steve Kinder - UKRI STFC
- References:
- mrfioc2 Linux driver Steve Kinder - UKRI STFC
- Re: mrfioc2 Linux driver Michael Davidsaver
- Re: mrfioc2 Linux driver Steve Kinder - UKRI STFC
- Navigate by Date:
- Prev:
Re: mrfioc2 Linux driver Jörn Dreyer
- Next:
Re: mrfioc2 Linux driver Michael Davidsaver
- 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
<2018>
2019
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
<2018>
2019
2020
2021
2022
2023
2024
|