EPICS Home

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  2018  2019  2020  2021  2022  2023  2024  <2025 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  <2025
<== Date ==> <== Thread ==>

Subject: Re: MRF kernel modules not seeing hardware
From: Han Lee via Tech-talk <tech-talk at aps.anl.gov>
To: "Daykin, Evan" <daykin at frib.msu.edu>
Cc: EPICS tech-talk <tech-talk at aps.anl.gov>
Date: Thu, 30 Jan 2025 09:14:35 -0800
Hi Evan,

Yes, two models were supported by mrfioc2 long ago. At least we found out the root cause, enjoy your PCI bus configuration troubleshooting.
One time, from my experience, the PCI ID was defined in the board wrongly, Jukka did fix the board.

Thanks,
Han


On Thu, Jan 30, 2025 at 7:31 AM Daykin, Evan <daykin at frib.msu.edu> wrote:

Hi Han,

 

These are cPCI-EVG-300 and cPCI-EVR-300, which “should” be supported, and indeed they are with our other CPU cards that are cooperating. They’re reporting different IDs to different hardware. At this time I don’t think anything needs to be added, rather that there’s some hairy PCI bus configuration issue.

 

-Evan

 

From: Han Lee <jeonglee at lbl.gov>
Sent: Wednesday, January 29, 2025 11:54 PM
To: Daykin, Evan <daykin at frib.msu.edu>
Cc: Michael Davidsaver <mdavidsaver at gmail.com>; Di Wang <di.wang at kek.jp>; EPICS tech-talk <tech-talk at aps.anl.gov>; jerzy.jamroz at ess.eu
Subject: Re: MRF kernel modules not seeing hardware

 

[EXTERNAL] This email originated from outside of FRIB

Hi Evan,

 

The MRF kernel driver code defines the supported MRF cards defined in

as Di mentioned.

 

The hardware support is the same as +5 years ago in the mrf kernel support, when I left the MTCA-verse at ESS.

 

So my question is now, what MRF hardwares do you use currently?

 

Since I don't see your PCI ID in the kernel source and my pci.ids file, we need to understand what hardware you have now.

If this is the case, we can modify the mrfioc2 kernel driver to support your hardware.

 

1. In most cases, mrfioc2 will work, I guess your hardware is strongly based on the MTCA MRF product lines.

2. In the worst case scenario, someone has to test the hardware and update the device support within the mrfioc2 kernel.

 

ESS may have the latest kernel driver for your hardware, I guess. Jerzy will confirm it.

 

Best,

Han

 

 

On Wed, Jan 29, 2025 at 8:40PM Daykin, Evan <daykin at frib.msu.edu> wrote:

Are the PCI IDs supposed to be intrinsic/stored on the card? The odd thing I'm seeing is that the *same* card on the same backplane has a different ID depending on which CPU I use. A known "good" CPU card and kernel module install is seeing 152, the "bad" is seeing 150. 


From: Michael Davidsaver <mdavidsaver at gmail.com>
Sent: Wednesday, January 29, 2025 11:17:30 PM
To: Han Lee <jeonglee at lbl.gov>; Di Wang <di.wang at kek.jp>; daykin at frib.msu.edu <daykin at frib.msu.edu>
Cc: EPICS tech-talk <tech-talk at aps.anl.gov>; jerzy.jamroz at ess.eu <jerzy.jamroz at ess.eu>
Subject: Re: MRF kernel modules not seeing hardware

 

[EXTERNAL] This email originated from outside of FRIB
On 1/29/25 18:52, Han Lee via Tech-talk wrote:
> FYI, The supported PCI IDs
> https://github.com/epics-modules/mrfioc2/blob/master/mrmShared/linux/uio_mrf.c#L41-L74 <https ://github.com/epics-modules/mrfioc2/blob/master/mrmShared/linux/uio_mrf.c#L41-L74>


I think the essential point has already been made, when a PCI device is enumerated,
but no loaded driver associates, this is almost always the result of a PCI ID mis-match.

fyi. the 'modinfo' utility can dump the match/alias list from the meta-data stored
in a compiled kernel module.

> $ modinfo mrf.ko
...
> alias:          pci:v000010EEd00007011sv00001A3Esd0000232Cbc*sc*i*
> alias:          pci:v000010EEd00007011sv00001A3Esd0000132Cbc*sc*i*
> alias:          pci:v00001A3Ed0000152Csv00001A3Esd0000152Cbc*sc*i*
> alias:          pci:v00001A3Ed0000252Csv00001A3Esd0000252Cbc*sc*i*
> alias:          pci:v000010EEd00007011sv00001A3Esd0000172Cbc*sc*i*
> alias:          pci:v00001204d0000EC30sv00001A3Esd0000172Cbc*sc*i*
> alias:          pci:v000010B5d00009056sv00001A3Esd0000192Cbc*sc*i*
> alias:          pci:v000010B5d00009030sv00001A3Esd000011E6bc*sc*i*
> alias:          pci:v000010B5d00009030sv00001A3Esd000020E6bc*sc*i*
> alias:          pci:v000010B5d00009030sv00001A3Esd000020DCbc*sc*i*
> alias:          pci:v000010B5d00009030sv00001A3Esd000010E6bc*sc*i*
...

These lines decode as key-value pairs with wildcards for some values.

eg. "pci:v000010B5d00009030sv00001A3Esd000010E6bc*sc*i*"

will match a PCI vendor:device 0x10ee:0x9030 sub-vendor:sub-device 0x1a3e:0x10e6

"bc*" and "sc*" match any class/sub-class

"i*" matches any interface.  Although I'm not sure what "interface" means in this context.



--

Jeong Han Lee, Dr.rer.nat.

Lawrence Berkeley National Laboratory

https://orcid.org/0000-0002-1699-2660



--
Jeong Han Lee, Dr.rer.nat.
Lawrence Berkeley National Laboratory
https://orcid.org/0000-0002-1699-2660

References:
Re: MRF kernel modules not seeing hardware Han Lee via Tech-talk
Re: MRF kernel modules not seeing hardware Michael Davidsaver via Tech-talk
Re: MRF kernel modules not seeing hardware Daykin, Evan via Tech-talk
Re: MRF kernel modules not seeing hardware Han Lee via Tech-talk
RE: MRF kernel modules not seeing hardware Daykin, Evan via Tech-talk

Navigate by Date:
Prev: RE: MRF kernel modules not seeing hardware Daykin, Evan via Tech-talk
Next: Understanding ASYN_CANBLOCK Marco Filho 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  2018  2019  2020  2021  2022  2023  2024  <2025
Navigate by Thread:
Prev: RE: MRF kernel modules not seeing hardware Daykin, Evan via Tech-talk
Next: RE: MRF kernel modules not seeing hardware Daykin, Evan 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  2018  2019  2020  2021  2022  2023  2024  <2025