blob: dbffa39ad226097da13950ab8b22bd21cb478496 [file] [log] [blame]
Libra Li7d3649a2009-10-13 16:56:58 +00001/*
2 * This file is part of the coreboot project.
3 *
4 * Copyright (C) 2008 Advanced Micro Devices, Inc.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; version 2 of the License.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
Libra Li7d3649a2009-10-13 16:56:58 +000014 */
15
16/* simple name description */
17/*
18DefinitionBlock ("DSDT.AML","DSDT",0x01,"XXXXXX","XXXXXXXX",0x00010001
19 )
20 {
Patrick Georgiaf97d332010-02-08 15:46:37 +000021 #include "usb.asl"
Libra Li7d3649a2009-10-13 16:56:58 +000022 }
23*/
24Method(UCOC, 0) {
25 Sleep(20)
Elyes HAOUAS8f372d02016-09-27 21:36:55 +020026 Store(0x13,CMTI)
Libra Li7d3649a2009-10-13 16:56:58 +000027 Store(0,GPSL)
28}
29
30/* USB Port 0 overcurrent uses Gpm 0 */
31If(LLessEqual(UOM0,9)) {
32 Scope (\_GPE) {
33 Method (_L13) {
34 UCOC()
35 if(LEqual(GPB0,PLC0)) {
36 Not(PLC0,PLC0)
37 Store(PLC0, \_SB.PT0D)
38 }
39 }
40 }
41}
42
43/* USB Port 1 overcurrent uses Gpm 1 */
44If (LLessEqual(UOM1,9)) {
45 Scope (\_GPE) {
46 Method (_L14) {
47 UCOC()
48 if (LEqual(GPB1,PLC1)) {
49 Not(PLC1,PLC1)
50 Store(PLC1, \_SB.PT1D)
51 }
52 }
53 }
54}
55
56/* USB Port 2 overcurrent uses Gpm 2 */
57If (LLessEqual(UOM2,9)) {
58 Scope (\_GPE) {
59 Method (_L15) {
60 UCOC()
61 if (LEqual(GPB2,PLC2)) {
62 Not(PLC2,PLC2)
63 Store(PLC2, \_SB.PT2D)
64 }
65 }
66 }
67}
68
69/* USB Port 3 overcurrent uses Gpm 3 */
70If (LLessEqual(UOM3,9)) {
71 Scope (\_GPE) {
72 Method (_L16) {
73 UCOC()
74 if (LEqual(GPB3,PLC3)) {
75 Not(PLC3,PLC3)
76 Store(PLC3, \_SB.PT3D)
77 }
78 }
79 }
80}
81
82/* USB Port 4 overcurrent uses Gpm 4 */
83If (LLessEqual(UOM4,9)) {
84 Scope (\_GPE) {
85 Method (_L19) {
86 UCOC()
87 if (LEqual(GPB4,PLC4)) {
88 Not(PLC4,PLC4)
89 Store(PLC4, \_SB.PT4D)
90 }
91 }
92 }
93}
94
95/* USB Port 5 overcurrent uses Gpm 5 */
96/* If (LLessEqual(UOM5,9)) {
97* Scope (\_GPE) {
98* Method (_L1A) {
99* UCOC()
100* if (LEqual(GPB5,PLC5)) {
101* Not(PLC5,PLC5)
102* Store(PLC5, \_SB.PT5D)
103* }
104* }
105* }
106* }
107*/
108
109/* USB Port 6 overcurrent uses Gpm 6 */
110If (LLessEqual(UOM6,9)) {
111 Scope (\_GPE) {
112 /* Method (_L1C) { */
113 Method (_L06) {
114 UCOC()
115 if (LEqual(GPB6,PLC6)) {
116 Not(PLC6,PLC6)
117 Store(PLC6, \_SB.PT6D)
118 }
119 }
120 }
121}
122
123/* USB Port 7 overcurrent uses Gpm 7 */
124If (LLessEqual(UOM7,9)) {
Elyes HAOUAS8f372d02016-09-27 21:36:55 +0200125 Scope (\_GPE) {
Libra Li7d3649a2009-10-13 16:56:58 +0000126 /* Method (_L1D) { */
127 Method (_L07) {
128 UCOC()
129 if (LEqual(GPB7,PLC7)) {
130 Not(PLC7,PLC7)
131 Store(PLC7, \_SB.PT7D)
132 }
133 }
134 }
135}
136
137/* USB Port 8 overcurrent uses Gpm 8 */
138If (LLessEqual(UOM8,9)) {
139 Scope (\_GPE) {
140 Method (_L17) {
141 if (LEqual(G8IS,PLC8)) {
142 Not(PLC8,PLC8)
143 Store(PLC8, \_SB.PT8D)
144 }
145 }
146 }
147}
148
149/* USB Port 9 overcurrent uses Gpm 9 */
150If (LLessEqual(UOM9,9)) {
151 Scope (\_GPE) {
152 Method (_L0E) {
153 if (LEqual(G9IS,0)) {
154 Store(1,\_SB.PT9D)
155 }
156 }
157 }
158}