From: Tim Harvey Date: Fri, 8 Aug 2014 05:49:56 +0000 (-0700) Subject: pci: add support for board_pci_fixup_dev function X-Git-Tag: v2014.10-rc3~79^2^2~18 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=0991866cf7a10d4868aa2a10940b4def0f68cc50;p=u-boot pci: add support for board_pci_fixup_dev function Some board-level drivers may wish to have per-device fixup functions for PCI devices. Signed-off-by: Tim Harvey --- diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index 4fd9c532b3..28859f3161 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -648,6 +648,10 @@ int pci_hose_scan_bus(struct pci_controller *hose, int bus) pci_hose_read_config_word(hose, dev, PCI_DEVICE_ID, &device); pci_hose_read_config_word(hose, dev, PCI_CLASS_DEVICE, &class); +#ifdef CONFIG_PCI_FIXUP_DEV + board_pci_fixup_dev(hose, dev, vendor, device, class); +#endif + #ifdef CONFIG_PCI_SCAN_SHOW indent++; diff --git a/include/pci.h b/include/pci.h index 461f17c058..2ff73653c5 100644 --- a/include/pci.h +++ b/include/pci.h @@ -659,6 +659,13 @@ extern int pci_hose_find_cap_start(struct pci_controller *hose, pci_dev_t dev, extern int pci_find_cap(struct pci_controller *hose, pci_dev_t dev, int pos, int cap); +#ifdef CONFIG_PCI_FIXUP_DEV +extern void board_pci_fixup_dev(struct pci_controller *hose, pci_dev_t dev, + unsigned short vendor, + unsigned short device, + unsigned short class); +#endif + const char * pci_class_str(u8 class); int pci_last_busno(void);