tile/PCI: use pci_scan_root_bus instead pci_scan_bus
authorYinghai Lu <yinghai@kernel.org>
Fri, 18 May 2012 01:51:13 +0000 (18:51 -0700)
committerBjorn Helgaas <bhelgaas@google.com>
Wed, 13 Jun 2012 21:42:24 +0000 (15:42 -0600)
It will update busn_res accordingly, so we get that for last_busno.

Acked-by: Chris Metcalf <cmetcalf@tilera.com>
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
arch/tile/kernel/pci.c

index 54cc8d7..87422ed 100644 (file)
@@ -310,6 +310,7 @@ int __init pcibios_init(void)
                if (pci_scan_flags[i] == 0 && controllers[i].ops != NULL) {
                        struct pci_controller *controller = &controllers[i];
                        struct pci_bus *bus;
+                       LIST_HEAD(resources);
 
                        if (tile_init_irqs(i, controller)) {
                                pr_err("PCI: Could not initialize IRQs\n");
@@ -327,7 +328,9 @@ int __init pcibios_init(void)
                         * This is inlined in linux/pci.h and calls into
                         * pci_scan_bus_parented() in probe.c.
                         */
-                       bus = pci_scan_bus(0, controller->ops, controller);
+                       pci_add_resource(&resources, &ioport_resource);
+                       pci_add_resource(&resources, &iomem_resource);
+                       bus = pci_scan_root_bus(NULL, 0, controller->ops, controller, &resources);
                        controller->root_bus = bus;
                        controller->last_busno = bus->busn_res.end;
                }