linux-kernel-test/drivers/pci/hotplug
John Keller 3e643e77a9 Altix: Add ACPI SSDT PCI device support (hotplug)
Support for dynamic loading and unloading of ACPI SSDT tables upon slot
hotplugs and unplugs.

On SN platforms, we now represent every populated root bus slot with a single
ACPI SSDT table containing info for every device and PPB attached to the slot.
 These SSDTs are generated by the prom at initial boot and hotplug time.  The
info in these SSDT tables is used by the SN kernel IO "fixup" code (which is
called at boot and hotplug time).

On hotplugs (i.e.  enable_slot()), if running with an ACPI capable prom,
attempt to obtain a new ACPI SSDT table for the slot being hotplugged.  If
successful, add the table to the ACPI namespace (acpi_load_table()) and then
walk the new devices and add them to the ACPI infrastructure (acpi_bus_add()).

On hot unplugs (i.e.  disable_slot()), if running with an ACPI capable prom,
attempt to remove the SSDT table associated with the slot from the ACPI
namespace (acpi_unload_table_id()) and infastructure (acpi_bus_trim()).

From: John Keller <jpk@sgi.com>

 A bug was fixed where the sgi hotplug driver was removing
 the slot's SSDT table from the ACPI namespace a bit too early in
 disable_slot(). Also, we now call acpi_bus_start() subsequent
 to acpi_bus_add().

Signed-off-by: Aaron Young <ayoung@sgi.com>
Cc: Greg KH <greg@kroah.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown<len.brown@intel.com>
2007-02-02 22:14:57 -05:00
..
acpi_pcihp.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
acpiphp_core.c PCI: Change memory allocation for acpiphp slots 2006-12-01 14:36:59 -08:00
acpiphp_glue.c ACPICA: Remove duplicate table definitions (non-conflicting), cont 2007-02-02 21:14:29 -05:00
acpiphp_ibm.c ACPI: replace kmalloc+memset with kzalloc 2006-12-20 16:54:54 -05:00
acpiphp.h PCI: Change memory allocation for acpiphp slots 2006-12-01 14:36:59 -08:00
cpci_hotplug_core.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
cpci_hotplug_pci.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
cpci_hotplug.h [PATCH] PCI Hotplug: CPCI update 2005-05-17 14:31:11 -07:00
cpcihp_generic.c cpcihp_generic: prevent loading without "bridge" parameter 2006-10-18 11:36:12 -07:00
cpcihp_zt5550.c [PATCH] irq-flags: pci: Use the new IRQF_ constants 2006-07-02 13:58:52 -07:00
cpcihp_zt5550.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cpqphp_core.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
cpqphp_ctrl.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
cpqphp_nvram.c [PATCH] getting rid of all casts of k[cmz]alloc() calls 2006-12-13 09:05:58 -08:00
cpqphp_nvram.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cpqphp_pci.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
cpqphp_sysfs.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
cpqphp.h PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
fakephp.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
ibmphp_core.c [PATCH] PCI Hotplug: fake NULL pointer dereferences in IBM Hot Plug Controller Driver 2006-06-19 14:13:24 -07:00
ibmphp_ebda.c [PATCH] ibmphp: remove TRUE and FALSE 2006-03-23 14:35:17 -08:00
ibmphp_hpc.c Fix misc .c/.h comment typos 2006-11-30 05:24:39 +01:00
ibmphp_pci.c PCI: ibmphp_pci.c: fix NULL dereference 2006-12-01 14:37:00 -08:00
ibmphp_res.c [PATCH] ibmphp: remove TRUE and FALSE 2006-03-23 14:35:17 -08:00
ibmphp.h PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
Kconfig [PATCH] Kconfig refactoring for better menu nesting 2006-12-10 09:55:39 -08:00
Makefile ACPIPHP: use ACPI dock driver 2006-06-28 03:08:06 -04:00
pci_hotplug_core.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
pciehp_core.c pciehp: remove unnecessary free_irq 2006-12-01 14:36:59 -08:00
pciehp_ctrl.c pciehp: Remove unnecessary check in pciehp_ctrl.c 2006-10-18 11:36:10 -07:00
pciehp_hpc.c [PATCH] getting rid of all casts of k[cmz]alloc() calls 2006-12-13 09:05:58 -08:00
pciehp_pci.c [PATCH] pciehp: Add missing pci_dev_put 2006-06-19 14:13:23 -07:00
pciehp.h PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
pcihp_skeleton.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
rpadlpar_core.c PCI: rpaphp: change device tree examination 2006-12-01 14:36:59 -08:00
rpadlpar_sysfs.c PCI Hotplug: move pci_hotplug.h to include/linux/ 2006-10-18 11:36:12 -07:00
rpadlpar.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rpaphp_core.c PCI: rpaphp: change device tree examination 2006-12-01 14:36:59 -08:00
rpaphp_pci.c [PATCH] powerpc/PCI hotplug: cleanup: add prefix 2006-01-31 18:00:13 -08:00
rpaphp_slot.c rpaphp: compiler warning cleanup 2006-12-20 10:54:42 -08:00
rpaphp.h [PATCH] Fix up rpaphp driver for pci hotplug header move 2006-10-20 17:56:39 -07:00
sgi_hotplug.c Altix: Add ACPI SSDT PCI device support (hotplug) 2007-02-02 22:14:57 -05:00
shpchp_core.c shpchp: cleanup shpchp.h 2006-12-20 10:54:44 -08:00
shpchp_ctrl.c shpchp: cleanup shpchp.h 2006-12-20 10:54:44 -08:00
shpchp_hpc.c shpchp: remove unnecessary struct php_ctlr 2006-12-20 10:54:44 -08:00
shpchp_pci.c [PATCH] acpi_pcihp: Add support for _HPX 2006-06-19 14:13:22 -07:00
shpchp_sysfs.c SHPCHP: fix __must_check warnings 2006-09-26 17:43:53 -07:00
shpchp.h shpchp: cleanup shpchp.h 2006-12-20 10:54:44 -08:00