]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/x86/pci/init.c
Merge branch 'for-2.6.26' of git://neil.brown.name/md
[linux-2.6-omap-h63xx.git] / arch / x86 / pci / init.c
index 3de9f9ba2da6aed8be73921f3f416ed8af444a49..b821f4462d991a6b850886bcd7a9997f14428d46 100644 (file)
@@ -6,16 +6,18 @@
    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);
+
+       pci_mmcfg_early_init();
+
+#ifdef CONFIG_PCI_OLPC
+       if (!pci_olpc_init())
+               return 0;       /* skip additional checks if it's an XO */
 #endif
-       if (raw_pci_ops)
-               return 0;
 #ifdef CONFIG_PCI_BIOS
        pci_pcbios_init();
 #endif
@@ -28,10 +30,14 @@ 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");
 
+       dmi_check_pciprobe();
+
+       dmi_check_skip_isa_align();
+
        return 0;
 }
 arch_initcall(pci_access_init);