blob: acc850e8432a2498c6255b6bc12f9ee6ea235e88 [file] [log] [blame]
Kevin O'Connor3f8d7352013-02-27 20:46:40 -05001ACPI_EXTRACT_ALL_CODE ssdp_misc_aml
Paolo Bonzinicf5bef42012-08-02 15:07:21 +02002
Kevin O'Connor3f8d7352013-02-27 20:46:40 -05003DefinitionBlock ("ssdt-misc.aml", "SSDT", 0x01, "BXPC", "BXSSDTSUSP", 0x1)
Paolo Bonzinicf5bef42012-08-02 15:07:21 +02004{
5
6/****************************************************************
Kevin O'Connor76e58022013-03-06 21:50:09 -05007 * PCI memory ranges
8 ****************************************************************/
9
10 Scope(\) {
11 ACPI_EXTRACT_NAME_DWORD_CONST acpi_pci32_start
12 Name(P0S, 0x12345678)
13 ACPI_EXTRACT_NAME_DWORD_CONST acpi_pci32_end
14 Name(P0E, 0x12345678)
15 ACPI_EXTRACT_NAME_BYTE_CONST acpi_pci64_valid
16 Name(P1V, 0x12)
17 ACPI_EXTRACT_NAME_BUFFER8 acpi_pci64_start
18 Name(P1S, Buffer() { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })
19 ACPI_EXTRACT_NAME_BUFFER8 acpi_pci64_end
20 Name(P1E, Buffer() { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })
21 ACPI_EXTRACT_NAME_BUFFER8 acpi_pci64_length
22 Name(P1L, Buffer() { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })
23 }
24
25
26/****************************************************************
Paolo Bonzinicf5bef42012-08-02 15:07:21 +020027 * Suspend
28 ****************************************************************/
29
30 Scope(\) {
31 /*
32 * S3 (suspend-to-ram), S4 (suspend-to-disk) and S5 (power-off) type codes:
33 * must match piix4 emulation.
34 */
35
36 ACPI_EXTRACT_NAME_STRING acpi_s3_name
Kevin O'Connore9e7ab42012-12-02 01:09:17 -050037 Name(_S3, Package(0x04) {
Paolo Bonzinicf5bef42012-08-02 15:07:21 +020038 One, /* PM1a_CNT.SLP_TYP */
39 One, /* PM1b_CNT.SLP_TYP */
40 Zero, /* reserved */
41 Zero /* reserved */
42 })
43 ACPI_EXTRACT_NAME_STRING acpi_s4_name
44 ACPI_EXTRACT_PKG_START acpi_s4_pkg
Kevin O'Connore9e7ab42012-12-02 01:09:17 -050045 Name(_S4, Package(0x04) {
Paolo Bonzinicf5bef42012-08-02 15:07:21 +020046 0x2, /* PM1a_CNT.SLP_TYP */
47 0x2, /* PM1b_CNT.SLP_TYP */
48 Zero, /* reserved */
49 Zero /* reserved */
50 })
Kevin O'Connore9e7ab42012-12-02 01:09:17 -050051 Name(_S5, Package(0x04) {
Paolo Bonzinicf5bef42012-08-02 15:07:21 +020052 Zero, /* PM1a_CNT.SLP_TYP */
53 Zero, /* PM1b_CNT.SLP_TYP */
54 Zero, /* reserved */
55 Zero /* reserved */
56 })
57 }
Hu Taoe9725dd2013-04-05 15:17:51 +080058
59 External(\_SB.PCI0, DeviceObj)
60 External(\_SB.PCI0.ISA, DeviceObj)
61
62 Scope(\_SB.PCI0.ISA) {
63 Device(PEVT) {
64 Name(_HID, "QEMU0001")
65 /* PEST will be patched to be Zero if no such device */
66 ACPI_EXTRACT_NAME_WORD_CONST ssdt_isa_pest
67 Name(PEST, 0xFFFF)
68 OperationRegion(PEOR, SystemIO, PEST, 0x01)
69 Field(PEOR, ByteAcc, NoLock, Preserve) {
70 PEPT, 8,
71 }
72
73 Method(_STA, 0, NotSerialized) {
74 Store(PEST, Local0)
75 If (LEqual(Local0, Zero)) {
76 Return (0x00)
77 } Else {
78 Return (0x0F)
79 }
80 }
81
82 Method(RDPT, 0, NotSerialized) {
83 Store(PEPT, Local0)
84 Return (Local0)
85 }
86
87 Method(WRPT, 1, NotSerialized) {
88 Store(Arg0, PEPT)
89 }
90
91 Name(_CRS, ResourceTemplate() {
92 IO(Decode16, 0x00, 0x00, 0x01, 0x01, IO)
93 })
94
95 CreateWordField(_CRS, IO._MIN, IOMN)
96 CreateWordField(_CRS, IO._MAX, IOMX)
97
98 Method(_INI, 0, NotSerialized) {
99 Store(PEST, IOMN)
100 Store(PEST, IOMX)
101 }
102 }
103 }
Paolo Bonzinicf5bef42012-08-02 15:07:21 +0200104}