|
@@ -208,7 +208,7 @@ long sys_pciconfig_iobase(long which, unsigned long in_bus,
|
|
|
unsigned long in_devfn)
|
|
|
{
|
|
|
struct pci_controller* hose;
|
|
|
- struct pci_bus *bus = NULL;
|
|
|
+ struct pci_bus *tmp_bus, *bus = NULL;
|
|
|
struct device_node *hose_node;
|
|
|
|
|
|
/* Argh ! Please forgive me for that hack, but that's the
|
|
@@ -229,10 +229,12 @@ long sys_pciconfig_iobase(long which, unsigned long in_bus,
|
|
|
* used on pre-domains setup. We return the first match
|
|
|
*/
|
|
|
|
|
|
- list_for_each_entry(bus, &pci_root_buses, node) {
|
|
|
- if (in_bus >= bus->number && in_bus <= bus->busn_res.end)
|
|
|
+ list_for_each_entry(tmp_bus, &pci_root_buses, node) {
|
|
|
+ if (in_bus >= tmp_bus->number &&
|
|
|
+ in_bus <= tmp_bus->busn_res.end) {
|
|
|
+ bus = tmp_bus;
|
|
|
break;
|
|
|
- bus = NULL;
|
|
|
+ }
|
|
|
}
|
|
|
if (bus == NULL || bus->dev.of_node == NULL)
|
|
|
return -ENODEV;
|