diff options
author | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2013-07-04 17:17:45 +0300 |
---|---|---|
committer | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2013-07-25 11:35:58 +0200 |
commit | aad0747216cab56a8cee5c1401c094543ed8be2d (patch) | |
tree | 854c8adaafde2becb7bb441f161fe8c0716397a0 /src/arch | |
parent | 026ff3e436799b54daec8805dc574146793f4903 (diff) | |
download | coreboot-aad0747216cab56a8cee5c1401c094543ed8be2d.tar.xz |
Redefine pci_bus_default_ops as function
Taking device_t as a parameter, this allows to alter the PCI config
access handlers. This is useful to add tracing of PCI config writes
for devices having problems to initialise correctly.
On older AMD platform PCI MMIO may not be able to fully configure all
PCI devices/nodes, while MMIO_SUPPORT_DEFAULT would be preferred due
to its atomic nature. So those can be forced to IO config instead.
Change-Id: I2162884185bbfe461b036caf737980b45a51e522
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/3608
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@google.com>
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/armv7/include/arch/pci_ops.h | 5 | ||||
-rw-r--r-- | src/arch/x86/include/arch/pci_ops.h | 15 |
2 files changed, 2 insertions, 18 deletions
diff --git a/src/arch/armv7/include/arch/pci_ops.h b/src/arch/armv7/include/arch/pci_ops.h index 4bbb7d3de5..7a7ed32a67 100644 --- a/src/arch/armv7/include/arch/pci_ops.h +++ b/src/arch/armv7/include/arch/pci_ops.h @@ -20,9 +20,6 @@ #ifndef ARCH_ARMV7_PCI_OPS_H #define ARCH_ARMV7_PCI_OPS_H -static inline const struct pci_bus_operations *pci_config_default(void) -{ - return NULL; -} +/* Empty stub until PCI includes are properly fixed. */ #endif diff --git a/src/arch/x86/include/arch/pci_ops.h b/src/arch/x86/include/arch/pci_ops.h index fa293173d5..b7ec0ba8d8 100644 --- a/src/arch/x86/include/arch/pci_ops.h +++ b/src/arch/x86/include/arch/pci_ops.h @@ -7,19 +7,6 @@ extern const struct pci_bus_operations pci_cf8_conf1; extern const struct pci_bus_operations pci_ops_mmconf; #endif -#if CONFIG_MMCONF_SUPPORT_DEFAULT -#define pci_bus_default_ops &pci_ops_mmconf -#else -#define pci_bus_default_ops &pci_cf8_conf1 -#endif - -static inline const struct pci_bus_operations *pci_config_default(void) -{ -#if CONFIG_MMCONF_SUPPORT_DEFAULT - return &pci_ops_mmconf; -#else - return &pci_cf8_conf1; -#endif -} +const struct pci_bus_operations *pci_bus_default_ops(device_t dev); #endif /* ARCH_I386_PCI_OPS_H */ |