]> git.karo-electronics.de Git - linux-beck.git/commit
PCI: call final fixups hot-added devices
authorMyron Stowe <myron.stowe@redhat.com>
Mon, 9 Jul 2012 21:36:46 +0000 (15:36 -0600)
committerBjorn Helgaas <bhelgaas@google.com>
Tue, 10 Jul 2012 02:56:45 +0000 (20:56 -0600)
commit735bff10c157fdbba2291e10ca3e28a59c7acc1c
tree2cae34fe274546d5a9ab4e7a24699833aab0e8eb
parent3274c8eb26896fc4cae3b199de71e985e20771a9
PCI: call final fixups hot-added devices

Final fixups are currently applied only at boot-time by
pci_apply_final_quirks(), which is an fs_initcall().  Hot-added devices
don't get these fixups, so they may not be completely initialized.

This patch makes us run final fixups for hot-added devices in
pci_bus_add_device() just before the new device becomes eligible for driver
binding.

This patch keeps the fs_initcall() for devices present at boot because we
do resource assignment between pci_bus_add_device and the fs_initcall(),
and we don't want to break any fixups that depend on that assignment.  This
is a design issue that may be addressed in the future -- any resource
assignment should be done *before* device_add().

[bhelgaas: changelog]
Signed-off-by: Myron Stowe <myron.stowe@redhat.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/pci/bus.c
drivers/pci/quirks.c