diff options
Diffstat (limited to 'arch/x86/pci/init.c')
-rw-r--r-- | arch/x86/pci/init.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/arch/x86/pci/init.c b/arch/x86/pci/init.c index 0f5f7dd2a620..dd30c6076b5d 100644 --- a/arch/x86/pci/init.c +++ b/arch/x86/pci/init.c @@ -6,19 +6,17 @@ in the right sequence from here. */ static __init int pci_access_init(void) { - int type __maybe_unused = 0; - #ifdef CONFIG_PCI_DIRECT + int type = 0; + type = pci_direct_probe(); #endif -#ifdef CONFIG_PCI_MMCONFIG - pci_mmcfg_init(type); -#endif + + pci_mmcfg_early_init(); + #ifdef CONFIG_PCI_OLPC pci_olpc_init(); #endif - if (raw_pci_ops) - return 0; #ifdef CONFIG_PCI_BIOS pci_pcbios_init(); #endif @@ -31,7 +29,7 @@ static __init int pci_access_init(void) #ifdef CONFIG_PCI_DIRECT pci_direct_init(type); #endif - if (!raw_pci_ops) + if (!raw_pci_ops && !raw_pci_ext_ops) printk(KERN_ERR "PCI: Fatal: No config space access function found\n"); |