]> git.proxmox.com Git - mirror_edk2.git/blob - Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Gpe.asl
Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to
[mirror_edk2.git] / Vlv2DeviceRefCodePkg / AcpiTablesPCAT / Gpe.asl
1 /**************************************************************************;
2 ;* *;
3 ;* *;
4 ;* Intel Corporation - ACPI Reference Code for the Baytrail *;
5 ;* Family of Customer Reference Boards. *;
6 ;* *;
7 ;* *;
8 ;* Copyright (c) 2012 - 2014, Intel Corporation. All rights reserved *;
9 ;
10 ; This program and the accompanying materials are licensed and made available under
11 ; the terms and conditions of the BSD License that accompanies this distribution.
12 ; The full text of the license may be found at
13 ; http://opensource.org/licenses/bsd-license.php.
14 ;
15 ; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
16 ; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17 ;
18 ;* *;
19 ;* *;
20 ;**************************************************************************/
21
22
23 // General Purpose Events. This Scope handles the Run-time and
24 // Wake-time SCIs. The specific method called will be determined by
25 // the _Lxx value, where xx equals the bit location in the General
26 // Purpose Event register(s).
27
28 Scope(\_GPE)
29 {
30 //
31 // Software GPE caused the event.
32 //
33 Method(_L02)
34 {
35 // Clear GPE status bit.
36 Store(0,GPEC)
37 //
38 // Handle DTS Thermal Events.
39 //
40 External(DTSE, IntObj)
41 If(CondRefOf(DTSE))
42 {
43 If(LGreaterEqual(DTSE, 0x01))
44 {
45 Notify(\_TZ.TZ01,0x80)
46 }
47 }
48 }
49
50 //
51 // PUNIT SCI event.
52 //
53 Method(_L04)
54 {
55 // Clear the PUNIT Status Bit.
56 Store(1, PSCI)
57 }
58
59
60 //
61 // IGD OpRegion SCI event (see IGD OpRegion/Software SCI BIOS SPEC).
62 //
63 Method(_L05)
64 {
65 If(LAnd(\_SB.PCI0.GFX0.GSSE, LNot(GSMI))) // Graphics software SCI event?
66 {
67 \_SB.PCI0.GFX0.GSCI() // Handle the SWSCI
68 }
69 }
70
71 //
72 // This PME event (PCH's GPE #13) is received when any PCH internal device with PCI Power Management capabilities
73 // on bus 0 asserts the equivalent of the PME# signal.
74 //
75 Method(_L0D, 0)
76 {
77 If(LAnd(\_SB.PCI0.EHC1.PMEE, \_SB.PCI0.EHC1.PMES))
78 {
79 If(LNotEqual(OSEL, 1))
80 {
81 Store(1, \_SB.PCI0.EHC1.PMES) //Clear PME status
82 Store(0, \_SB.PCI0.EHC1.PMEE) //Disable PME
83 }
84 Notify(\_SB.PCI0.EHC1, 0x02)
85 }
86 If(LAnd(\_SB.PCI0.XHC1.PMEE, \_SB.PCI0.XHC1.PMES))
87 {
88 If(LNotEqual(OSEL, 1))
89 {
90 Store(1, \_SB.PCI0.XHC1.PMES) //Clear PME status
91 Store(0, \_SB.PCI0.XHC1.PMEE) //Disable PME
92 }
93 Notify(\_SB.PCI0.XHC1, 0x02)
94 }
95 If(LAnd(\_SB.PCI0.HDEF.PMEE, \_SB.PCI0.HDEF.PMES))
96 {
97 If(LNotEqual(OSEL, 1))
98 {
99 Store(1, \_SB.PCI0.HDEF.PMES) //Clear PME status
100 Store(0, \_SB.PCI0.HDEF.PMEE) //Disable PME
101 }
102 Notify(\_SB.PCI0.HDEF, 0x02)
103 }
104 }
105 }