diff options
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/platforms/83xx/pci.c | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/85xx/pci.c | 2 | ||||
-rw-r--r-- | arch/powerpc/sysdev/indirect_pci.c | 4 | ||||
-rw-r--r-- | arch/powerpc/sysdev/mv64x60_pci.c | 2 |
4 files changed, 5 insertions, 5 deletions
diff --git a/arch/powerpc/platforms/83xx/pci.c b/arch/powerpc/platforms/83xx/pci.c index 8da935c6e269..f49ed277e843 100644 --- a/arch/powerpc/platforms/83xx/pci.c +++ b/arch/powerpc/platforms/83xx/pci.c | |||
@@ -61,6 +61,7 @@ int __init mpc83xx_add_bridge(struct device_node *dev) | |||
61 | " bus 0\n", dev->full_name); | 61 | " bus 0\n", dev->full_name); |
62 | } | 62 | } |
63 | 63 | ||
64 | pci_assign_all_buses = 1; | ||
64 | hose = pcibios_alloc_controller(); | 65 | hose = pcibios_alloc_controller(); |
65 | if (!hose) | 66 | if (!hose) |
66 | return -ENOMEM; | 67 | return -ENOMEM; |
@@ -80,7 +81,6 @@ int __init mpc83xx_add_bridge(struct device_node *dev) | |||
80 | if ((rsrc.start & 0xfffff) == 0x8600) { | 81 | if ((rsrc.start & 0xfffff) == 0x8600) { |
81 | setup_indirect_pci(hose, immr + 0x8380, immr + 0x8384); | 82 | setup_indirect_pci(hose, immr + 0x8380, immr + 0x8384); |
82 | primary = 0; | 83 | primary = 0; |
83 | hose->bus_offset = hose->first_busno; | ||
84 | } | 84 | } |
85 | 85 | ||
86 | printk(KERN_INFO "Found MPC83xx PCI host bridge at 0x%016llx. " | 86 | printk(KERN_INFO "Found MPC83xx PCI host bridge at 0x%016llx. " |
diff --git a/arch/powerpc/platforms/85xx/pci.c b/arch/powerpc/platforms/85xx/pci.c index be67f67ee6f4..a25b3e77a7d2 100644 --- a/arch/powerpc/platforms/85xx/pci.c +++ b/arch/powerpc/platforms/85xx/pci.c | |||
@@ -55,6 +55,7 @@ int __init mpc85xx_add_bridge(struct device_node *dev) | |||
55 | " bus 0\n", dev->full_name); | 55 | " bus 0\n", dev->full_name); |
56 | } | 56 | } |
57 | 57 | ||
58 | pci_assign_all_buses = 1; | ||
58 | hose = pcibios_alloc_controller(); | 59 | hose = pcibios_alloc_controller(); |
59 | if (!hose) | 60 | if (!hose) |
60 | return -ENOMEM; | 61 | return -ENOMEM; |
@@ -71,7 +72,6 @@ int __init mpc85xx_add_bridge(struct device_node *dev) | |||
71 | if ((rsrc.start & 0xfffff) == 0x9000) { | 72 | if ((rsrc.start & 0xfffff) == 0x9000) { |
72 | setup_indirect_pci(hose, immr + 0x9000, immr + 0x9004); | 73 | setup_indirect_pci(hose, immr + 0x9000, immr + 0x9004); |
73 | primary = 0; | 74 | primary = 0; |
74 | hose->bus_offset = hose->first_busno; | ||
75 | } | 75 | } |
76 | 76 | ||
77 | printk(KERN_INFO "Found MPC85xx PCI host bridge at 0x%016llx. " | 77 | printk(KERN_INFO "Found MPC85xx PCI host bridge at 0x%016llx. " |
diff --git a/arch/powerpc/sysdev/indirect_pci.c b/arch/powerpc/sysdev/indirect_pci.c index d490e71f0533..efe3cff8dcd1 100644 --- a/arch/powerpc/sysdev/indirect_pci.c +++ b/arch/powerpc/sysdev/indirect_pci.c | |||
@@ -44,7 +44,7 @@ indirect_read_config(struct pci_bus *bus, unsigned int devfn, int offset, | |||
44 | cfg_type = 1; | 44 | cfg_type = 1; |
45 | 45 | ||
46 | bus_no = (bus->number == hose->first_busno) ? | 46 | bus_no = (bus->number == hose->first_busno) ? |
47 | hose->self_busno : bus->number - hose->bus_offset; | 47 | hose->self_busno : bus->number; |
48 | 48 | ||
49 | PCI_CFG_OUT(hose->cfg_addr, | 49 | PCI_CFG_OUT(hose->cfg_addr, |
50 | (0x80000000 | (bus_no << 16) | 50 | (0x80000000 | (bus_no << 16) |
@@ -87,7 +87,7 @@ indirect_write_config(struct pci_bus *bus, unsigned int devfn, int offset, | |||
87 | cfg_type = 1; | 87 | cfg_type = 1; |
88 | 88 | ||
89 | bus_no = (bus->number == hose->first_busno) ? | 89 | bus_no = (bus->number == hose->first_busno) ? |
90 | hose->self_busno : bus->number - hose->bus_offset; | 90 | hose->self_busno : bus->number; |
91 | 91 | ||
92 | PCI_CFG_OUT(hose->cfg_addr, | 92 | PCI_CFG_OUT(hose->cfg_addr, |
93 | (0x80000000 | (bus_no << 16) | 93 | (0x80000000 | (bus_no << 16) |
diff --git a/arch/powerpc/sysdev/mv64x60_pci.c b/arch/powerpc/sysdev/mv64x60_pci.c index 6b08e76de5a2..2e7738455ae5 100644 --- a/arch/powerpc/sysdev/mv64x60_pci.c +++ b/arch/powerpc/sysdev/mv64x60_pci.c | |||
@@ -147,7 +147,7 @@ static int __init mv64x60_add_bridge(struct device_node *dev) | |||
147 | hose->last_busno = bus_range ? bus_range[1] : 0xff; | 147 | hose->last_busno = bus_range ? bus_range[1] : 0xff; |
148 | 148 | ||
149 | setup_indirect_pci(hose, rsrc.start, rsrc.start + 4); | 149 | setup_indirect_pci(hose, rsrc.start, rsrc.start + 4); |
150 | hose->bus_offset = hose->first_busno; | 150 | hose->self_busno = hose->first_busno; |
151 | 151 | ||
152 | printk(KERN_INFO "Found MV64x60 PCI host bridge at 0x%016llx. " | 152 | printk(KERN_INFO "Found MV64x60 PCI host bridge at 0x%016llx. " |
153 | "Firmware bus number: %d->%d\n", | 153 | "Firmware bus number: %d->%d\n", |