diff options
Diffstat (limited to 'src/pci.h')
-rw-r--r-- | src/pci.h | 34 |
1 files changed, 34 insertions, 0 deletions
@@ -25,4 +25,38 @@ u8 pci_config_readb(PCIDevice d, u32 addr); int pci_find_device(u16 vendid, u16 devid, int index, PCIDevice *dev); int pci_find_class(u32 classid, int index, PCIDevice *dev); + +/**************************************************************** + * PIR table + ****************************************************************/ + +struct pir_header { + u32 signature; + u16 version; + u16 size; + u8 router_bus; + u8 router_devfunc; + u16 exclusive_irqs; + u32 compatible_devid; + u32 miniport_data; + u8 reserved[11]; + u8 checksum; +} PACKED; + +#define PIR_SIGNATURE 0x52495024 // $PIR + +struct link_info { + u8 link; + u16 bitmap; +} PACKED; + +struct pir_slot { + u8 bus; + u8 dev; + struct link_info links[4]; + u8 slot_nr; + u8 reserved; +} PACKED; + + #endif |