1

While browsing through 'prtconf' output, I found the following properties for the PCIe device I'm implementing driver for:

% prtconf -v | less
...
name='pci-msix-capid-pointer' type=int items=1
           value=000000b0
name='pci-msi-capid-pointer' type=int items=1
           value=00000050
...

I guess these indicate MSI/MSI-X specific capabilities supported by the PCIe device, am I right? But what does value mean here?

Mark
  • 6,052
  • 8
  • 61
  • 129
  • 1
    FYI, you can start looking through the source code here: http://src.illumos.org/source/xref/illumos-gate/usr/src/uts/i86pc/io/pci/pci_common.c#274 – Andrew Henle Oct 30 '15 at 14:20
  • @Andrew, thanks for link. Unfortunately, I'm still not at that level of knowledge of Solaris to easily browse such a complex code. Could you roughly point at the place where 'value' of pci-msi-capid-pointer is retreived, i.e. what is printed by prtconf in 'value' field. Thanks! – Mark Nov 01 '15 at 23:03

1 Answers1

2

You'd do well to look at pci_common_intr_ops() in the file that @andrew-henle pointed you to. The values refer to the offset into the PCI or PCI-E configuration space. If your device doesn't support MSI-X interrupts, then you won't see that property.

James McPherson
  • 2,476
  • 1
  • 12
  • 16