1 | /*␊ |
2 | * Intel ACPI Component Architecture␊ |
3 | * AML Disassembler version 20091214␊ |
4 | *␊ |
5 | * Disassembly of ./SSDT-2.aml, Sun Jul 29 19:39:23 2012␊ |
6 | *␊ |
7 | *␊ |
8 | * Original Table Header:␊ |
9 | * Signature "SSDT"␊ |
10 | * Length 0x00000A92 (2706)␊ |
11 | * Revision 0x01␊ |
12 | * Checksum 0x7B␊ |
13 | * OEM ID "PmRef"␊ |
14 | * OEM Table ID "CpuPm"␊ |
15 | * OEM Revision 0x00003000 (12288)␊ |
16 | * Compiler ID "INTL"␊ |
17 | * Compiler Version 0x20051117 (537202967)␊ |
18 | */␊ |
19 | DefinitionBlock ("./SSDT-2.aml", "SSDT", 1, "PmRef", "CpuPm", 0x00003000)␊ |
20 | {␊ |
21 | External (\_PR_.CPU7, DeviceObj)␊ |
22 | External (\_PR_.CPU6, DeviceObj)␊ |
23 | External (\_PR_.CPU5, DeviceObj)␊ |
24 | External (\_PR_.CPU4, DeviceObj)␊ |
25 | External (\_PR_.CPU3, DeviceObj)␊ |
26 | External (\_PR_.CPU2, DeviceObj)␊ |
27 | External (\_PR_.CPU1, DeviceObj)␊ |
28 | External (\_PR_.CPU0, DeviceObj)␊ |
29 | External (\_PR_.CPU0._PPC)␊ |
30 | ␊ |
31 | Scope (\)␊ |
32 | {␊ |
33 | Name (SSDT, Package (0x0C)␊ |
34 | {␊ |
35 | "CPU0IST ", ␊ |
36 | 0x02A1B018, ␊ |
37 | 0x000009AA, ␊ |
38 | "APIST ", ␊ |
39 | 0xDE816A98, ␊ |
40 | 0x00000303, ␊ |
41 | "CPU0CST ", ␊ |
42 | 0xDE815018, ␊ |
43 | 0x0000083B, ␊ |
44 | "APCST ", ␊ |
45 | 0xDE822C18, ␊ |
46 | 0x00000119␊ |
47 | })␊ |
48 | Name (CFGD, 0x0066F6D7)␊ |
49 | Name (\PDC0, 0x80000000)␊ |
50 | Name (\PDC1, 0x80000000)␊ |
51 | Name (\PDC2, 0x80000000)␊ |
52 | Name (\PDC3, 0x80000000)␊ |
53 | Name (\PDC4, 0x80000000)␊ |
54 | Name (\PDC5, 0x80000000)␊ |
55 | Name (\PDC6, 0x80000000)␊ |
56 | Name (\PDC7, 0x80000000)␊ |
57 | Name (\SDTL, Zero)␊ |
58 | }␊ |
59 | ␊ |
60 | Scope (\_PR)␊ |
61 | {␊ |
62 | OperationRegion (PPMT, SystemMemory, 0xDEAF2E18, 0x0029)␊ |
63 | Field (PPMT, AnyAcc, Lock, Preserve)␊ |
64 | {␊ |
65 | PGRV, 8, ␊ |
66 | Offset (0x06), ␊ |
67 | ACRT, 8, ␊ |
68 | APSV, 8, ␊ |
69 | AAC0, 8, ␊ |
70 | CPID, 32, ␊ |
71 | CPPC, 8, ␊ |
72 | CCTP, 8, ␊ |
73 | CLVL, 8, ␊ |
74 | CBMI, 8, ␊ |
75 | PL10, 16, ␊ |
76 | PL20, 16, ␊ |
77 | PLW0, 8, ␊ |
78 | CTC0, 8, ␊ |
79 | TAR0, 8, ␊ |
80 | PPC0, 8, ␊ |
81 | PL11, 16, ␊ |
82 | PL21, 16, ␊ |
83 | PLW1, 8, ␊ |
84 | CTC1, 8, ␊ |
85 | TAR1, 8, ␊ |
86 | PPC1, 8, ␊ |
87 | PL12, 16, ␊ |
88 | PL22, 16, ␊ |
89 | PLW2, 8, ␊ |
90 | CTC2, 8, ␊ |
91 | TAR2, 8, ␊ |
92 | PPC2, 8␊ |
93 | }␊ |
94 | }␊ |
95 | ␊ |
96 | Scope (\_PR.CPU0)␊ |
97 | {␊ |
98 | Name (HI0, Zero)␊ |
99 | Name (HC0, Zero)␊ |
100 | Method (_PDC, 1, NotSerialized)␊ |
101 | {␊ |
102 | Store (CPPC, \_PR.CPU0._PPC)␊ |
103 | Store (CPDC (Arg0), Local0)␊ |
104 | GCAP (Local0)␊ |
105 | Return (Local0)␊ |
106 | }␊ |
107 | ␊ |
108 | Method (_OSC, 4, NotSerialized)␊ |
109 | {␊ |
110 | Store (COSC (Arg0, Arg1, Arg2, Arg3), Local0)␊ |
111 | GCAP (Local0)␊ |
112 | Return (Local0)␊ |
113 | }␊ |
114 | ␊ |
115 | Method (CPDC, 1, NotSerialized)␊ |
116 | {␊ |
117 | CreateDWordField (Arg0, Zero, REVS)␊ |
118 | CreateDWordField (Arg0, 0x04, SIZE)␊ |
119 | Store (SizeOf (Arg0), Local0)␊ |
120 | Store (Subtract (Local0, 0x08), Local1)␊ |
121 | CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)␊ |
122 | Name (STS0, Buffer (0x04)␊ |
123 | {␊ |
124 | 0x00, 0x00, 0x00, 0x00␊ |
125 | })␊ |
126 | Concatenate (STS0, TEMP, Local2)␊ |
127 | Return (COSC (Buffer (0x10)␊ |
128 | {␊ |
129 | /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, ␊ |
130 | /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53␊ |
131 | }, REVS, SIZE, Local2))␊ |
132 | }␊ |
133 | ␊ |
134 | Method (COSC, 4, NotSerialized)␊ |
135 | {␊ |
136 | CreateDWordField (Arg3, Zero, STS0)␊ |
137 | CreateDWordField (Arg3, 0x04, CAP0)␊ |
138 | CreateDWordField (Arg0, Zero, IID0)␊ |
139 | CreateDWordField (Arg0, 0x04, IID1)␊ |
140 | CreateDWordField (Arg0, 0x08, IID2)␊ |
141 | CreateDWordField (Arg0, 0x0C, IID3)␊ |
142 | Name (UID0, Buffer (0x10)␊ |
143 | {␊ |
144 | /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, ␊ |
145 | /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53␊ |
146 | })␊ |
147 | CreateDWordField (UID0, Zero, EID0)␊ |
148 | CreateDWordField (UID0, 0x04, EID1)␊ |
149 | CreateDWordField (UID0, 0x08, EID2)␊ |
150 | CreateDWordField (UID0, 0x0C, EID3)␊ |
151 | If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), ␊ |
152 | LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3)))))␊ |
153 | {␊ |
154 | Store (0x06, STS0)␊ |
155 | Return (Arg3)␊ |
156 | }␊ |
157 | ␊ |
158 | If (LNotEqual (Arg1, One))␊ |
159 | {␊ |
160 | Store (0x0A, STS0)␊ |
161 | Return (Arg3)␊ |
162 | }␊ |
163 | ␊ |
164 | Return (Arg3)␊ |
165 | }␊ |
166 | ␊ |
167 | Method (GCAP, 1, NotSerialized)␊ |
168 | {␊ |
169 | CreateDWordField (Arg0, Zero, STS0)␊ |
170 | CreateDWordField (Arg0, 0x04, CAP0)␊ |
171 | If (LOr (LEqual (STS0, 0x06), LEqual (STS0, 0x0A)))␊ |
172 | {␊ |
173 | Return (Zero)␊ |
174 | }␊ |
175 | ␊ |
176 | If (And (STS0, One))␊ |
177 | {␊ |
178 | And (CAP0, 0x0BFF, CAP0)␊ |
179 | Return (Zero)␊ |
180 | }␊ |
181 | ␊ |
182 | Or (And (PDC0, 0x7FFFFFFF), CAP0, PDC0)␊ |
183 | If (And (CFGD, 0x3E))␊ |
184 | {␊ |
185 | If (LAnd (LAnd (And (CFGD, 0x0400), And (PDC0, 0x18␊ |
186 | )), LNot (And (SDTL, 0x02))))␊ |
187 | {␊ |
188 | Or (SDTL, 0x02, SDTL)␊ |
189 | OperationRegion (CST0, SystemMemory, DerefOf (Index (SSDT, 0x07)), DerefOf (Index (SSDT, 0x08␊ |
190 | )))␊ |
191 | Load (CST0, HC0)␊ |
192 | }␊ |
193 | }␊ |
194 | ␊ |
195 | Return (Zero)␊ |
196 | }␊ |
197 | }␊ |
198 | ␊ |
199 | Scope (\_PR.CPU1)␊ |
200 | {␊ |
201 | Name (HI1, Zero)␊ |
202 | Name (HC1, Zero)␊ |
203 | Method (_PDC, 1, NotSerialized)␊ |
204 | {␊ |
205 | Store (\_PR.CPU0.CPDC (Arg0), Local0)␊ |
206 | GCAP (Local0)␊ |
207 | Return (Local0)␊ |
208 | }␊ |
209 | ␊ |
210 | Method (_OSC, 4, NotSerialized)␊ |
211 | {␊ |
212 | Store (\_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3), Local0)␊ |
213 | GCAP (Local0)␊ |
214 | Return (Local0)␊ |
215 | }␊ |
216 | ␊ |
217 | Method (GCAP, 1, NotSerialized)␊ |
218 | {␊ |
219 | CreateDWordField (Arg0, Zero, STS1)␊ |
220 | CreateDWordField (Arg0, 0x04, CAP1)␊ |
221 | If (LOr (LEqual (STS1, 0x06), LEqual (STS1, 0x0A)))␊ |
222 | {␊ |
223 | Return (Zero)␊ |
224 | }␊ |
225 | ␊ |
226 | If (And (STS1, One))␊ |
227 | {␊ |
228 | And (CAP1, 0x0BFF, CAP1)␊ |
229 | Return (Zero)␊ |
230 | }␊ |
231 | ␊ |
232 | Or (And (PDC1, 0x7FFFFFFF), CAP1, PDC1)␊ |
233 | If (LEqual (And (PDC1, 0x09), 0x09))␊ |
234 | {␊ |
235 | APPT ()␊ |
236 | }␊ |
237 | ␊ |
238 | If (And (PDC1, 0x18))␊ |
239 | {␊ |
240 | APCT ()␊ |
241 | }␊ |
242 | ␊ |
243 | Store (PDC1, PDC0)␊ |
244 | Return (Zero)␊ |
245 | }␊ |
246 | ␊ |
247 | Method (APCT, 0, NotSerialized)␊ |
248 | {␊ |
249 | If (LAnd (And (CFGD, 0x2E), LNot (And (SDTL, 0x20␊ |
250 | ))))␊ |
251 | {␊ |
252 | Or (SDTL, 0x20, SDTL)␊ |
253 | OperationRegion (CST1, SystemMemory, DerefOf (Index (SSDT, 0x0A)), DerefOf (Index (SSDT, 0x0B␊ |
254 | )))␊ |
255 | Load (CST1, HC1)␊ |
256 | }␊ |
257 | }␊ |
258 | ␊ |
259 | Method (APPT, 0, NotSerialized)␊ |
260 | {␊ |
261 | If (LAnd (And (CFGD, One), LNot (And (SDTL, 0x10␊ |
262 | ))))␊ |
263 | {␊ |
264 | Or (SDTL, 0x10, SDTL)␊ |
265 | OperationRegion (IST1, SystemMemory, DerefOf (Index (SSDT, 0x04)), DerefOf (Index (SSDT, 0x05␊ |
266 | )))␊ |
267 | Load (IST1, HI1)␊ |
268 | }␊ |
269 | }␊ |
270 | }␊ |
271 | ␊ |
272 | Scope (\_PR.CPU2)␊ |
273 | {␊ |
274 | Method (_PDC, 1, NotSerialized)␊ |
275 | {␊ |
276 | Store (\_PR.CPU0.CPDC (Arg0), Local0)␊ |
277 | GCAP (Local0)␊ |
278 | Return (Local0)␊ |
279 | }␊ |
280 | ␊ |
281 | Method (_OSC, 4, NotSerialized)␊ |
282 | {␊ |
283 | Store (\_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3), Local0)␊ |
284 | GCAP (Local0)␊ |
285 | Return (Local0)␊ |
286 | }␊ |
287 | ␊ |
288 | Method (GCAP, 1, NotSerialized)␊ |
289 | {␊ |
290 | CreateDWordField (Arg0, Zero, STS2)␊ |
291 | CreateDWordField (Arg0, 0x04, CAP2)␊ |
292 | If (LOr (LEqual (STS2, 0x06), LEqual (STS2, 0x0A)))␊ |
293 | {␊ |
294 | Return (Zero)␊ |
295 | }␊ |
296 | ␊ |
297 | If (And (STS2, One))␊ |
298 | {␊ |
299 | And (CAP2, 0x0BFF, CAP2)␊ |
300 | Return (Zero)␊ |
301 | }␊ |
302 | ␊ |
303 | Or (And (PDC2, 0x7FFFFFFF), CAP2, PDC2)␊ |
304 | If (LEqual (And (PDC2, 0x09), 0x09))␊ |
305 | {␊ |
306 | \_PR.CPU1.APPT ()␊ |
307 | }␊ |
308 | ␊ |
309 | If (And (PDC2, 0x18))␊ |
310 | {␊ |
311 | \_PR.CPU1.APCT ()␊ |
312 | }␊ |
313 | ␊ |
314 | Store (PDC2, PDC0)␊ |
315 | Return (Zero)␊ |
316 | }␊ |
317 | }␊ |
318 | ␊ |
319 | Scope (\_PR.CPU3)␊ |
320 | {␊ |
321 | Method (_PDC, 1, NotSerialized)␊ |
322 | {␊ |
323 | Store (\_PR.CPU0.CPDC (Arg0), Local0)␊ |
324 | GCAP (Local0)␊ |
325 | Return (Local0)␊ |
326 | }␊ |
327 | ␊ |
328 | Method (_OSC, 4, NotSerialized)␊ |
329 | {␊ |
330 | Store (\_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3), Local0)␊ |
331 | GCAP (Local0)␊ |
332 | Return (Local0)␊ |
333 | }␊ |
334 | ␊ |
335 | Method (GCAP, 1, NotSerialized)␊ |
336 | {␊ |
337 | CreateDWordField (Arg0, Zero, STS3)␊ |
338 | CreateDWordField (Arg0, 0x04, CAP3)␊ |
339 | If (LOr (LEqual (STS3, 0x06), LEqual (STS3, 0x0A)))␊ |
340 | {␊ |
341 | Return (Zero)␊ |
342 | }␊ |
343 | ␊ |
344 | If (And (STS3, One))␊ |
345 | {␊ |
346 | And (CAP3, 0x0BFF, CAP3)␊ |
347 | Return (Zero)␊ |
348 | }␊ |
349 | ␊ |
350 | Or (And (PDC3, 0x7FFFFFFF), CAP3, PDC3)␊ |
351 | If (LEqual (And (PDC3, 0x09), 0x09))␊ |
352 | {␊ |
353 | \_PR.CPU1.APPT ()␊ |
354 | }␊ |
355 | ␊ |
356 | If (And (PDC3, 0x18))␊ |
357 | {␊ |
358 | \_PR.CPU1.APCT ()␊ |
359 | }␊ |
360 | ␊ |
361 | Store (PDC3, PDC0)␊ |
362 | Return (Zero)␊ |
363 | }␊ |
364 | }␊ |
365 | ␊ |
366 | Scope (\_PR.CPU4)␊ |
367 | {␊ |
368 | Method (_PDC, 1, NotSerialized)␊ |
369 | {␊ |
370 | Store (\_PR.CPU0.CPDC (Arg0), Local0)␊ |
371 | GCAP (Local0)␊ |
372 | Return (Local0)␊ |
373 | }␊ |
374 | ␊ |
375 | Method (_OSC, 4, NotSerialized)␊ |
376 | {␊ |
377 | Store (\_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3), Local0)␊ |
378 | GCAP (Local0)␊ |
379 | Return (Local0)␊ |
380 | }␊ |
381 | ␊ |
382 | Method (GCAP, 1, NotSerialized)␊ |
383 | {␊ |
384 | CreateDWordField (Arg0, Zero, STS4)␊ |
385 | CreateDWordField (Arg0, 0x04, CAP4)␊ |
386 | If (LOr (LEqual (STS4, 0x06), LEqual (STS4, 0x0A)))␊ |
387 | {␊ |
388 | Return (Zero)␊ |
389 | }␊ |
390 | ␊ |
391 | If (And (STS4, One))␊ |
392 | {␊ |
393 | And (CAP4, 0x0BFF, CAP4)␊ |
394 | Return (Zero)␊ |
395 | }␊ |
396 | ␊ |
397 | Or (And (PDC4, 0x7FFFFFFF), CAP4, PDC4)␊ |
398 | If (LEqual (And (PDC4, 0x09), 0x09))␊ |
399 | {␊ |
400 | \_PR.CPU1.APPT ()␊ |
401 | }␊ |
402 | ␊ |
403 | If (And (PDC4, 0x18))␊ |
404 | {␊ |
405 | \_PR.CPU1.APCT ()␊ |
406 | }␊ |
407 | ␊ |
408 | Store (PDC4, PDC0)␊ |
409 | Return (Zero)␊ |
410 | }␊ |
411 | }␊ |
412 | ␊ |
413 | Scope (\_PR.CPU5)␊ |
414 | {␊ |
415 | Method (_PDC, 1, NotSerialized)␊ |
416 | {␊ |
417 | Store (\_PR.CPU0.CPDC (Arg0), Local0)␊ |
418 | GCAP (Local0)␊ |
419 | Return (Local0)␊ |
420 | }␊ |
421 | ␊ |
422 | Method (_OSC, 4, NotSerialized)␊ |
423 | {␊ |
424 | Store (\_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3), Local0)␊ |
425 | GCAP (Local0)␊ |
426 | Return (Local0)␊ |
427 | }␊ |
428 | ␊ |
429 | Method (GCAP, 1, NotSerialized)␊ |
430 | {␊ |
431 | CreateDWordField (Arg0, Zero, STS5)␊ |
432 | CreateDWordField (Arg0, 0x04, CAP5)␊ |
433 | If (LOr (LEqual (STS5, 0x06), LEqual (STS5, 0x0A)))␊ |
434 | {␊ |
435 | Return (Zero)␊ |
436 | }␊ |
437 | ␊ |
438 | If (And (STS5, One))␊ |
439 | {␊ |
440 | And (CAP5, 0x0BFF, CAP5)␊ |
441 | Return (Zero)␊ |
442 | }␊ |
443 | ␊ |
444 | Or (And (PDC5, 0x7FFFFFFF), CAP5, PDC5)␊ |
445 | If (LEqual (And (PDC5, 0x09), 0x09))␊ |
446 | {␊ |
447 | \_PR.CPU1.APPT ()␊ |
448 | }␊ |
449 | ␊ |
450 | If (And (PDC5, 0x18))␊ |
451 | {␊ |
452 | \_PR.CPU1.APCT ()␊ |
453 | }␊ |
454 | ␊ |
455 | Store (PDC5, PDC0)␊ |
456 | Return (Zero)␊ |
457 | }␊ |
458 | }␊ |
459 | ␊ |
460 | Scope (\_PR.CPU6)␊ |
461 | {␊ |
462 | Method (_PDC, 1, NotSerialized)␊ |
463 | {␊ |
464 | Store (\_PR.CPU0.CPDC (Arg0), Local0)␊ |
465 | GCAP (Local0)␊ |
466 | Return (Local0)␊ |
467 | }␊ |
468 | ␊ |
469 | Method (_OSC, 4, NotSerialized)␊ |
470 | {␊ |
471 | Store (\_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3), Local0)␊ |
472 | GCAP (Local0)␊ |
473 | Return (Local0)␊ |
474 | }␊ |
475 | ␊ |
476 | Method (GCAP, 1, NotSerialized)␊ |
477 | {␊ |
478 | CreateDWordField (Arg0, Zero, STS6)␊ |
479 | CreateDWordField (Arg0, 0x04, CAP6)␊ |
480 | If (LOr (LEqual (STS6, 0x06), LEqual (STS6, 0x0A)))␊ |
481 | {␊ |
482 | Return (Zero)␊ |
483 | }␊ |
484 | ␊ |
485 | If (And (STS6, One))␊ |
486 | {␊ |
487 | And (CAP6, 0x0BFF, CAP6)␊ |
488 | Return (Zero)␊ |
489 | }␊ |
490 | ␊ |
491 | Or (And (PDC6, 0x7FFFFFFF), CAP6, PDC6)␊ |
492 | If (LEqual (And (PDC6, 0x09), 0x09))␊ |
493 | {␊ |
494 | \_PR.CPU1.APPT ()␊ |
495 | }␊ |
496 | ␊ |
497 | If (And (PDC6, 0x18))␊ |
498 | {␊ |
499 | \_PR.CPU1.APCT ()␊ |
500 | }␊ |
501 | ␊ |
502 | Store (PDC6, PDC0)␊ |
503 | Return (Zero)␊ |
504 | }␊ |
505 | }␊ |
506 | ␊ |
507 | Scope (\_PR.CPU7)␊ |
508 | {␊ |
509 | Method (_PDC, 1, NotSerialized)␊ |
510 | {␊ |
511 | Store (\_PR.CPU0.CPDC (Arg0), Local0)␊ |
512 | GCAP (Local0)␊ |
513 | Return (Local0)␊ |
514 | }␊ |
515 | ␊ |
516 | Method (_OSC, 4, NotSerialized)␊ |
517 | {␊ |
518 | Store (\_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3), Local0)␊ |
519 | GCAP (Local0)␊ |
520 | Return (Local0)␊ |
521 | }␊ |
522 | ␊ |
523 | Method (GCAP, 1, NotSerialized)␊ |
524 | {␊ |
525 | CreateDWordField (Arg0, Zero, STS7)␊ |
526 | CreateDWordField (Arg0, 0x04, CAP7)␊ |
527 | If (LOr (LEqual (STS7, 0x06), LEqual (STS7, 0x0A)))␊ |
528 | {␊ |
529 | Return (Zero)␊ |
530 | }␊ |
531 | ␊ |
532 | If (And (STS7, One))␊ |
533 | {␊ |
534 | And (CAP7, 0x0BFF, CAP7)␊ |
535 | Return (Zero)␊ |
536 | }␊ |
537 | ␊ |
538 | Or (And (PDC7, 0x7FFFFFFF), CAP7, PDC7)␊ |
539 | If (LEqual (And (PDC7, 0x09), 0x09))␊ |
540 | {␊ |
541 | \_PR.CPU1.APPT ()␊ |
542 | }␊ |
543 | ␊ |
544 | If (And (PDC7, 0x18))␊ |
545 | {␊ |
546 | \_PR.CPU1.APCT ()␊ |
547 | }␊ |
548 | ␊ |
549 | Store (PDC7, PDC0)␊ |
550 | Return (Zero)␊ |
551 | }␊ |
552 | }␊ |
553 | }␊ |
554 | ␊ |
555 | |