diff options
Diffstat (limited to 'arch/x86/pci/init.c')
| -rw-r--r-- | arch/x86/pci/init.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/arch/x86/pci/init.c b/arch/x86/pci/init.c index d6c950f8185..adb62aaa7ec 100644 --- a/arch/x86/pci/init.c +++ b/arch/x86/pci/init.c @@ -1,6 +1,7 @@ #include <linux/pci.h> #include <linux/init.h> -#include "pci.h" +#include <asm/pci_x86.h> +#include <asm/x86_init.h> /* arch_initcall has too random ordering, so call the initializers in the right sequence from here. */ @@ -12,12 +13,12 @@ static __init int pci_arch_init(void) type = pci_direct_probe(); #endif - pci_mmcfg_early_init(); + if (!(pci_probe & PCI_PROBE_NOEARLY)) + pci_mmcfg_early_init(); + + if (x86_init.pci.arch_init && !x86_init.pci.arch_init()) + return 0; -#ifdef CONFIG_PCI_OLPC - if (!pci_olpc_init()) - return 0; /* skip additional checks if it's an XO */ -#endif #ifdef CONFIG_PCI_BIOS pci_pcbios_init(); #endif |
