On Fri, Sep 28, 2012 at 6:52 PM, Yinghai Lu <yinghai@xxxxxxxxxx> wrote: > On Fri, Sep 28, 2012 at 6:48 PM, Yinghai Lu <yinghai@xxxxxxxxxx> wrote: >> On Fri, Sep 28, 2012 at 4:46 PM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote: >>> On Thu, Sep 27, 2012 at 2:11 AM, Yinghai Lu <yinghai@xxxxxxxxxx> wrote: >>>> So could use assign_unassigned_bus_res pci root bus add >>> >>> After your series, acpi_pci_root_start() looks like this: >>> >>> pci_assign_unassigned_bus_resources >>> list_for_each_entry(driver, &acpi_pci_drivers, node) >>> driver->add(root); >>> pci_enable_bridges(root->bus); >>> >>> so apparently it's important that the driver->add() methods be run >>> *before* the bridges are enabled. Why? >> > > During rebase, the changelog get lost. > > pci_enable_bridges > ==> pci_enable_device > ==> ... > ===> pcibios_enable_device > ===> pcibios_enable_irq > > and one of driver in acpi_pci_drivers, is ioapic drivers and it will > enable ioapic there. > > So we need to enable bridges that later. old changelog before rebase: ----- Subject: [PATCH] PCI, x86: Move pci_enable_bridges() down After we get hot-added ioapic registered. pci_enable_bridges will try to enable ioapic irq for pci bridge. So need to move it down. Or We can move out pcibios_enable_irq() out of pci_enable_device() and call pcibios_enable_irq in pci_bus_add_devices ? also will need to move ... pcibios_resource_survey_bus(root->bus); pci_assign_unassigned_bus_resources(root->bus); to the start add .... ---- -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html