patch-2.3.37 linux/arch/ppc/kernel/pci.c
Next file: linux/arch/ppc/kernel/pmac_pci.c
Previous file: linux/arch/ppc/kernel/chrp_pci.c
Back to the patch index
Back to the overall index
- Lines: 34
- Date:
Thu Jan 6 09:54:06 2000
- Orig file:
v2.3.36/linux/arch/ppc/kernel/pci.c
- Orig date:
Tue Dec 7 09:32:41 1999
diff -u --recursive --new-file v2.3.36/linux/arch/ppc/kernel/pci.c linux/arch/ppc/kernel/pci.c
@@ -91,15 +91,17 @@
return start;
}
-static void __init pcibios_claim_resources(struct pci_bus *bus)
+static void __init pcibios_claim_resources(struct list_head *bus_list)
{
+ struct list_head *ln, *dn;
+ struct pci_bus *bus;
struct pci_dev *dev;
int idx;
- while (bus)
- {
- for (dev=bus->devices; dev; dev=dev->sibling)
- {
+ for (ln=bus_list->next; ln != bus_list; ln=ln->next) {
+ bus = pci_bus_b(ln);
+ for (dn=bus->devices.next; dn != &bus->devices; dn=dn->next) {
+ dev = pci_dev_b(dn);
for (idx = 0; idx < PCI_NUM_RESOURCES; idx++)
{
struct resource *r = &dev->resource[idx];
@@ -114,9 +116,7 @@
}
}
}
- if (bus->children)
- pcibios_claim_resources(bus->children);
- bus = bus->next;
+ pcibios_claim_resources(&bus->children);
}
}
FUNET's LINUX-ADM group, [email protected]
TCL-scripts by Sam Shen (who was at: [email protected])