On Wednesday 03 of October 2012 16:00:10 Yinghai Lu wrote: > Now acpi_pci_root_driver has two ops: .add and .start, aka acpi_pci_root_add > and acpi_pci_root_start. > > That is for hotplug handling: .add need to return early to make sure all > acpi device could be created and added early. So .start could device_add > pci device that are found in acpi_pci_root_add/pci_acpi_scan_root(). > > That is holding pci devics to be out of devices for while. > > We could use bus notifier to handle hotplug case. > CONFIG_HOTPLUG is enabled always now. > Need to add drivers_autoprobe bit in acpi_device to hold attaching drivers > for acpi_devices, so could make sure all acpi_devices get created at first. > Then acpi_bus_attach() that is called from acpi_bus_add will attach driver > for all acpi_devices that are just created. > > That make the logic more simple: hotplug path handling just like booting path > that drivers are attached after all acpi device get created. > > At last we could remove all acpi_bus_start workaround. Do I understand correctly that you just want to prevent acpi_pci_root_driver from binding to the host bridge's struct acpi_device created while we're walking the ACPI namespace? Rafael -- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center. -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html