linux/drivers/pci
Jiang Liu 3b63aaa70e PCI: acpiphp: Do not use ACPI PCI subdriver mechanism
Previously the acpiphp driver registered itself as an ACPI PCI subdriver,
so its callbacks were invoked when creating/destroying PCI root
buses to manage ACPI-based PCI hotplug slots.  But it doesn't handle
P2P bridge hotplug events, so it will cause strange behaviour if there
are hotplug slots associated with a hot-removed P2P bridge.

This patch fixes this issue by:
1) Directly hooking into PCI core to update hotplug slot devices when
   creating/destroying PCI buses through:
	pci_{add|remove}_bus() -> acpi_pci_{add|remove}_bus()
2) Getting rid of unused ACPI PCI subdriver-related code

It also cleans up unused code in the acpiphp driver.

[bhelgaas: keep acpi_pci_add_bus() stub for CONFIG_ACPI=n]
Signed-off-by: Jiang Liu <jiang.liu@huawei.com>
Signed-off-by: Yijing Wang <wangyijing@huawei.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Yinghai Lu <yinghai@kernel.org>
Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
Cc: Toshi Kani <toshi.kani@hp.com>
2013-04-12 16:52:01 -06:00
..
hotplug PCI: acpiphp: Do not use ACPI PCI subdriver mechanism 2013-04-12 16:52:01 -06:00
pcie PCI changes for the v3.9 merge window: 2013-02-25 21:18:18 -08:00
access.c PCI: Fix PCI Express Capability accessors for PCI_EXP_FLAGS 2013-02-15 11:46:24 -07:00
ats.c Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
bus.c PCI: Clean up usages of pci_bus->is_added 2013-04-12 15:38:25 -06:00
host-bridge.c PCI: add host bridge release support 2012-04-30 14:52:43 -06:00
hotplug-pci.c PCI: hotplug: remove pci_do_scan_bus() 2012-06-13 15:42:27 -06:00
htirq.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
ioapic.c PCI changes for the v3.8 merge window: 2012-12-13 12:14:47 -08:00
iov.c PCI changes for the v3.9 merge window: 2013-02-25 21:18:18 -08:00
irq.c PCI: Convert dev_printk(KERN_<LEVEL> to dev_<level>( 2012-11-07 15:24:18 -07:00
Kconfig PCI: Drop bogus default from ARCH_SUPPORTS_MSI 2012-09-10 16:49:52 -06:00
Makefile PCI: Always build setup-bus when PCI is enabled 2012-11-28 13:00:58 -08:00
msi.c PCI/MSI: Enable multiple MSIs with pci_enable_msi_block_auto() 2013-01-24 17:25:13 +01:00
msi.h
of.c PCI: OF: Don't crash when bridge parent is NULL. 2011-08-19 08:51:37 -07:00
pci-acpi.c PCI: acpiphp: Do not use ACPI PCI subdriver mechanism 2013-04-12 16:52:01 -06:00
pci-driver.c Merge branch 'pci/konstantin-runtime-pm' into next 2013-02-12 13:42:36 -07:00
pci-label.c switch ->is_visible() to returning umode_t 2012-01-03 22:54:55 -05:00
pci-stub.c PCI: Convert dev_printk(KERN_<LEVEL> to dev_<level>( 2012-11-07 15:24:18 -07:00
pci-sysfs.c PCI: Remove spurious error for sriov_numvfs store and simplify flow 2012-12-26 10:39:22 -07:00
pci.c hlist: drop the node parameter from iterators 2013-02-27 19:10:24 -08:00
pci.h Merge branch 'pci/yinghai-root-bus-hotplug' into next 2013-01-26 17:35:58 -07:00
probe.c PCI: Add pcibios hooks for adding and removing PCI buses 2013-04-12 15:38:25 -06:00
proc.c new helper: file_inode(file) 2013-02-22 23:31:31 -05:00
quirks.c PCI: Reduce Ricoh 0xe822 SD card reader base clock frequency to 50MHz 2012-12-26 10:43:06 -07:00
remove.c PCI: Add pcibios hooks for adding and removing PCI buses 2013-04-12 15:38:25 -06:00
rom.c PCI: Use phys_addr_t for physical ROM address 2012-12-10 11:24:42 -07:00
search.c PCI: Fix reference count leak in pci_dev_present() 2013-01-25 13:49:27 -07:00
setup-bus.c PCI: Add root bus children dev's res to fail list 2013-01-25 13:45:00 -07:00
setup-irq.c PCI: Provide a default pcibios_update_irq() 2012-09-18 17:28:21 -06:00
setup-res.c Merge branch 'pci/nikhil-big-bar-fixes' into next 2012-07-18 14:06:20 -06:00
slot.c pci: add module.h to files implicitly relying on its presence. 2011-10-31 19:31:23 -04:00
syscall.c
vpd.c pci: Fix files needing export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:22 -04:00
xen-pcifront.c PCI changes for the v3.8 merge window: 2012-12-13 12:14:47 -08:00