1 typedef struct pci_config_t pci_config_t;
5 uint32_t dev; /* bus, dev, fn */
16 typedef struct pci_dev_t pci_dev_t;
27 int (*config_cb)(const pci_config_t *config);
31 extern int ide_config_cb2(const pci_config_t *config);
32 extern int eth_config_cb(const pci_config_t *config);
33 extern int macio_heathrow_config_cb(const pci_config_t *config);
34 extern int macio_keylargo_config_cb(const pci_config_t *config);
35 extern int vga_config_cb(const pci_config_t *config);
36 extern int host_config_cb(const pci_config_t *config);
37 extern int sabre_config_cb(const pci_config_t *config);
38 extern int bridge_config_cb(const pci_config_t *config);
39 extern int ebus_config_cb(const pci_config_t *config);
40 extern int i82378_config_cb(const pci_config_t *config);
41 extern int usb_ohci_config_cb(const pci_config_t *config);
43 static inline int pci_compat_len(const pci_dev_t *dev)
46 const char *path = dev->compat;
48 while ((len = strlen(path)) != 0) {
55 extern const pci_dev_t *pci_find_device(uint8_t class, uint8_t subclass,
56 uint8_t iface, uint16_t vendor,