From 3521e260e3477b3c49835eb2330671e0bc7abe65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ky=C3=B6sti=20M=C3=A4lkki?= Date: Wed, 26 Dec 2018 19:33:28 +0200 Subject: device/pci_early: Fixes for __SIMPLE_DEVICE__ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The feature is used to enable PCI MMIO accesses behind PCIe links (or bridges) before PCI enumeration has been completed. Add the feature for bootblock, verstage and postcar, it is required with add-on PCIe serial cards for early console output. It's up to the board specific code to configure PCIe root port prior to calling console_init() for this to work. Remove feature from ramstage, it bypasses any resource allocations and bus number assignments. For the moment PCI configuration support before ramstage is available only on ARCH_X86. Also switch from device_t to pci_devfn_t. Change-Id: I08acec68b6f17f4d73d30039cc41274492ea4f45 Signed-off-by: Kyösti Mälkki Reviewed-on: https://review.coreboot.org/c/30496 Tested-by: build bot (Jenkins) Reviewed-by: Arthur Heymans --- src/console/init.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/console') diff --git a/src/console/init.c b/src/console/init.c index 8f71b09881..f35dd51beb 100644 --- a/src/console/init.c +++ b/src/console/init.c @@ -72,8 +72,9 @@ asmlinkage void console_init(void) { init_log_level(); -#if IS_ENABLED(CONFIG_EARLY_PCI_BRIDGE) && !defined(__SMM__) - pci_early_bridge_init(); +#if IS_ENABLED(CONFIG_EARLY_PCI_BRIDGE) + if (!ENV_SMM && !ENV_RAMSTAGE) + pci_early_bridge_init(); #endif console_hw_init(); -- cgit v1.2.3