1 ACPI_EXTRACT_ALL_CODE ssdp_pcihp_aml
3 DefinitionBlock ("ssdt-pcihp.aml", "SSDT", 0x01, "BXPC", "BXSSDTPCIHP", 0x1)
6 /****************************************************************
8 ****************************************************************/
10 /* Objects supplied by DSDT */
11 External (\_SB.PCI0, DeviceObj)
12 External (\_SB.PCI0.PRMV, MethodObj)
13 External (\_SB.PCI0.PCEJ, MethodObj)
17 #define gen_pci_device(slot) \
19 Name (_ADR, 0x##slot##0000) \
20 Method (_RMV) { Return (PRMV(0x##slot)) } \
21 Name (_SUN, 0x##slot) \
24 /* VGA (slot 1) and ISA bus (slot 2) defined in DSDT */
55 /* Bulk generated PCI hotplug devices */
56 // Method _EJ0 can be patched by BIOS to EJ0_
57 // at runtime, if the slot is detected to not support hotplug.
58 // Extract the offset of the address dword and the
59 // _EJ0 name to allow this patching.
60 #define hotplug_slot(slot) \
62 ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword \
63 Name (_ADR, 0x##slot##0000) \
64 ACPI_EXTRACT_METHOD_STRING aml_ej0_name \
65 Method (_EJ0, 1) { Return(PCEJ(0x##slot)) } \
66 Name (_SUN, 0x##slot) \
101 #define gen_pci_hotplug(slot) \
102 If (LEqual(Arg0, 0x##slot)) { Notify(S##slot, Arg1) }