ACPI_EXTRACT_ALL_CODE ssdp_pcihp_aml DefinitionBlock ("ssdt-pcihp.aml", "SSDT", 0x01, "BXPC", "BXSSDTPCIHP", 0x1) { /**************************************************************** * PCI hotplug ****************************************************************/ /* Objects supplied by DSDT */ External (\_SB.PCI0, DeviceObj) External (\_SB.PCI0.PCEJ, MethodObj) Scope(\_SB.PCI0) { /* Bulk generated PCI hotplug devices */ // Method _EJ0 can be patched by BIOS to EJ0_ // at runtime, if the slot is detected to not support hotplug. // Extract the offset of the address dword and the // _EJ0 name to allow this patching. #define hotplug_slot(slot) \ Device (S##slot) { \ ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword \ Name (_ADR, 0x##slot##0000) \ ACPI_EXTRACT_METHOD_STRING aml_ej0_name \ Method (_EJ0, 1) { Return(PCEJ(0x##slot)) } \ Name (_SUN, 0x##slot) \ } hotplug_slot(01) hotplug_slot(02) hotplug_slot(03) hotplug_slot(04) hotplug_slot(05) hotplug_slot(06) hotplug_slot(07) hotplug_slot(08) hotplug_slot(09) hotplug_slot(0a) hotplug_slot(0b) hotplug_slot(0c) hotplug_slot(0d) hotplug_slot(0e) hotplug_slot(0f) hotplug_slot(10) hotplug_slot(11) hotplug_slot(12) hotplug_slot(13) hotplug_slot(14) hotplug_slot(15) hotplug_slot(16) hotplug_slot(17) hotplug_slot(18) hotplug_slot(19) hotplug_slot(1a) hotplug_slot(1b) hotplug_slot(1c) hotplug_slot(1d) hotplug_slot(1e) hotplug_slot(1f) #define gen_pci_hotplug(slot) \ If (LEqual(Arg0, 0x##slot)) { Notify(S##slot, Arg1) } Method(PCNT, 2) { gen_pci_hotplug(01) gen_pci_hotplug(02) gen_pci_hotplug(03) gen_pci_hotplug(04) gen_pci_hotplug(05) gen_pci_hotplug(06) gen_pci_hotplug(07) gen_pci_hotplug(08) gen_pci_hotplug(09) gen_pci_hotplug(0a) gen_pci_hotplug(0b) gen_pci_hotplug(0c) gen_pci_hotplug(0d) gen_pci_hotplug(0e) gen_pci_hotplug(0f) gen_pci_hotplug(10) gen_pci_hotplug(11) gen_pci_hotplug(12) gen_pci_hotplug(13) gen_pci_hotplug(14) gen_pci_hotplug(15) gen_pci_hotplug(16) gen_pci_hotplug(17) gen_pci_hotplug(18) gen_pci_hotplug(19) gen_pci_hotplug(1a) gen_pci_hotplug(1b) gen_pci_hotplug(1c) gen_pci_hotplug(1d) gen_pci_hotplug(1e) gen_pci_hotplug(1f) } } }