diff --git a/drivers/pci/host/pci-versatile.c b/drivers/pci/host/pci-versatile.c index b3c325f451b60af64501ca89c912aa77d1df1f6a..f6fcec6b5578684c75bcc7ddcae4193cff8d0f29 100644 --- a/drivers/pci/host/pci-versatile.c +++ b/drivers/pci/host/pci-versatile.c @@ -209,6 +209,8 @@ static int versatile_pci_probe(struct platform_device *pdev) bridge->sysdata = NULL; bridge->busnr = 0; bridge->ops = &pci_versatile_ops; + bridge->map_irq = of_irq_parse_and_map_pci; + bridge->swizzle_irq = pci_common_swizzle; ret = pci_scan_root_bus_bridge(bridge); if (ret < 0) @@ -216,8 +218,6 @@ static int versatile_pci_probe(struct platform_device *pdev) bus = bridge->bus; - pci_fixup_irqs(pci_common_swizzle, of_irq_parse_and_map_pci); - pci_assign_unassigned_bus_resources(bus); list_for_each_entry(child, &bus->children, node) pcie_bus_configure_settings(child);