[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.