]> git.karo-electronics.de Git - linux-beck.git/commitdiff
xtensa/PCI: get rid of device resource fixups
authorBjorn Helgaas <bhelgaas@google.com>
Fri, 24 Feb 2012 03:19:04 +0000 (20:19 -0700)
committerBjorn Helgaas <bhelgaas@google.com>
Fri, 24 Feb 2012 03:19:04 +0000 (20:19 -0700)
Tell the PCI core about host bridge address translation so it can take
care of bus-to-resource conversion for us.

CC: Chris Zankel <chris@zankel.net>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
arch/xtensa/kernel/pci.c

index 61045c192e886761055391ffffbf13a7e607e89f..eb30e356f5bec906d2c34faad04954659c653130 100644 (file)
@@ -153,7 +153,7 @@ static void __init pci_controller_apertures(struct pci_controller *pci_ctrl,
        }
        res->start += io_offset;
        res->end += io_offset;
-       pci_add_resource(resources, res);
+       pci_add_resource_offset(resources, res, io_offset);
 
        for (i = 0; i < 3; i++) {
                res = &pci_ctrl->mem_resources[i];
@@ -200,24 +200,9 @@ subsys_initcall(pcibios_init);
 
 void __init pcibios_fixup_bus(struct pci_bus *bus)
 {
-       struct pci_controller *pci_ctrl = bus->sysdata;
-       struct resource *res;
-       unsigned long io_offset;
-       int i;
-
-       io_offset = (unsigned long)pci_ctrl->io_space.base;
        if (bus->parent) {
                /* This is a subordinate bridge */
                pci_read_bridge_bases(bus);
-
-               for (i = 0; i < 4; i++) {
-                       if ((res = bus->resource[i]) == NULL || !res->flags)
-                               continue;
-                       if (io_offset && (res->flags & IORESOURCE_IO)) {
-                               res->start += io_offset;
-                               res->end += io_offset;
-                       }
-               }
        }
 }