diff options
Diffstat (limited to 'arch/i386/pci')
-rw-r--r-- | arch/i386/pci/init.c | 8 | ||||
-rw-r--r-- | arch/i386/pci/mmconfig.c | 2 |
2 files changed, 7 insertions, 3 deletions
diff --git a/arch/i386/pci/init.c b/arch/i386/pci/init.c index c7650a7e0b07..51087a9d9172 100644 --- a/arch/i386/pci/init.c +++ b/arch/i386/pci/init.c | |||
@@ -14,8 +14,12 @@ static __init int pci_access_init(void) | |||
14 | #ifdef CONFIG_PCI_BIOS | 14 | #ifdef CONFIG_PCI_BIOS |
15 | pci_pcbios_init(); | 15 | pci_pcbios_init(); |
16 | #endif | 16 | #endif |
17 | if (raw_pci_ops) | 17 | /* |
18 | return 0; | 18 | * don't check for raw_pci_ops here because we want pcbios as last |
19 | * fallback, yet it's needed to run first to set pcibios_last_bus | ||
20 | * in case legacy PCI probing is used. otherwise detecting peer busses | ||
21 | * fails. | ||
22 | */ | ||
19 | #ifdef CONFIG_PCI_DIRECT | 23 | #ifdef CONFIG_PCI_DIRECT |
20 | pci_direct_init(); | 24 | pci_direct_init(); |
21 | #endif | 25 | #endif |
diff --git a/arch/i386/pci/mmconfig.c b/arch/i386/pci/mmconfig.c index e545b0992c48..972180f738d9 100644 --- a/arch/i386/pci/mmconfig.c +++ b/arch/i386/pci/mmconfig.c | |||
@@ -178,7 +178,7 @@ static __init void unreachable_devices(void) | |||
178 | pci_exp_set_dev_base(addr, k, PCI_DEVFN(i, 0)); | 178 | pci_exp_set_dev_base(addr, k, PCI_DEVFN(i, 0)); |
179 | if (addr == 0 || | 179 | if (addr == 0 || |
180 | readl((u32 __iomem *)mmcfg_virt_addr) != val1) { | 180 | readl((u32 __iomem *)mmcfg_virt_addr) != val1) { |
181 | set_bit(i, fallback_slots); | 181 | set_bit(i + 32*k, fallback_slots); |
182 | printk(KERN_NOTICE | 182 | printk(KERN_NOTICE |
183 | "PCI: No mmconfig possible on %x:%x\n", k, i); | 183 | "PCI: No mmconfig possible on %x:%x\n", k, i); |
184 | } | 184 | } |