Re: [PATCH v2 2/6] ACPI, PCI: Notify acpi_pci_drivers when hot-plugging PCI root bridges

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Sep 4, 2012 at 12:58 AM, Kaneshige, Kenji
<kaneshige.kenji@xxxxxxxxxxxxxx> wrote:
>>   -v2: Move add calling to acpi_pci_root_start by Yinghai
>>  static int acpi_pci_root_start(struct acpi_device *device)
>>  {
>>       struct acpi_pci_root *root = acpi_driver_data(device);
>> +     struct acpi_pci_driver *driver;
>> +
>> +     list_for_each_entry(driver, &acpi_pci_drivers, node)
>> +             if (driver->add)
>> +                     driver->add(device->handle);
>>
>
> I think this (invoke .add callback for each acpi pci driver) should be done
> after pci_bus_add_devices().

We need to load ioapic driver and dmar driver before normal pci drivers.

>
> It seems ACPI pci drivers run *after* pci_bus_add_devices() at the boot time
> (because no acpi pci drivers is loaded at that time). On the other hand, it
> seems that ACPI pci drivers run *before* pci_bus_add_devices() at the hotadd
> time. Those should be the same.

for boot time, sequence : normal pci driver still get loaded after
ioapic and dmar drivers.
otherwise those driver will have problem to get irq and iommu work correctly.
and if ioapic and dmar are static, and they will get initialized
around pci device get scanned and pci_bus_add_devices get called
already.
but that time normal devices driver does not get registered yet. those
pci drivers will get loaded (should be bounded)
for pci devices when those driver get registered.

Thanks

Yinghai
--
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


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux