1ACPI_EXTRACT_ALL_CODE ssdp_pcihp_aml
2
3DefinitionBlock ("ssdt-pcihp.aml", "SSDT", 0x01, "BXPC", "BXSSDTPC", 0x1)
4{
5
6/****************************************************************
7 * PCI hotplug
8 ****************************************************************/
9
10    /* Objects supplied by DSDT */
11    External(\_SB.PCI0, DeviceObj)
12    External(\_SB.PCI0.PCEJ, MethodObj)
13
14    Scope(\_SB.PCI0) {
15
16        /* Bulk generated PCI hotplug devices */
17        ACPI_EXTRACT_DEVICE_START ssdt_pcihp_start
18        ACPI_EXTRACT_DEVICE_END ssdt_pcihp_end
19        ACPI_EXTRACT_DEVICE_STRING ssdt_pcihp_name
20
21        // Method _EJ0 can be patched by BIOS to EJ0_
22        // at runtime, if the slot is detected to not support hotplug.
23        // Extract the offset of the address dword and the
24        // _EJ0 name to allow this patching.
25        Device(SAA) {
26            ACPI_EXTRACT_NAME_BYTE_CONST ssdt_pcihp_id
27            Name(_SUN, 0xAA)
28            ACPI_EXTRACT_NAME_DWORD_CONST ssdt_pcihp_adr
29            Name(_ADR, 0xAA0000)
30            ACPI_EXTRACT_METHOD_STRING ssdt_pcihp_ej0
31            Method(_EJ0, 1) {
32                PCEJ(_SUN)
33            }
34        }
35    }
36}
37