blob: 1248703266acfb5f78b73ce07c9966a4f479dce7 [file] [log] [blame]
Werner Zehfa6f8612016-04-20 10:08:17 +02001/*
2 * This file is part of the coreboot project.
3 *
4 * Copyright (C) 2007-2009 coresystems GmbH
5 * Copyright (C) 2011 Google Inc.
6 * Copyright (C) 2015-2016 Intel Corp.
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; version 2 of the License.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 */
17
Elyes HAOUAS6d19a202018-11-22 11:15:29 +010018#include <arch/acpi.h>
Werner Zehfa6f8612016-04-20 10:08:17 +020019DefinitionBlock(
20 "dsdt.aml",
21 "DSDT",
Elyes HAOUAS0cca6e22018-11-13 14:23:29 +010022 0x02, // DSDT revision: ACPI v2.0 and up
Elyes HAOUAS6d19a202018-11-22 11:15:29 +010023 OEM_ID,
24 ACPI_TABLE_CREATOR,
Werner Zehfa6f8612016-04-20 10:08:17 +020025 0x20110725 // OEM revision
26)
27{
28 #include "acpi/platform.asl"
29
30 Name(_S0, Package() { 0x00, 0x00, 0x00, 0x00 })
31 Name(_S5, Package() { 0x07, 0x00, 0x00, 0x00 })
32
33 Scope (\_SB)
34 {
35 Device (PCI0)
36 {
37 #include <acpi/southcluster.asl>
38 #include <acpi/pcie1.asl>
39 }
40
41 Name (PRUN, Package() {
42 Package() { 0x0008FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
43 Package() { 0x0008FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
44 Package() { 0x0008FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
45 Package() { 0x0008FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
46
47 Package() { 0x0009FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
48 Package() { 0x0009FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
49 Package() { 0x0009FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
50 Package() { 0x0009FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
51
52 Package() { 0x000AFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
53 Package() { 0x000AFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
54 Package() { 0x000AFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
55 Package() { 0x000AFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
56
57 Package() { 0x000BFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
58 Package() { 0x000BFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
59 Package() { 0x000BFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
60 Package() { 0x000BFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
61
62 Package() { 0x000CFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
63 Package() { 0x000CFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
64 Package() { 0x000CFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
65 Package() { 0x000CFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
66
67 Package() { 0x000DFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
68 Package() { 0x000DFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
69 Package() { 0x000DFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
70 Package() { 0x000DFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
71
72 Package() { 0x000EFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
73 Package() { 0x000EFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
74 Package() { 0x000EFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
75 Package() { 0x000EFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
76
77 Package() { 0x000FFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
78 Package() { 0x000FFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
79 Package() { 0x000FFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
80 Package() { 0x000FFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
81
82 Package() { 0x0010FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
83 Package() { 0x0010FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
84 Package() { 0x0010FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
85 Package() { 0x0010FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
86
87 Package() { 0x0011FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
88 Package() { 0x0011FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
89 Package() { 0x0011FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
90 Package() { 0x0011FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
91
92 Package() { 0x0012FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
93 Package() { 0x0012FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
94 Package() { 0x0012FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
95 Package() { 0x0012FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
96
97 Package() { 0x0013FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
98 Package() { 0x0013FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
99 Package() { 0x0013FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
100 Package() { 0x0013FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
101
102 Package() { 0x0014FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
103 Package() { 0x0014FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
104 Package() { 0x0014FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
105 Package() { 0x0014FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
106
107 Package() { 0x0016FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
108 Package() { 0x0016FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
109 Package() { 0x0016FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
110 Package() { 0x0016FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
111
112 Package() { 0x0017FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
113 Package() { 0x0017FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
114 Package() { 0x0017FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
115 Package() { 0x0017FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
116
117 Package() { 0x0018FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
118 Package() { 0x0018FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
119 Package() { 0x0018FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
120 Package() { 0x0018FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
121
122 Package() { 0x0019FFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
123 Package() { 0x0019FFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
124 Package() { 0x0019FFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
125 Package() { 0x0019FFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
126
127 Package() { 0x001CFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
128 Package() { 0x001CFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
129 Package() { 0x001CFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
130 Package() { 0x001CFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
131
132 Package() { 0x001DFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
133 Package() { 0x001DFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
134 Package() { 0x001DFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
135 Package() { 0x001DFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
136
137 Package() { 0x001EFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
138 Package() { 0x001EFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
139 Package() { 0x001EFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
140 Package() { 0x001EFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
141
142 Package() { 0x001FFFFF, 0, \_SB.PCI0.LPC0.LNKA, 0 },
143 Package() { 0x001FFFFF, 1, \_SB.PCI0.LPC0.LNKB, 0 },
144 Package() { 0x001FFFFF, 2, \_SB.PCI0.LPC0.LNKC, 0 },
145 Package() { 0x001FFFFF, 3, \_SB.PCI0.LPC0.LNKD, 0 },
146 })
147
148 Name (ARUN, Package() {
149 Package() { 0x0008FFFF, 0, 0, 16 },
150 Package() { 0x0008FFFF, 1, 0, 17 },
151 Package() { 0x0008FFFF, 2, 0, 18 },
152 Package() { 0x0008FFFF, 3, 0, 19 },
153
154 Package() { 0x0009FFFF, 0, 0, 16 },
155 Package() { 0x0009FFFF, 1, 0, 17 },
156 Package() { 0x0009FFFF, 2, 0, 18 },
157 Package() { 0x0009FFFF, 3, 0, 19 },
158
159 Package() { 0x000AFFFF, 0, 0, 16 },
160 Package() { 0x000AFFFF, 1, 0, 17 },
161 Package() { 0x000AFFFF, 2, 0, 18 },
162 Package() { 0x000AFFFF, 3, 0, 19 },
163
164 Package() { 0x000BFFFF, 0, 0, 16 },
165 Package() { 0x000BFFFF, 1, 0, 17 },
166 Package() { 0x000BFFFF, 2, 0, 18 },
167 Package() { 0x000BFFFF, 3, 0, 19 },
168
169 Package() { 0x000CFFFF, 0, 0, 16 },
170 Package() { 0x000CFFFF, 1, 0, 17 },
171 Package() { 0x000CFFFF, 2, 0, 18 },
172 Package() { 0x000CFFFF, 3, 0, 19 },
173
174 Package() { 0x000DFFFF, 0, 0, 16 },
175 Package() { 0x000DFFFF, 1, 0, 17 },
176 Package() { 0x000DFFFF, 2, 0, 18 },
177 Package() { 0x000DFFFF, 3, 0, 19 },
178
179 Package() { 0x000EFFFF, 0, 0, 16 },
180 Package() { 0x000EFFFF, 1, 0, 17 },
181 Package() { 0x000EFFFF, 2, 0, 18 },
182 Package() { 0x000EFFFF, 3, 0, 19 },
183
184 Package() { 0x000FFFFF, 0, 0, 16 },
185 Package() { 0x000FFFFF, 1, 0, 17 },
186 Package() { 0x000FFFFF, 2, 0, 18 },
187 Package() { 0x000FFFFF, 3, 0, 19 },
188
189 Package() { 0x0010FFFF, 0, 0, 16 },
190 Package() { 0x0010FFFF, 1, 0, 17 },
191 Package() { 0x0010FFFF, 2, 0, 18 },
192 Package() { 0x0010FFFF, 3, 0, 19 },
193
194 Package() { 0x0011FFFF, 0, 0, 16 },
195 Package() { 0x0011FFFF, 1, 0, 17 },
196 Package() { 0x0011FFFF, 2, 0, 18 },
197 Package() { 0x0011FFFF, 3, 0, 19 },
198
199 Package() { 0x0012FFFF, 0, 0, 16 },
200 Package() { 0x0012FFFF, 1, 0, 17 },
201 Package() { 0x0012FFFF, 2, 0, 18 },
202 Package() { 0x0012FFFF, 3, 0, 19 },
203
204 Package() { 0x0013FFFF, 0, 0, 16 },
205 Package() { 0x0013FFFF, 1, 0, 17 },
206 Package() { 0x0013FFFF, 2, 0, 18 },
207 Package() { 0x0013FFFF, 3, 0, 19 },
208
209 Package() { 0x0014FFFF, 0, 0, 16 },
210 Package() { 0x0014FFFF, 1, 0, 17 },
211 Package() { 0x0014FFFF, 2, 0, 18 },
212 Package() { 0x0014FFFF, 3, 0, 19 },
213
214 Package() { 0x0016FFFF, 0, 0, 16 },
215 Package() { 0x0016FFFF, 1, 0, 17 },
216 Package() { 0x0016FFFF, 2, 0, 18 },
217 Package() { 0x0016FFFF, 3, 0, 19 },
218
219 Package() { 0x0017FFFF, 0, 0, 16 },
220 Package() { 0x0017FFFF, 1, 0, 17 },
221 Package() { 0x0017FFFF, 2, 0, 18 },
222 Package() { 0x0017FFFF, 3, 0, 19 },
223
224 Package() { 0x0018FFFF, 0, 0, 16 },
225 Package() { 0x0018FFFF, 1, 0, 17 },
226 Package() { 0x0018FFFF, 2, 0, 18 },
227 Package() { 0x0018FFFF, 3, 0, 19 },
228
229 Package() { 0x0019FFFF, 0, 0, 16 },
230 Package() { 0x0019FFFF, 1, 0, 17 },
231 Package() { 0x0019FFFF, 2, 0, 18 },
232 Package() { 0x0019FFFF, 3, 0, 19 },
233
234 Package() { 0x001CFFFF, 0, 0, 16 },
235 Package() { 0x001CFFFF, 1, 0, 17 },
236 Package() { 0x001CFFFF, 2, 0, 18 },
237 Package() { 0x001CFFFF, 3, 0, 19 },
238
239 Package() { 0x001DFFFF, 0, 0, 16 },
240 Package() { 0x001DFFFF, 1, 0, 17 },
241 Package() { 0x001DFFFF, 2, 0, 18 },
242 Package() { 0x001DFFFF, 3, 0, 19 },
243
244 Package() { 0x001EFFFF, 0, 0, 16 },
245 Package() { 0x001EFFFF, 1, 0, 17 },
246 Package() { 0x001EFFFF, 2, 0, 18 },
247 Package() { 0x001EFFFF, 3, 0, 19 },
248
249 Package() { 0x001FFFFF, 0, 0, 16 },
250 Package() { 0x001FFFFF, 1, 0, 17 },
251 Package() { 0x001FFFFF, 2, 0, 18 },
252 Package() { 0x001FFFFF, 3, 0, 19 },
253 })
254
255 Device (UNC0)
256 {
257 Name (_HID, EisaId ("PNP0A03"))
258 Name (_UID, 0x3F)
259 Method (_BBN, 0, NotSerialized)
260 {
261 Return (0xff)
262 }
263
264 Name (_ADR, 0x00)
265 Method (_STA, 0, NotSerialized)
266 {
267 Return (0xf)
268 }
269
270 Name (_CRS, ResourceTemplate ()
271 {
272 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
273 0x0000, // Granularity
274 0x00FF, // Range Minimum
275 0x00FF, // Range Maximum
276 0x0000, // Translation Offset
277 0x0001, // Length
278 ,, )
279 })
280
281 Method (_PRT, 0, NotSerialized)
282 {
283 If (LEqual (PICM, Zero))
284 {
285 Return (PRUN)
286 }
287
288 Return (ARUN)
289 }
290 }
291 }
292
293 #include "acpi/mainboard.asl"
294}