summaryrefslogtreecommitdiff
path: root/src/sys/include
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-10-13 12:03:54 -0400
committerIan Moffett <ian@osmora.org>2025-10-13 12:03:54 -0400
commit155a36650ba5e207269d312c9a3d97b351fa5026 (patch)
tree51c49e9a2148e1ad3fcb7425447196907ffaa2fb /src/sys/include
parentda018f309810ff6a232244c5d4bcc60644316029 (diff)
kern: pci: Parse PCI capability list per device
This allows us to see what kind of capabilities the device has (e.g., MSI/MSI-X) Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'src/sys/include')
-rw-r--r--src/sys/include/io/pci/pci.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/sys/include/io/pci/pci.h b/src/sys/include/io/pci/pci.h
index e6d0a24..27d3787 100644
--- a/src/sys/include/io/pci/pci.h
+++ b/src/sys/include/io/pci/pci.h
@@ -82,6 +82,9 @@ typedef uint32_t pcival_t;
* @vendor: Vendor ID
* @device: Device ID
* @bar: Base address registers
+ * @caplist: Set if a capability list is implemented
+ * @msix: Device implements MSI-X
+ * @msi: Device implements MSI
*/
struct pci_device {
uint16_t bus;
@@ -93,6 +96,9 @@ struct pci_device {
uint16_t vendor;
uint16_t device;
uint32_t bar[6];
+ uint8_t caplist : 1;
+ uint8_t msix : 1;
+ uint8_t msi : 1;
TAILQ_ENTRY(pci_device) link;
};