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  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: Michael Davidsaver via Tech-talk <tech-talk at aps.anl.gov>
To: Han Lee <jeonglee at lbl.gov>, Di Wang <di.wang at kek.jp>, daykin at frib.msu.edu
Cc: jerzy.jamroz at ess.eu, EPICS tech-talk <tech-talk at aps.anl.gov>
Date: Wed, 29 Jan 2025 20:17:30 -0800
On 1/29/25 18:52, Han Lee via Tech-talk wrote:
FYI, The supported PCI IDs
https://urldefense.us/v3/__https://github.com/epics-modules/mrfioc2/blob/master/mrmShared/linux/uio_mrf.c*L41-L74__;Iw!!G_uCfscf7eWS!fmvL8Q4idl4H-vU8PRzkZ_7q-06ss5Uko2-Mz4copkyjjgZ8r5Y6nO8hCq9Om-Ak4SuZD_g0iUqdqQ4IVivKHKh7Iw$  <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.


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

Navigate by Date:
Prev: Re: MRF kernel modules not seeing hardware Han Lee via Tech-talk
Next: RE: concat multiple waveform records [SEC=OFFICIAL] Jignesh Patel 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 Han Lee 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
ANJ, 29 Jan 2025 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions ·
· Download · Search · IRMIS · Talk · Documents · Links · Licensing ·