Ticket #168: dsdt_Athlon64X2_ASUS-Pundit_P1-AH2.dsl

File dsdt_Athlon64X2_ASUS-Pundit_P1-AH2.dsl, 243.4 KB (added by Chuck McKinnis, 17 years ago)
Line 
1/*
2 * Intel ACPI Component Architecture
3 * AML Disassembler version 20060912
4 *
5 * Disassembly of (null), Tue Jan 1 17:31:07 2008
6 *
7 *
8 * Original Table Header:
9 * Signature "DSDT"
10 * Length 0x00007055 (28757)
11 * Revision 0x01
12 * OEM ID "_ASUS_"
13 * OEM Table ID "Notebook"
14 * OEM Revision 0x00001000 (4096)
15 * Creator ID "MSFT"
16 * Creator Revision 0x03000000 (50331648)
17 */
18DefinitionBlock ("DSDT.aml", "DSDT", 1, "_ASUS_", "Notebook", 0x00001000)
19{
20 Scope (\_PR)
21 {
22 Processor (\_PR.CPU0, 0x00, 0x00000000, 0x00) {}
23 Processor (\_PR.CPU1, 0x01, 0x00000000, 0x00) {}
24 }
25
26 Name (\_S0, Package (0x04)
27 {
28 0x00,
29 0x00,
30 0x00,
31 0x00
32 })
33 Name (\_S1, Package (0x04)
34 {
35 0x01,
36 0x00,
37 0x00,
38 0x00
39 })
40 Name (\_S3, Package (0x04)
41 {
42 0x05,
43 0x00,
44 0x00,
45 0x00
46 })
47 Name (\_S4, Package (0x04)
48 {
49 0x06,
50 0x00,
51 0x00,
52 0x00
53 })
54 Name (\_S5, Package (0x04)
55 {
56 0x07,
57 0x00,
58 0x00,
59 0x00
60 })
61 OperationRegion (\DEBG, SystemIO, 0x1080, 0x01)
62 Field (\DEBG, ByteAcc, NoLock, Preserve)
63 {
64 DBG1, 8
65 }
66
67 OperationRegion (KBC, SystemIO, 0x64, 0x01)
68 Field (KBC, ByteAcc, NoLock, Preserve)
69 {
70 KCMD, 8
71 }
72
73 OperationRegion (KBCD, SystemIO, 0x60, 0x01)
74 Field (KBCD, ByteAcc, NoLock, Preserve)
75 {
76 KDAT, 8
77 }
78
79 OperationRegion (EXTM, SystemMemory, 0x000FF830, 0x10)
80 Field (EXTM, WordAcc, NoLock, Preserve)
81 {
82 ROM1, 16,
83 RMS1, 16,
84 ROM2, 16,
85 RMS2, 16,
86 ROM3, 16,
87 RMS3, 16,
88 AMEM, 32
89 }
90
91 OperationRegion (\PM1S, SystemIO, 0x4000, 0x02)
92 Field (\PM1S, ByteAcc, NoLock, Preserve)
93 {
94 Offset (0x01),
95 PBTS, 1,
96 , 1,
97 RTCS, 1,
98 , 4,
99 WAKS, 1
100 }
101
102 OperationRegion (ELCR, SystemIO, 0x04D0, 0x02)
103 Field (ELCR, ByteAcc, NoLock, Preserve)
104 {
105 ELC1, 8,
106 ELC2, 8
107 }
108
109 OperationRegion (\STUS, SystemIO, 0x4400, 0x04)
110 Field (\STUS, ByteAcc, NoLock, Preserve)
111 {
112 G_ST, 32
113 }
114
115 OperationRegion (\GPS0, SystemIO, 0x4020, 0x04)
116 Field (\GPS0, ByteAcc, NoLock, Preserve)
117 {
118 GS00, 8,
119 GS01, 8,
120 GS02, 8,
121 GS03, 8
122 }
123
124 OperationRegion (\P20S, SystemIO, 0x4020, 0x04)
125 Field (\P20S, ByteAcc, NoLock, Preserve)
126 {
127 P_20, 32
128 }
129
130 OperationRegion (\SMIC, SystemIO, 0x442E, 0x01)
131 Field (\SMIC, ByteAcc, NoLock, Preserve)
132 {
133 SCP, 8
134 }
135
136 OperationRegion (\GP1, SystemIO, 0x44C0, 0x40)
137 Field (\GP1, ByteAcc, NoLock, Preserve)
138 {
139 GP00, 8,
140 GP01, 8,
141 GP02, 8,
142 GP03, 8,
143 GP04, 8,
144 GP05, 8,
145 GP06, 8,
146 GP07, 8,
147 GP08, 8,
148 GP09, 8,
149 GP10, 8,
150 GP11, 8,
151 GP12, 8,
152 GP13, 8,
153 GP14, 8,
154 GP15, 8,
155 GP16, 8,
156 GP17, 8,
157 GP18, 8,
158 GP19, 8,
159 GP20, 8,
160 GP21, 8,
161 GP22, 8,
162 Offset (0x18),
163 GP24, 8,
164 GP25, 8,
165 GP26, 8,
166 GP27, 8,
167 GP28, 8,
168 GP29, 8,
169 GP30, 8,
170 GP31, 8,
171 GP32, 8,
172 GP33, 8,
173 GP34, 8,
174 GP35, 8,
175 GP36, 8,
176 GP37, 8,
177 GP38, 8,
178 GP39, 8,
179 GP40, 8,
180 GP41, 8,
181 GP42, 8,
182 GP43, 8,
183 GP44, 8,
184 GP45, 8,
185 GP46, 8,
186 GP47, 8,
187 GP48, 8,
188 GP49, 8,
189 GP50, 8,
190 GP51, 8,
191 GP52, 8,
192 GP53, 8,
193 GP54, 8,
194 GP55, 8,
195 GP56, 8,
196 GP57, 8,
197 GP58, 8,
198 GP59, 8,
199 GP60, 8,
200 GP61, 8,
201 GP62, 8,
202 GP63, 8
203 }
204
205 Name (VSTA, 0x01)
206 Name (OSFX, 0x01)
207 Name (OSFL, 0x01)
208 Method (STRC, 2, NotSerialized)
209 {
210 If (LNotEqual (SizeOf (Arg0), SizeOf (Arg1)))
211 {
212 Return (0x00)
213 }
214
215 Add (SizeOf (Arg0), 0x01, Local0)
216 Name (BUF0, Buffer (Local0) {})
217 Name (BUF1, Buffer (Local0) {})
218 Store (Arg0, BUF0)
219 Store (Arg1, BUF1)
220 While (Local0)
221 {
222 Decrement (Local0)
223 If (LNotEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (
224 BUF1, Local0))))
225 {
226 Return (Zero)
227 }
228 }
229
230 Return (One)
231 }
232
233 OperationRegion (RTCM, SystemIO, 0x70, 0x02)
234 Field (RTCM, ByteAcc, NoLock, Preserve)
235 {
236 CMIN, 8,
237 CMDA, 8
238 }
239
240 IndexField (CMIN, CMDA, ByteAcc, NoLock, Preserve)
241 {
242 Offset (0x0F),
243 SHUT, 8
244 }
245
246 OperationRegion (INFO, SystemMemory, 0x000FF840, 0x01)
247 Field (INFO, ByteAcc, NoLock, Preserve)
248 {
249 KBDI, 1,
250 RTCW, 1,
251 PS2F, 1,
252 IRFL, 2,
253 DISE, 1,
254 SSHU, 1
255 }
256
257 OperationRegion (BEEP, SystemIO, 0x61, 0x01)
258 Field (BEEP, ByteAcc, NoLock, Preserve)
259 {
260 S1B, 8
261 }
262
263 OperationRegion (CONT, SystemIO, 0x40, 0x04)
264 Field (CONT, ByteAcc, NoLock, Preserve)
265 {
266 CNT0, 8,
267 CNT1, 8,
268 CNT2, 8,
269 CTRL, 8
270 }
271
272 Method (SPKR, 1, NotSerialized)
273 {
274 Store (S1B, Local0)
275 Store (0xB6, CTRL)
276 Store (0x55, CNT2)
277 Store (0x03, CNT2)
278 Store (Arg0, Local2)
279 While (LGreater (Local2, 0x00))
280 {
281 Or (S1B, 0x03, S1B)
282 Store (0x5FFF, Local3)
283 While (LGreater (Local3, 0x00))
284 {
285 Decrement (Local3)
286 }
287
288 And (S1B, 0xFC, S1B)
289 Store (0x0EFF, Local3)
290 While (LGreater (Local3, 0x00))
291 {
292 Decrement (Local3)
293 }
294
295 Decrement (Local2)
296 }
297
298 Store (Local0, S1B)
299 }
300
301 OperationRegion (AMDL, SystemMemory, 0x000FFFEA, 0x01)
302 Field (AMDL, ByteAcc, NoLock, Preserve)
303 {
304 , 1,
305 AWEN, 1,
306 , 1,
307 , 1,
308 , 1,
309 , 1,
310 , 1,
311 Offset (0x01)
312 }
313
314 Scope (\_SB)
315 {
316 Device (\AWY)
317 {
318 Name (_HID, "AWY0001")
319 Method (SMOD, 1, NotSerialized)
320 {
321 }
322
323 Method (_STA, 0, NotSerialized)
324 {
325 If (LEqual (AWEN, 0x00))
326 {
327 Return (0x00)
328 }
329
330 Return (0x0F)
331 }
332 }
333 }
334
335 Scope (\)
336 {
337 Name (PICF, 0x00)
338 Method (_PIC, 1, NotSerialized)
339 {
340 Store (Arg0, PICF)
341 }
342 }
343
344 Name (SID4, 0x00)
345 Name (SLG0, 0x00)
346 Name (SLG1, 0x00)
347 Name (SLG2, 0x00)
348 Name (SLG3, 0x00)
349 Name (SLG4, 0x00)
350 Name (SLG5, 0x00)
351 Name (SLG6, 0x00)
352 Name (SLG7, 0x00)
353 Name (SLG8, 0x00)
354 Name (SLG9, 0x00)
355 Name (SLGA, 0x00)
356 Name (SID5, 0x00)
357 Name (SSM0, 0x00)
358 Name (SSM1, 0x00)
359 Name (SSM2, 0x00)
360 Name (SSM3, 0x00)
361 Name (SSM4, 0x00)
362 Name (SUA0, 0x00)
363 Name (SUB0, 0x00)
364 Name (SX, 0x00)
365 Name (SFLG, 0x00)
366 Name (SID0, 0x00)
367 Name (SID1, 0x00)
368 Name (SID2, 0x00)
369 Name (SID3, 0x00)
370 Method (\_PTS, 1, NotSerialized)
371 {
372 Store (Arg0, Local0)
373 SALD (Local0)
374 Store (Arg0, Local0)
375 Store (Local0, SX)
376 Or (Arg0, 0xF0, Local0)
377 Store (Local0, DBG1)
378 OSTP ()
379 Store (\_SB.PCI0.IDE0.ID20, SID0)
380 Store (\_SB.PCI0.IDE0.IDTS, SID1)
381 Store (\_SB.PCI0.IDE0.IDTP, SID2)
382 Store (\_SB.PCI0.IDE0.ID22, SID3)
383 Store (\_SB.PCI0.IDE0.UMSS, SID4)
384 Store (\_SB.PCI0.IDE0.UMSP, SID5)
385 If (LEqual (Arg0, 0x01)) {}
386 If (LEqual (Arg0, 0x03)) {}
387 If (LEqual (Arg0, 0x04)) {}
388 If (LEqual (Arg0, 0x05))
389 {
390 If (LNotEqual (OSFL, 0x00))
391 {
392 Sleep (0x01F4)
393 }
394 }
395 }
396
397 Method (\_WAK, 1, NotSerialized)
398 {
399 SALD (0x00)
400 Store (0xFF, DBG1)
401 Store (0x00, SFLG)
402 If (LEqual (RTCW, 0x00))
403 {
404 Notify (\_SB.PWRB, 0x02)
405 }
406
407 Notify (\_SB.PCI0.USB0, 0x00)
408 If (LGreaterEqual (OSFL, 0x01))
409 {
410 Store (0x00, \_SB.PCI0.SMB0.SMPM)
411 }
412 }
413
414 Scope (\_SI)
415 {
416 Method (_MSG, 1, NotSerialized)
417 {
418 Store ("==== MSG Working ====", Debug)
419 }
420
421 Method (_SST, 1, NotSerialized)
422 {
423 Store ("==== SST Working ====", Debug)
424 }
425 }
426
427 Scope (\_GPE)
428 {
429 Method (_L11, 0, NotSerialized)
430 {
431 Store (0x02, GS02)
432 }
433
434 Method (_L00, 0, NotSerialized)
435 {
436 Notify (\_SB.PCI0.HUB0, 0x02)
437 }
438
439 Method (_L03, 0, NotSerialized)
440 {
441 Notify (\_SB.PCI0.VT86.UAR1, 0x02)
442 }
443
444 Method (_L0B, 0, NotSerialized)
445 {
446 Notify (\_SB.PCI0.MMAC, 0x02)
447 }
448
449 Method (_L0D, 0, NotSerialized)
450 {
451 Notify (\_SB.PCI0.USB0, 0x02)
452 }
453
454 Method (_L05, 0, NotSerialized)
455 {
456 Notify (\_SB.PCI0.USB2, 0x02)
457 }
458
459 Method (_L10, 0, NotSerialized)
460 {
461 \_SB.PCI0.VT86.PS2W ()
462 }
463
464 Method (_L15, 0, NotSerialized)
465 {
466 Notify (\_SB.PCI0.AZAD, 0x02)
467 }
468 }
469
470 Scope (\_SB)
471 {
472 OperationRegion (\CTCR, SystemIO, 0x4010, 0x04)
473 Field (\CTCR, DWordAcc, NoLock, Preserve)
474 {
475 CTCR, 32
476 }
477
478 Method (SCTC, 1, NotSerialized)
479 {
480 If (LEqual (Arg0, 0x00))
481 {
482 And (CTCR, 0xFFFFFFEF, CTCR)
483 }
484 Else
485 {
486 Store (Arg0, Local0)
487 If (LLessEqual (Local0, 0x07))
488 {
489 If (LGreaterEqual (Local0, 0x01))
490 {
491 And (CTCR, 0xFFFFFFF1, CTCR)
492 Decrement (Local0)
493 Not (Local0, Local0)
494 And (Local0, 0x07, Local0)
495 Or (Local0, 0x08, Local0)
496 ShiftLeft (Local0, 0x01, Local0)
497 Or (CTCR, Local0, CTCR)
498 }
499 }
500 }
501 }
502
503 Device (PWRB)
504 {
505 Name (_HID, EisaId ("PNP0C0C"))
506 Method (_STA, 0, NotSerialized)
507 {
508 Return (0x0B)
509 }
510 }
511
512 Device (PCI0)
513 {
514 Name (_HID, EisaId ("PNP0A08"))
515 Name (_CID, 0x030AD041)
516 Name (_ADR, 0x00)
517 Name (_UID, 0x01)
518 Name (_BBN, 0x00)
519 Name (PCIA, 0x00)
520 Method (_REG, 2, NotSerialized)
521 {
522 If (LEqual (Arg0, 0x02))
523 {
524 Store (Arg1, PCIA)
525 }
526 }
527
528 Device (MBIO)
529 {
530 Name (_HID, EisaId ("PNP0C02"))
531 Name (_UID, 0x05)
532 Method (_CRS, 0, NotSerialized)
533 {
534 Name (BUF0, ResourceTemplate ()
535 {
536 IO (Decode16,
537 0x4000, // Range Minimum
538 0x4000, // Range Maximum
539 0x01, // Alignment
540 0x80, // Length
541 )
542 IO (Decode16,
543 0x4080, // Range Minimum
544 0x4080, // Range Maximum
545 0x01, // Alignment
546 0x80, // Length
547 )
548 IO (Decode16,
549 0x4400, // Range Minimum
550 0x4400, // Range Maximum
551 0x01, // Alignment
552 0x80, // Length
553 )
554 IO (Decode16,
555 0x4480, // Range Minimum
556 0x4480, // Range Maximum
557 0x01, // Alignment
558 0x80, // Length
559 )
560 IO (Decode16,
561 0x4800, // Range Minimum
562 0x4800, // Range Maximum
563 0x01, // Alignment
564 0x80, // Length
565 )
566 IO (Decode16,
567 0x4880, // Range Minimum
568 0x4880, // Range Maximum
569 0x01, // Alignment
570 0x80, // Length
571 )
572 Memory32Fixed (ReadWrite,
573 0x00000000, // Address Base
574 0x00000000, // Address Length
575 _Y00)
576 IO (Decode16,
577 0x2000, // Range Minimum
578 0x2000, // Range Maximum
579 0x01, // Alignment
580 0x80, // Length
581 )
582 IO (Decode16,
583 0x2080, // Range Minimum
584 0x2080, // Range Maximum
585 0x01, // Alignment
586 0x80, // Length
587 )
588 })
589 CreateDWordField (BUF0, \_SB.PCI0.MBIO._CRS._Y00._BAS, GUBA)
590 CreateDWordField (BUF0, \_SB.PCI0.MBIO._CRS._Y00._LEN, GUBL)
591 If (LNotEqual (IGUB, 0xFFFFFFFF))
592 {
593 If (IGUB)
594 {
595 Store (IGUB, Local0)
596 ShiftLeft (Local0, 0x07, Local0)
597 Store (Local0, GUBA)
598 Store (IGUL, GUBL)
599 }
600 }
601
602 Return (BUF0)
603 }
604 }
605
606 Name (NATA, Package (0x01)
607 {
608 0x000D0000
609 })
610 Method (_S3D, 0, NotSerialized)
611 {
612 If (LEqual (OSFL, 0x02))
613 {
614 Return (0x02)
615 }
616 Else
617 {
618 Return (0x03)
619 }
620 }
621
622 Method (_STA, 0, NotSerialized)
623 {
624 Return (0x0F)
625 }
626
627 OperationRegion (LDT3, PCI_Config, 0x6C, 0x04)
628 Field (LDT3, DWordAcc, NoLock, Preserve)
629 {
630 UCFG, 32
631 }
632
633 Method (_CRS, 0, NotSerialized)
634 {
635 Name (BUF0, ResourceTemplate ()
636 {
637 WordBusNumber (ResourceProducer, MinNotFixed, MaxNotFixed, PosDecode,
638 0x0000, // Granularity
639 0x0000, // Range Minimum
640 0x0000, // Range Maximum
641 0x0000, // Translation Offset
642 0x0000, // Length
643 ,, _Y01)
644 IO (Decode16,
645 0x0CF8, // Range Minimum
646 0x0CF8, // Range Maximum
647 0x01, // Alignment
648 0x08, // Length
649 )
650 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
651 0x0000, // Granularity
652 0x0000, // Range Minimum
653 0x03AF, // Range Maximum
654 0x0000, // Translation Offset
655 0x03B0, // Length
656 ,, , TypeStatic)
657 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
658 0x0000, // Granularity
659 0x03E0, // Range Minimum
660 0x0CF7, // Range Maximum
661 0x0000, // Translation Offset
662 0x0918, // Length
663 ,, , TypeStatic)
664 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
665 0x0000, // Granularity
666 0x4C00, // Range Minimum
667 0x4C7F, // Range Maximum
668 0x0000, // Translation Offset
669 0x0080, // Length
670 ,, , TypeStatic)
671 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
672 0x0000, // Granularity
673 0x0000, // Range Minimum
674 0x0000, // Range Maximum
675 0x0000, // Translation Offset
676 0x0000, // Length
677 ,, _Y02, TypeStatic)
678 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
679 0x0000, // Granularity
680 0x0000, // Range Minimum
681 0x0000, // Range Maximum
682 0x0000, // Translation Offset
683 0x0000, // Length
684 ,, _Y03, TypeStatic)
685 QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
686 0x0000000000000000, // Granularity
687 0x0000000000000000, // Range Minimum
688 0x0000000000000000, // Range Maximum
689 0x0000000000000000, // Translation Offset
690 0x0000000000000000, // Length
691 ,, _Y04, AddressRangeMemory, TypeStatic)
692 QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
693 0x0000000000000000, // Granularity
694 0x0000000000000000, // Range Minimum
695 0x0000000000000000, // Range Maximum
696 0x0000000000000000, // Translation Offset
697 0x0000000000000000, // Length
698 ,, _Y05, AddressRangeMemory, TypeStatic)
699 QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
700 0x0000000000000000, // Granularity
701 0x0000000000000000, // Range Minimum
702 0x0000000000000000, // Range Maximum
703 0x0000000000000000, // Translation Offset
704 0x0000000000000000, // Length
705 ,, _Y06, AddressRangeMemory, TypeStatic)
706 })
707 CreateWordField (BUF0, \_SB.PCI0._CRS._Y01._MIN, B1MN)
708 CreateWordField (BUF0, \_SB.PCI0._CRS._Y01._MAX, B1MX)
709 CreateWordField (BUF0, \_SB.PCI0._CRS._Y01._LEN, B1LN)
710 And (\_SB.PCI0.K801.L0EN, 0x03, Local0)
711 If (LEqual (Local0, 0x03))
712 {
713 And (\_SB.PCI0.K801.DL00, 0x03, Local0)
714 If (LEqual (Local0, 0x00))
715 {
716 Store (\_SB.PCI0.K801.BNB0, B1MN)
717 Store (\_SB.PCI0.K801.BNL0, B1MX)
718 Subtract (B1MX, B1MN, Local1)
719 Add (0x01, Local1, B1LN)
720 }
721 }
722
723 And (\_SB.PCI0.K801.L1EN, 0x03, Local0)
724 If (LEqual (Local0, 0x03))
725 {
726 And (\_SB.PCI0.K801.DL01, 0x03, Local0)
727 If (LEqual (Local0, 0x00))
728 {
729 Store (\_SB.PCI0.K801.BNB1, B1MN)
730 Store (\_SB.PCI0.K801.BNL1, B1MX)
731 Subtract (B1MX, B1MN, Local1)
732 Add (0x01, Local1, B1LN)
733 }
734 }
735
736 And (\_SB.PCI0.K801.L2EN, 0x03, Local0)
737 If (LEqual (Local0, 0x03))
738 {
739 And (\_SB.PCI0.K801.DL02, 0x03, Local0)
740 If (LEqual (Local0, 0x00))
741 {
742 Store (\_SB.PCI0.K801.BNB2, B1MN)
743 Store (\_SB.PCI0.K801.BNL2, B1MX)
744 Subtract (B1MX, B1MN, Local1)
745 Add (0x01, Local1, B1LN)
746 }
747 }
748
749 And (\_SB.PCI0.K801.L3EN, 0x03, Local0)
750 If (LEqual (Local0, 0x03))
751 {
752 And (\_SB.PCI0.K801.DL03, 0x03, Local0)
753 If (LEqual (Local0, 0x00))
754 {
755 Store (\_SB.PCI0.K801.BNB3, B1MN)
756 Store (\_SB.PCI0.K801.BNL3, B1MX)
757 Subtract (B1MX, B1MN, Local1)
758 Add (0x01, Local1, B1LN)
759 }
760 }
761
762 CreateWordField (BUF0, \_SB.PCI0._CRS._Y02._MIN, IOMN)
763 CreateWordField (BUF0, \_SB.PCI0._CRS._Y02._MAX, IOMX)
764 CreateWordField (BUF0, \_SB.PCI0._CRS._Y02._LEN, IOLN)
765 CreateWordField (BUF0, \_SB.PCI0._CRS._Y03._MIN, VIMN)
766 CreateWordField (BUF0, \_SB.PCI0._CRS._Y03._MAX, VIMX)
767 CreateWordField (BUF0, \_SB.PCI0._CRS._Y03._LEN, VILN)
768 And (\_SB.PCI0.K801.IB00, 0x03, Local0)
769 And (\_SB.PCI0.K801.IL00, 0x30, Local1)
770 ShiftRight (Local1, 0x04, Local1)
771 If (LEqual (Local0, 0x03))
772 {
773 If (LEqual (Local1, 0x00))
774 {
775 And (\_SB.PCI0.K801.IB00, 0x10, Local1)
776 ShiftLeft (\_SB.PCI0.K801.IBV0, 0x0C, IOMN)
777 ShiftLeft (\_SB.PCI0.K801.ILV0, 0x0C, IOMX)
778 Or (IOMX, 0x0FFF, IOMX)
779 Subtract (IOMX, IOMN, IOLN)
780 Increment (IOLN)
781 If (LEqual (Local1, 0x10))
782 {
783 Store (0x03B0, VIMN)
784 Store (0x03DF, VIMX)
785 Store (0x30, VILN)
786 }
787 }
788 }
789
790 And (\_SB.PCI0.K801.IB01, 0x03, Local0)
791 And (\_SB.PCI0.K801.IL01, 0x30, Local1)
792 ShiftRight (Local1, 0x04, Local1)
793 If (LEqual (Local0, 0x03))
794 {
795 If (LEqual (Local1, 0x00))
796 {
797 And (\_SB.PCI0.K801.IB01, 0x10, Local1)
798 ShiftLeft (\_SB.PCI0.K801.IBV1, 0x0C, IOMN)
799 ShiftLeft (\_SB.PCI0.K801.ILV1, 0x0C, IOMX)
800 Or (IOMX, 0x0FFF, IOMX)
801 Subtract (IOMX, IOMN, IOLN)
802 Increment (IOLN)
803 If (LEqual (Local1, 0x10))
804 {
805 Store (0x03B0, VIMN)
806 Store (0x03DF, VIMX)
807 Store (0x30, VILN)
808 }
809 }
810 }
811
812 And (\_SB.PCI0.K801.IB02, 0x03, Local0)
813 And (\_SB.PCI0.K801.IL02, 0x30, Local1)
814 ShiftRight (Local1, 0x04, Local1)
815 If (LEqual (Local0, 0x03))
816 {
817 If (LEqual (Local1, 0x00))
818 {
819 And (\_SB.PCI0.K801.IB02, 0x10, Local1)
820 ShiftLeft (\_SB.PCI0.K801.IBV2, 0x0C, IOMN)
821 ShiftLeft (\_SB.PCI0.K801.ILV2, 0x0C, IOMX)
822 Or (IOMX, 0x0FFF, IOMX)
823 Subtract (IOMX, IOMN, IOLN)
824 Increment (IOLN)
825 If (LEqual (Local1, 0x10))
826 {
827 Store (0x03B0, VIMN)
828 Store (0x03DF, VIMX)
829 Store (0x30, VILN)
830 }
831 }
832 }
833
834 And (\_SB.PCI0.K801.IB03, 0x03, Local0)
835 And (\_SB.PCI0.K801.IL03, 0x30, Local1)
836 ShiftRight (Local1, 0x04, Local1)
837 If (LEqual (Local0, 0x03))
838 {
839 If (LEqual (Local1, 0x00))
840 {
841 And (\_SB.PCI0.K801.IB03, 0x10, Local1)
842 ShiftLeft (\_SB.PCI0.K801.IBV3, 0x0C, IOMN)
843 ShiftLeft (\_SB.PCI0.K801.ILV3, 0x0C, IOMX)
844 Or (IOMX, 0x0FFF, IOMX)
845 Subtract (IOMX, IOMN, IOLN)
846 Increment (IOLN)
847 If (LEqual (Local1, 0x10))
848 {
849 Store (0x03B0, VIMN)
850 Store (0x03DF, VIMX)
851 Store (0x30, VILN)
852 }
853 }
854 }
855
856 CreateDWordField (BUF0, \_SB.PCI0._CRS._Y04._MIN, M0MN)
857 CreateDWordField (BUF0, \_SB.PCI0._CRS._Y04._MAX, M0MX)
858 CreateDWordField (BUF0, \_SB.PCI0._CRS._Y04._LEN, M0LN)
859 CreateDWordField (BUF0, \_SB.PCI0._CRS._Y05._MIN, M1MN)
860 CreateDWordField (BUF0, \_SB.PCI0._CRS._Y05._MAX, M1MX)
861 CreateDWordField (BUF0, \_SB.PCI0._CRS._Y05._LEN, M1LN)
862 CreateDWordField (BUF0, \_SB.PCI0._CRS._Y06._MIN, M2MN)
863 CreateDWordField (BUF0, \_SB.PCI0._CRS._Y06._MAX, M2MX)
864 CreateDWordField (BUF0, \_SB.PCI0._CRS._Y06._LEN, M2LN)
865 And (\_SB.PCI0.K801.MB00, 0x03, Local0)
866 And (\_SB.PCI0.K801.ML00, 0x30, Local1)
867 ShiftRight (Local1, 0x04, Local1)
868 If (LEqual (Local0, 0x03))
869 {
870 And (\_SB.PCI0.K801.ML00, 0x80, Local0)
871 If (LEqual (Local0, 0x00))
872 {
873 If (LEqual (Local1, 0x00))
874 {
875 If (LEqual (M0LN, 0x00))
876 {
877 ShiftLeft (\_SB.PCI0.K801.MBV0, 0x10, M0MN)
878 ShiftLeft (\_SB.PCI0.K801.MLV0, 0x10, M0MX)
879 Or (M0MX, 0xFFFF, M0MX)
880 Subtract (M0MX, M0MN, M0LN)
881 Increment (M0LN)
882 }
883 Else
884 {
885 If (LEqual (M1LN, 0x00))
886 {
887 ShiftLeft (\_SB.PCI0.K801.MBV0, 0x10, M1MN)
888 ShiftLeft (\_SB.PCI0.K801.MLV0, 0x10, M1MX)
889 Or (M1MX, 0xFFFF, M1MX)
890 Subtract (M1MX, M1MN, M1LN)
891 Increment (M1LN)
892 }
893 Else
894 {
895 ShiftLeft (\_SB.PCI0.K801.MBV0, 0x10, M2MN)
896 ShiftLeft (\_SB.PCI0.K801.MLV0, 0x10, M2MX)
897 Or (M2MX, 0xFFFF, M2MX)
898 Subtract (M2MX, M2MN, M2LN)
899 Increment (M2LN)
900 }
901 }
902 }
903 }
904 }
905
906 And (\_SB.PCI0.K801.MB01, 0x03, Local0)
907 And (\_SB.PCI0.K801.ML01, 0x30, Local1)
908 ShiftRight (Local1, 0x04, Local1)
909 If (LEqual (Local0, 0x03))
910 {
911 And (\_SB.PCI0.K801.ML01, 0x80, Local0)
912 If (LEqual (Local0, 0x00))
913 {
914 If (LEqual (Local1, 0x00))
915 {
916 If (LEqual (M0LN, 0x00))
917 {
918 ShiftLeft (\_SB.PCI0.K801.MBV1, 0x10, M0MN)
919 ShiftLeft (\_SB.PCI0.K801.MLV1, 0x10, M0MX)
920 Or (M0MX, 0xFFFF, M0MX)
921 Subtract (M0MX, M0MN, M0LN)
922 Increment (M0LN)
923 }
924 Else
925 {
926 If (LEqual (M1LN, 0x00))
927 {
928 ShiftLeft (\_SB.PCI0.K801.MBV1, 0x10, M1MN)
929 ShiftLeft (\_SB.PCI0.K801.MLV1, 0x10, M1MX)
930 Or (M1MX, 0xFFFF, M1MX)
931 Subtract (M1MX, M1MN, M1LN)
932 Increment (M1LN)
933 }
934 Else
935 {
936 ShiftLeft (\_SB.PCI0.K801.MBV1, 0x10, M2MN)
937 ShiftLeft (\_SB.PCI0.K801.MLV1, 0x10, M2MX)
938 Or (M2MX, 0xFFFF, M2MX)
939 Subtract (M2MX, M2MN, M2LN)
940 Increment (M2LN)
941 }
942 }
943 }
944 }
945 }
946
947 And (\_SB.PCI0.K801.MB02, 0x03, Local0)
948 And (\_SB.PCI0.K801.ML02, 0x30, Local1)
949 ShiftRight (Local1, 0x04, Local1)
950 If (LEqual (Local0, 0x03))
951 {
952 And (\_SB.PCI0.K801.ML02, 0x80, Local0)
953 If (LEqual (Local0, 0x00))
954 {
955 If (LEqual (Local1, 0x00))
956 {
957 If (LEqual (M0LN, 0x00))
958 {
959 ShiftLeft (\_SB.PCI0.K801.MBV2, 0x10, M0MN)
960 ShiftLeft (\_SB.PCI0.K801.MLV2, 0x10, M0MX)
961 Or (M0MX, 0xFFFF, M0MX)
962 Subtract (M0MX, M0MN, M0LN)
963 Increment (M0LN)
964 }
965 Else
966 {
967 If (LEqual (M1LN, 0x00))
968 {
969 ShiftLeft (\_SB.PCI0.K801.MBV2, 0x10, M1MN)
970 ShiftLeft (\_SB.PCI0.K801.MLV2, 0x10, M1MX)
971 Or (M1MX, 0xFFFF, M1MX)
972 Subtract (M1MX, M1MN, M1LN)
973 Increment (M1LN)
974 }
975 Else
976 {
977 ShiftLeft (\_SB.PCI0.K801.MBV2, 0x10, M2MN)
978 ShiftLeft (\_SB.PCI0.K801.MLV2, 0x10, M2MX)
979 Or (M2MX, 0xFFFF, M2MX)
980 Subtract (M2MX, M2MN, M2LN)
981 Increment (M2LN)
982 }
983 }
984 }
985 }
986 }
987
988 And (\_SB.PCI0.K801.MB03, 0x03, Local0)
989 And (\_SB.PCI0.K801.ML03, 0x30, Local1)
990 ShiftRight (Local1, 0x04, Local1)
991 If (LEqual (Local0, 0x03))
992 {
993 And (\_SB.PCI0.K801.ML03, 0x80, Local0)
994 If (LEqual (Local0, 0x00))
995 {
996 If (LEqual (Local1, 0x00))
997 {
998 If (LEqual (M0LN, 0x00))
999 {
1000 ShiftLeft (\_SB.PCI0.K801.MBV3, 0x10, M0MN)
1001 ShiftLeft (\_SB.PCI0.K801.MLV3, 0x10, M0MX)
1002 Or (M0MX, 0xFFFF, M0MX)
1003 Subtract (M0MX, M0MN, M0LN)
1004 Increment (M0LN)
1005 }
1006 Else
1007 {
1008 If (LEqual (M1LN, 0x00))
1009 {
1010 ShiftLeft (\_SB.PCI0.K801.MBV3, 0x10, M1MN)
1011 ShiftLeft (\_SB.PCI0.K801.MLV3, 0x10, M1MX)
1012 Or (M1MX, 0xFFFF, M1MX)
1013 Subtract (M1MX, M1MN, M1LN)
1014 Increment (M1LN)
1015 }
1016 Else
1017 {
1018 ShiftLeft (\_SB.PCI0.K801.MBV3, 0x10, M2MN)
1019 ShiftLeft (\_SB.PCI0.K801.MLV3, 0x10, M2MX)
1020 Or (M2MX, 0xFFFF, M2MX)
1021 Subtract (M2MX, M2MN, M2LN)
1022 Increment (M2LN)
1023 }
1024 }
1025 }
1026 }
1027 }
1028
1029 And (\_SB.PCI0.K801.MB04, 0x03, Local0)
1030 And (\_SB.PCI0.K801.ML04, 0x30, Local1)
1031 ShiftRight (Local1, 0x04, Local1)
1032 If (LEqual (Local0, 0x03))
1033 {
1034 And (\_SB.PCI0.K801.ML04, 0x80, Local0)
1035 If (LEqual (Local0, 0x00))
1036 {
1037 If (LEqual (Local1, 0x00))
1038 {
1039 If (LEqual (M0LN, 0x00))
1040 {
1041 ShiftLeft (\_SB.PCI0.K801.MBV4, 0x10, M0MN)
1042 ShiftLeft (\_SB.PCI0.K801.MLV4, 0x10, M0MX)
1043 Or (M0MX, 0xFFFF, M0MX)
1044 Subtract (M0MX, M0MN, M0LN)
1045 Increment (M0LN)
1046 }
1047 Else
1048 {
1049 If (LEqual (M1LN, 0x00))
1050 {
1051 ShiftLeft (\_SB.PCI0.K801.MBV4, 0x10, M1MN)
1052 ShiftLeft (\_SB.PCI0.K801.MLV4, 0x10, M1MX)
1053 Or (M1MX, 0xFFFF, M1MX)
1054 Subtract (M1MX, M1MN, M1LN)
1055 Increment (M1LN)
1056 }
1057 Else
1058 {
1059 ShiftLeft (\_SB.PCI0.K801.MBV4, 0x10, M2MN)
1060 ShiftLeft (\_SB.PCI0.K801.MLV4, 0x10, M2MX)
1061 Or (M2MX, 0xFFFF, M2MX)
1062 Subtract (M2MX, M2MN, M2LN)
1063 Increment (M2LN)
1064 }
1065 }
1066 }
1067 }
1068 }
1069
1070 And (\_SB.PCI0.K801.MB05, 0x03, Local0)
1071 And (\_SB.PCI0.K801.ML05, 0x30, Local1)
1072 ShiftRight (Local1, 0x04, Local1)
1073 If (LEqual (Local0, 0x03))
1074 {
1075 And (\_SB.PCI0.K801.ML05, 0x80, Local0)
1076 If (LEqual (Local0, 0x00))
1077 {
1078 If (LEqual (Local1, 0x00))
1079 {
1080 If (LEqual (M0LN, 0x00))
1081 {
1082 ShiftLeft (\_SB.PCI0.K801.MBV5, 0x10, M0MN)
1083 ShiftLeft (\_SB.PCI0.K801.MLV5, 0x10, M0MX)
1084 Or (M0MX, 0xFFFF, M0MX)
1085 Subtract (M0MX, M0MN, M0LN)
1086 Increment (M0LN)
1087 }
1088 Else
1089 {
1090 If (LEqual (M1LN, 0x00))
1091 {
1092 ShiftLeft (\_SB.PCI0.K801.MBV5, 0x10, M1MN)
1093 ShiftLeft (\_SB.PCI0.K801.MLV5, 0x10, M1MX)
1094 Or (M1MX, 0xFFFF, M1MX)
1095 Subtract (M1MX, M1MN, M1LN)
1096 Increment (M1LN)
1097 }
1098 Else
1099 {
1100 ShiftLeft (\_SB.PCI0.K801.MBV5, 0x10, M2MN)
1101 ShiftLeft (\_SB.PCI0.K801.MLV5, 0x10, M2MX)
1102 Or (M2MX, 0xFFFF, M2MX)
1103 Subtract (M2MX, M2MN, M2LN)
1104 Increment (M2LN)
1105 }
1106 }
1107 }
1108 }
1109 }
1110
1111 And (\_SB.PCI0.K801.MB06, 0x03, Local0)
1112 And (\_SB.PCI0.K801.ML06, 0x30, Local1)
1113 ShiftRight (Local1, 0x04, Local1)
1114 If (LEqual (Local0, 0x03))
1115 {
1116 And (\_SB.PCI0.K801.ML06, 0x80, Local0)
1117 If (LEqual (Local0, 0x00))
1118 {
1119 If (LEqual (Local1, 0x00))
1120 {
1121 If (LEqual (M0LN, 0x00))
1122 {
1123 ShiftLeft (\_SB.PCI0.K801.MBV6, 0x10, M0MN)
1124 ShiftLeft (\_SB.PCI0.K801.MLV6, 0x10, M0MX)
1125 Or (M0MX, 0xFFFF, M0MX)
1126 Subtract (M0MX, M0MN, M0LN)
1127 Increment (M0LN)
1128 }
1129 Else
1130 {
1131 If (LEqual (M1LN, 0x00))
1132 {
1133 ShiftLeft (\_SB.PCI0.K801.MBV6, 0x10, M1MN)
1134 ShiftLeft (\_SB.PCI0.K801.MLV6, 0x10, M1MX)
1135 Or (M1MX, 0xFFFF, M1MX)
1136 Subtract (M1MX, M1MN, M1LN)
1137 Increment (M1LN)
1138 }
1139 Else
1140 {
1141 ShiftLeft (\_SB.PCI0.K801.MBV6, 0x10, M2MN)
1142 ShiftLeft (\_SB.PCI0.K801.MLV6, 0x10, M2MX)
1143 Or (M2MX, 0xFFFF, M2MX)
1144 Subtract (M2MX, M2MN, M2LN)
1145 Increment (M2LN)
1146 }
1147 }
1148 }
1149 }
1150 }
1151
1152 And (\_SB.PCI0.K801.MB07, 0x03, Local0)
1153 And (\_SB.PCI0.K801.ML07, 0x30, Local1)
1154 ShiftRight (Local1, 0x04, Local1)
1155 If (LEqual (Local0, 0x03))
1156 {
1157 And (\_SB.PCI0.K801.ML07, 0x80, Local0)
1158 If (LEqual (Local0, 0x00))
1159 {
1160 If (LEqual (Local1, 0x00))
1161 {
1162 If (LEqual (M0LN, 0x00))
1163 {
1164 ShiftLeft (\_SB.PCI0.K801.MBV7, 0x10, M0MN)
1165 ShiftLeft (\_SB.PCI0.K801.MLV7, 0x10, M0MX)
1166 Or (M0MX, 0xFFFF, M0MX)
1167 Subtract (M0MX, M0MN, M0LN)
1168 Increment (M0LN)
1169 }
1170 Else
1171 {
1172 If (LEqual (M1LN, 0x00))
1173 {
1174 ShiftLeft (\_SB.PCI0.K801.MBV7, 0x10, M1MN)
1175 ShiftLeft (\_SB.PCI0.K801.MLV7, 0x10, M1MX)
1176 Or (M1MX, 0xFFFF, M1MX)
1177 Subtract (M1MX, M1MN, M1LN)
1178 Increment (M1LN)
1179 }
1180 Else
1181 {
1182 ShiftLeft (\_SB.PCI0.K801.MBV7, 0x10, M2MN)
1183 ShiftLeft (\_SB.PCI0.K801.MLV7, 0x10, M2MX)
1184 Or (M2MX, 0xFFFF, M2MX)
1185 Subtract (M2MX, M2MN, M2LN)
1186 Increment (M2LN)
1187 }
1188 }
1189 }
1190 }
1191 }
1192
1193 Return (BUF0)
1194 }
1195
1196 Name (PICM, Package (0x10)
1197 {
1198 Package (0x04)
1199 {
1200 0x000AFFFF,
1201 0x00,
1202 \_SB.PCI0.LSMB,
1203 0x00
1204 },
1205
1206 Package (0x04)
1207 {
1208 0x000AFFFF,
1209 0x01,
1210 \_SB.PCI0.LPMU,
1211 0x00
1212 },
1213
1214 Package (0x04)
1215 {
1216 0x000BFFFF,
1217 0x00,
1218 \_SB.PCI0.LUBA,
1219 0x00
1220 },
1221
1222 Package (0x04)
1223 {
1224 0x000BFFFF,
1225 0x01,
1226 \_SB.PCI0.LUB2,
1227 0x00
1228 },
1229
1230 Package (0x04)
1231 {
1232 0x0014FFFF,
1233 0x00,
1234 \_SB.PCI0.LMAC,
1235 0x00
1236 },
1237
1238 Package (0x04)
1239 {
1240 0x0010FFFF,
1241 0x00,
1242 \_SB.PCI0.LACI,
1243 0x00
1244 },
1245
1246 Package (0x04)
1247 {
1248 0x0010FFFF,
1249 0x01,
1250 \_SB.PCI0.LAZA,
1251 0x00
1252 },
1253
1254 Package (0x04)
1255 {
1256 0x0010FFFF,
1257 0x02,
1258 \_SB.PCI0.LACI,
1259 0x00
1260 },
1261
1262 Package (0x04)
1263 {
1264 0x0010FFFF,
1265 0x03,
1266 \_SB.PCI0.LMCI,
1267 0x00
1268 },
1269
1270 Package (0x04)
1271 {
1272 0x000DFFFF,
1273 0x00,
1274 \_SB.PCI0.LIDE,
1275 0x00
1276 },
1277
1278 Package (0x04)
1279 {
1280 0x000EFFFF,
1281 0x00,
1282 \_SB.PCI0.LSID,
1283 0x00
1284 },
1285
1286 Package (0x04)
1287 {
1288 0x000FFFFF,
1289 0x00,
1290 \_SB.PCI0.LFID,
1291 0x00
1292 },
1293
1294 Package (0x04)
1295 {
1296 0x0005FFFF,
1297 0x00,
1298 \_SB.PCI0.LNK7,
1299 0x00
1300 },
1301
1302 Package (0x04)
1303 {
1304 0x0005FFFF,
1305 0x01,
1306 \_SB.PCI0.LNK8,
1307 0x00
1308 },
1309
1310 Package (0x04)
1311 {
1312 0x0005FFFF,
1313 0x02,
1314 \_SB.PCI0.LNK5,
1315 0x00
1316 },
1317
1318 Package (0x04)
1319 {
1320 0x0005FFFF,
1321 0x03,
1322 \_SB.PCI0.LNK6,
1323 0x00
1324 }
1325 })
1326 Name (APIC, Package (0x10)
1327 {
1328 Package (0x04)
1329 {
1330 0x000AFFFF,
1331 0x00,
1332 \_SB.PCI0.APCS,
1333 0x00
1334 },
1335
1336 Package (0x04)
1337 {
1338 0x000AFFFF,
1339 0x01,
1340 \_SB.PCI0.APMU,
1341 0x00
1342 },
1343
1344 Package (0x04)
1345 {
1346 0x000BFFFF,
1347 0x00,
1348 \_SB.PCI0.APCF,
1349 0x00
1350 },
1351
1352 Package (0x04)
1353 {
1354 0x000BFFFF,
1355 0x01,
1356 \_SB.PCI0.APCL,
1357 0x00
1358 },
1359
1360 Package (0x04)
1361 {
1362 0x0014FFFF,
1363 0x00,
1364 \_SB.PCI0.APCH,
1365 0x00
1366 },
1367
1368 Package (0x04)
1369 {
1370 0x0010FFFF,
1371 0x00,
1372 \_SB.PCI0.APCJ,
1373 0x00
1374 },
1375
1376 Package (0x04)
1377 {
1378 0x0010FFFF,
1379 0x01,
1380 \_SB.PCI0.AAZA,
1381 0x00
1382 },
1383
1384 Package (0x04)
1385 {
1386 0x0010FFFF,
1387 0x02,
1388 \_SB.PCI0.APCJ,
1389 0x00
1390 },
1391
1392 Package (0x04)
1393 {
1394 0x0010FFFF,
1395 0x03,
1396 \_SB.PCI0.APCK,
1397 0x00
1398 },
1399
1400 Package (0x04)
1401 {
1402 0x000DFFFF,
1403 0x00,
1404 \_SB.PCI0.APCZ,
1405 0x00
1406 },
1407
1408 Package (0x04)
1409 {
1410 0x000EFFFF,
1411 0x00,
1412 \_SB.PCI0.APSI,
1413 0x00
1414 },
1415
1416 Package (0x04)
1417 {
1418 0x000FFFFF,
1419 0x00,
1420 \_SB.PCI0.APSJ,
1421 0x00
1422 },
1423
1424 Package (0x04)
1425 {
1426 0x0005FFFF,
1427 0x00,
1428 \_SB.PCI0.APC7,
1429 0x00
1430 },
1431
1432 Package (0x04)
1433 {
1434 0x0005FFFF,
1435 0x01,
1436 \_SB.PCI0.APC8,
1437 0x00
1438 },
1439
1440 Package (0x04)
1441 {
1442 0x0005FFFF,
1443 0x02,
1444 \_SB.PCI0.APC5,
1445 0x00
1446 },
1447
1448 Package (0x04)
1449 {
1450 0x0005FFFF,
1451 0x03,
1452 \_SB.PCI0.APC6,
1453 0x00
1454 }
1455 })
1456 Method (_PRT, 0, NotSerialized)
1457 {
1458 If (LNot (PICF))
1459 {
1460 Return (PICM)
1461 }
1462 Else
1463 {
1464 Return (APIC)
1465 }
1466 }
1467
1468 Device (HUB0)
1469 {
1470 Name (_ADR, 0x00100000)
1471 Method (_STA, 0, NotSerialized)
1472 {
1473 Return (0x0F)
1474 }
1475
1476 Name (PICM, Package (0x0C)
1477 {
1478 Package (0x04)
1479 {
1480 0x0009FFFF,
1481 0x00,
1482 \_SB.PCI0.LNK1,
1483 0x00
1484 },
1485
1486 Package (0x04)
1487 {
1488 0x0009FFFF,
1489 0x01,
1490 \_SB.PCI0.LNK2,
1491 0x00
1492 },
1493
1494 Package (0x04)
1495 {
1496 0x0009FFFF,
1497 0x02,
1498 \_SB.PCI0.LNK3,
1499 0x00
1500 },
1501
1502 Package (0x04)
1503 {
1504 0x0009FFFF,
1505 0x03,
1506 \_SB.PCI0.LNK4,
1507 0x00
1508 },
1509
1510 Package (0x04)
1511 {
1512 0x000EFFFF,
1513 0x00,
1514 \_SB.PCI0.LNK2,
1515 0x00
1516 },
1517
1518 Package (0x04)
1519 {
1520 0x000EFFFF,
1521 0x01,
1522 \_SB.PCI0.LNK1,
1523 0x00
1524 },
1525
1526 Package (0x04)
1527 {
1528 0x000EFFFF,
1529 0x02,
1530 \_SB.PCI0.LNK4,
1531 0x00
1532 },
1533
1534 Package (0x04)
1535 {
1536 0x000EFFFF,
1537 0x03,
1538 \_SB.PCI0.LNK3,
1539 0x00
1540 },
1541
1542 Package (0x04)
1543 {
1544 0x0003FFFF,
1545 0x00,
1546 \_SB.PCI0.LNK4,
1547 0x00
1548 },
1549
1550 Package (0x04)
1551 {
1552 0x0003FFFF,
1553 0x01,
1554 \_SB.PCI0.LNK4,
1555 0x00
1556 },
1557
1558 Package (0x04)
1559 {
1560 0x0003FFFF,
1561 0x02,
1562 \_SB.PCI0.LNK4,
1563 0x00
1564 },
1565
1566 Package (0x04)
1567 {
1568 0x0003FFFF,
1569 0x03,
1570 \_SB.PCI0.LNK4,
1571 0x00
1572 }
1573 })
1574 Name (APIC, Package (0x0C)
1575 {
1576 Package (0x04)
1577 {
1578 0x0009FFFF,
1579 0x00,
1580 \_SB.PCI0.APC1,
1581 0x00
1582 },
1583
1584 Package (0x04)
1585 {
1586 0x0009FFFF,
1587 0x01,
1588 \_SB.PCI0.APC2,
1589 0x00
1590 },
1591
1592 Package (0x04)
1593 {
1594 0x0009FFFF,
1595 0x02,
1596 \_SB.PCI0.APC3,
1597 0x00
1598 },
1599
1600 Package (0x04)
1601 {
1602 0x0009FFFF,
1603 0x03,
1604 \_SB.PCI0.APC4,
1605 0x00
1606 },
1607
1608 Package (0x04)
1609 {
1610 0x000EFFFF,
1611 0x00,
1612 \_SB.PCI0.APC2,
1613 0x00
1614 },
1615
1616 Package (0x04)
1617 {
1618 0x000EFFFF,
1619 0x01,
1620 \_SB.PCI0.APC1,
1621 0x00
1622 },
1623
1624 Package (0x04)
1625 {
1626 0x000EFFFF,
1627 0x02,
1628 \_SB.PCI0.APC4,
1629 0x00
1630 },
1631
1632 Package (0x04)
1633 {
1634 0x000EFFFF,
1635 0x03,
1636 \_SB.PCI0.APC3,
1637 0x00
1638 },
1639
1640 Package (0x04)
1641 {
1642 0x0003FFFF,
1643 0x00,
1644 \_SB.PCI0.APC4,
1645 0x00
1646 },
1647
1648 Package (0x04)
1649 {
1650 0x0003FFFF,
1651 0x01,
1652 \_SB.PCI0.APC4,
1653 0x00
1654 },
1655
1656 Package (0x04)
1657 {
1658 0x0003FFFF,
1659 0x02,
1660 \_SB.PCI0.APC4,
1661 0x00
1662 },
1663
1664 Package (0x04)
1665 {
1666 0x0003FFFF,
1667 0x03,
1668 \_SB.PCI0.APC4,
1669 0x00
1670 }
1671 })
1672 Method (_PRT, 0, NotSerialized)
1673 {
1674 If (LNot (PICF))
1675 {
1676 Return (PICM)
1677 }
1678 Else
1679 {
1680 Return (APIC)
1681 }
1682 }
1683
1684 Name (_PRW, Package (0x02)
1685 {
1686 0x00,
1687 0x05
1688 })
1689 }
1690
1691 Device (SAT1)
1692 {
1693 Name (_ADR, 0x000E0000)
1694 Device (PRI0)
1695 {
1696 Name (_ADR, 0x00)
1697 Name (PCS0, 0x00)
1698 Name (PSS0, 0x00)
1699 Name (SPTM, Buffer (0x14)
1700 {
1701 /* 0000 */ 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
1702 /* 0008 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1703 /* 0010 */ 0x13, 0x00, 0x00, 0x00
1704 })
1705 Method (_GTM, 0, NotSerialized)
1706 {
1707 Return (SPTM)
1708 }
1709
1710 Method (_STM, 3, NotSerialized)
1711 {
1712 Store (Arg0, SPTM)
1713 CreateWordField (Arg1, 0xA4, ICM0)
1714 CreateWordField (Arg1, 0x0100, ISE0)
1715 Store (ICM0, PCS0)
1716 Store (ISE0, PSS0)
1717 }
1718
1719 Device (MAST)
1720 {
1721 Name (_ADR, 0x00)
1722 Method (_GTF, 0, NotSerialized)
1723 {
1724 Store (0xB1, SMIP)
1725 Store (Buffer (0x07)
1726 {
1727 /* 0000 */ 0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF
1728 }, Local0)
1729 If (LAnd (PCS0, 0x02))
1730 {
1731 If (LAnd (PSS0, 0x01))
1732 {
1733 Store (Buffer (0x07)
1734 {
1735 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5
1736 }, Local1)
1737 Concatenate (Local0, Local1, Local0)
1738 }
1739 }
1740
1741 Return (Local0)
1742 }
1743 }
1744 }
1745
1746 Device (SEC0)
1747 {
1748 Name (_ADR, 0x01)
1749 Name (PCS1, 0x00)
1750 Name (PSS1, 0x00)
1751 Name (SSTM, Buffer (0x14)
1752 {
1753 /* 0000 */ 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
1754 /* 0008 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1755 /* 0010 */ 0x13, 0x00, 0x00, 0x00
1756 })
1757 Method (_GTM, 0, NotSerialized)
1758 {
1759 Return (SSTM)
1760 }
1761
1762 Method (_STM, 3, NotSerialized)
1763 {
1764 Store (Arg0, SSTM)
1765 CreateWordField (Arg1, 0xA4, ICM1)
1766 CreateWordField (Arg1, 0x0100, ISE1)
1767 Store (ICM1, PCS1)
1768 Store (ISE1, PSS1)
1769 }
1770
1771 Device (MAST)
1772 {
1773 Name (_ADR, 0x00)
1774 Method (_GTF, 0, NotSerialized)
1775 {
1776 Store (0xB1, SMIP)
1777 Store (Buffer (0x07)
1778 {
1779 /* 0000 */ 0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF
1780 }, Local0)
1781 If (LAnd (PCS1, 0x02))
1782 {
1783 If (LAnd (PSS1, 0x01))
1784 {
1785 Store (Buffer (0x07)
1786 {
1787 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5
1788 }, Local1)
1789 Concatenate (Local0, Local1, Local0)
1790 }
1791 }
1792
1793 Return (Local0)
1794 }
1795 }
1796 }
1797 }
1798
1799 Device (SAT2)
1800 {
1801 Name (_ADR, 0x000F0000)
1802 Device (PRI0)
1803 {
1804 Name (_ADR, 0x00)
1805 Name (PCS0, 0x00)
1806 Name (PSS0, 0x00)
1807 Name (SPTM, Buffer (0x14)
1808 {
1809 /* 0000 */ 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
1810 /* 0008 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1811 /* 0010 */ 0x13, 0x00, 0x00, 0x00
1812 })
1813 Method (_GTM, 0, NotSerialized)
1814 {
1815 Return (SPTM)
1816 }
1817
1818 Method (_STM, 3, NotSerialized)
1819 {
1820 Store (Arg0, SPTM)
1821 CreateWordField (Arg1, 0xA4, ICM0)
1822 CreateWordField (Arg1, 0x0100, ISE0)
1823 Store (ICM0, PCS0)
1824 Store (ISE0, PSS0)
1825 }
1826
1827 Device (MAST)
1828 {
1829 Name (_ADR, 0x00)
1830 Method (_GTF, 0, NotSerialized)
1831 {
1832 Store (0xB1, SMIP)
1833 Store (Buffer (0x07)
1834 {
1835 /* 0000 */ 0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF
1836 }, Local0)
1837 If (LAnd (PCS0, 0x02))
1838 {
1839 If (LAnd (PSS0, 0x01))
1840 {
1841 Store (Buffer (0x07)
1842 {
1843 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5
1844 }, Local1)
1845 Concatenate (Local0, Local1, Local0)
1846 }
1847 }
1848
1849 Return (Local0)
1850 }
1851 }
1852 }
1853
1854 Device (SEC0)
1855 {
1856 Name (_ADR, 0x01)
1857 Name (PCS1, 0x00)
1858 Name (PSS1, 0x00)
1859 Name (SSTM, Buffer (0x14)
1860 {
1861 /* 0000 */ 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
1862 /* 0008 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
1863 /* 0010 */ 0x13, 0x00, 0x00, 0x00
1864 })
1865 Method (_GTM, 0, NotSerialized)
1866 {
1867 Return (SSTM)
1868 }
1869
1870 Method (_STM, 3, NotSerialized)
1871 {
1872 Store (Arg0, SSTM)
1873 CreateWordField (Arg1, 0xA4, ICM1)
1874 CreateWordField (Arg1, 0x0100, ISE1)
1875 Store (ICM1, PCS1)
1876 Store (ISE1, PSS1)
1877 }
1878
1879 Device (MAST)
1880 {
1881 Name (_ADR, 0x00)
1882 Method (_GTF, 0, NotSerialized)
1883 {
1884 Store (0xB1, SMIP)
1885 Store (Buffer (0x07)
1886 {
1887 /* 0000 */ 0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF
1888 }, Local0)
1889 If (LAnd (PCS1, 0x02))
1890 {
1891 If (LAnd (PSS1, 0x01))
1892 {
1893 Store (Buffer (0x07)
1894 {
1895 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5
1896 }, Local1)
1897 Concatenate (Local0, Local1, Local0)
1898 }
1899 }
1900
1901 Return (Local0)
1902 }
1903 }
1904 }
1905 }
1906
1907 Device (IDE0)
1908 {
1909 Name (_ADR, 0x000D0000)
1910 OperationRegion (A090, PCI_Config, 0x50, 0x18)
1911 Field (A090, DWordAcc, NoLock, Preserve)
1912 {
1913 ID20, 16,
1914 Offset (0x08),
1915 IDTS, 16,
1916 IDTP, 16,
1917 ID22, 32,
1918 UMSS, 16,
1919 UMSP, 16
1920 }
1921
1922 Name (IDEP, Buffer (0x14) {})
1923 Name (IDES, Buffer (0x14) {})
1924 Method (GTM, 1, NotSerialized)
1925 {
1926 If (LEqual (Arg0, 0x00))
1927 {
1928 Store (IDTP, Local0)
1929 Store (UMSP, Local1)
1930 Store (IDEP, Local2)
1931 }
1932 Else
1933 {
1934 Store (IDTS, Local0)
1935 Store (UMSS, Local1)
1936 Store (IDES, Local2)
1937 }
1938
1939 CreateDWordField (Local2, 0x00, PIO0)
1940 CreateDWordField (Local2, 0x04, DMA0)
1941 CreateDWordField (Local2, 0x08, PIO1)
1942 CreateDWordField (Local2, 0x0C, DMA1)
1943 CreateDWordField (Local2, 0x10, FLAG)
1944 Store (0x10, FLAG)
1945 And (Local0, 0x0F00, Local3)
1946 And (Local0, 0xF000, Local4)
1947 ShiftRight (Local3, 0x08, Local3)
1948 ShiftRight (Local4, 0x0C, Local4)
1949 Add (Local3, Local4, Local3)
1950 Multiply (Add (Local3, 0x02), 0x1E, PIO0)
1951 If (LLessEqual (PIO0, 0xB4))
1952 {
1953 Or (FLAG, 0x02, FLAG)
1954 }
1955
1956 If (And (Local1, 0x4000))
1957 {
1958 Or (FLAG, 0x01, FLAG)
1959 And (Local1, 0x0700, Local3)
1960 ShiftRight (Local3, 0x08, Local3)
1961 Store (U2T (Local3), DMA0)
1962 }
1963 Else
1964 {
1965 Store (PIO0, DMA0)
1966 }
1967
1968 And (Local0, 0x0F, Local3)
1969 And (Local0, 0xF0, Local4)
1970 ShiftRight (Local4, 0x04, Local4)
1971 Add (Local3, Local4, Local3)
1972 Multiply (Add (Local3, 0x02), 0x1E, PIO1)
1973 If (LLessEqual (PIO1, 0xB4))
1974 {
1975 Or (FLAG, 0x08, FLAG)
1976 }
1977
1978 If (And (Local1, 0x40))
1979 {
1980 Or (FLAG, 0x04, FLAG)
1981 And (Local1, 0x07, Local3)
1982 Store (U2T (Local3), DMA1)
1983 }
1984 Else
1985 {
1986 Store (PIO1, DMA1)
1987 }
1988
1989 If (LEqual (Arg0, 0x00))
1990 {
1991 Store (Local2, IDEP)
1992 Return (IDEP)
1993 }
1994 Else
1995 {
1996 Store (Local2, IDES)
1997 Return (IDES)
1998 }
1999 }
2000
2001 Method (U2T, 1, NotSerialized)
2002 {
2003 If (LEqual (Arg0, 0x00))
2004 {
2005 Return (0x3C)
2006 }
2007
2008 If (LEqual (Arg0, 0x01))
2009 {
2010 Return (0x5A)
2011 }
2012
2013 If (LEqual (Arg0, 0x02))
2014 {
2015 Return (0x78)
2016 }
2017
2018 If (LEqual (Arg0, 0x03))
2019 {
2020 Return (0x96)
2021 }
2022
2023 If (LEqual (Arg0, 0x04))
2024 {
2025 Return (0x2D)
2026 }
2027
2028 If (LEqual (Arg0, 0x05))
2029 {
2030 Return (0x1E)
2031 }
2032
2033 If (LEqual (Arg0, 0x06))
2034 {
2035 Return (0x14)
2036 }
2037
2038 Return (0x0F)
2039 }
2040
2041 Method (T2U, 1, NotSerialized)
2042 {
2043 If (LGreater (Arg0, 0x78))
2044 {
2045 Return (0x03)
2046 }
2047
2048 If (LGreater (Arg0, 0x5A))
2049 {
2050 Return (0x02)
2051 }
2052
2053 If (LGreater (Arg0, 0x3C))
2054 {
2055 Return (0x01)
2056 }
2057
2058 If (LGreater (Arg0, 0x2D))
2059 {
2060 Return (0x00)
2061 }
2062
2063 If (LGreater (Arg0, 0x1E))
2064 {
2065 Return (0x04)
2066 }
2067
2068 If (LGreater (Arg0, 0x14))
2069 {
2070 Return (0x05)
2071 }
2072
2073 If (LGreater (Arg0, 0x0F))
2074 {
2075 Return (0x06)
2076 }
2077
2078 Return (0x07)
2079 }
2080
2081 Method (T2D, 1, NotSerialized)
2082 {
2083 If (LGreater (Arg0, 0x01E0))
2084 {
2085 Return (0xA8)
2086 }
2087
2088 If (LGreater (Arg0, 0x0186))
2089 {
2090 Return (0x77)
2091 }
2092
2093 If (LGreater (Arg0, 0xF0))
2094 {
2095 Return (0x47)
2096 }
2097
2098 If (LGreater (Arg0, 0xB4))
2099 {
2100 Return (0x33)
2101 }
2102
2103 If (LGreater (Arg0, 0x96))
2104 {
2105 Return (0x22)
2106 }
2107
2108 If (LGreater (Arg0, 0x78))
2109 {
2110 Return (0x21)
2111 }
2112
2113 Return (0x20)
2114 }
2115
2116 Method (STM, 4, NotSerialized)
2117 {
2118 If (SX)
2119 {
2120 Store (SID0, ID20)
2121 Store (SID1, IDTS)
2122 Store (SID2, IDTP)
2123 Store (SID3, ID22)
2124 Store (SID4, UMSS)
2125 Store (SID5, UMSP)
2126 }
2127 Else
2128 {
2129 Store (ID20, SID0)
2130 Store (IDTS, SID1)
2131 Store (IDTP, SID2)
2132 Store (ID22, SID3)
2133 Store (UMSS, SID4)
2134 Store (UMSP, SID5)
2135 }
2136
2137 Store (0x00, SX)
2138 CreateDWordField (Arg0, 0x00, PIO0)
2139 CreateDWordField (Arg0, 0x04, DMA0)
2140 CreateDWordField (Arg0, 0x08, PIO1)
2141 CreateDWordField (Arg0, 0x0C, DMA1)
2142 CreateDWordField (Arg0, 0x10, FLAG)
2143 If (LEqual (Arg3, 0x00))
2144 {
2145 Store (SID2, Local0)
2146 Store (SID5, Local1)
2147 }
2148 Else
2149 {
2150 Store (SID1, Local0)
2151 Store (SID4, Local1)
2152 }
2153
2154 If (LNotEqual (PIO0, 0xFFFFFFFF))
2155 {
2156 And (Local0, 0xFF, Local0)
2157 ShiftLeft (T2D (PIO0), 0x08, Local2)
2158 Or (Local0, Local2, Local0)
2159 }
2160
2161 If (LNotEqual (PIO1, 0xFFFFFFFF))
2162 {
2163 And (Local0, 0xFF00, Local0)
2164 Or (Local0, T2D (PIO1), Local0)
2165 }
2166
2167 If (And (FLAG, 0x01))
2168 {
2169 And (Local1, 0xFF, Local1)
2170 ShiftLeft (T2U (DMA0), 0x08, Local2)
2171 Or (0xC000, Local2, Local2)
2172 Or (Local2, Local1, Local1)
2173 }
2174 Else
2175 {
2176 If (LNotEqual (DMA0, 0xFFFFFFFF))
2177 {
2178 And (Local0, 0xFF, Local0)
2179 ShiftLeft (T2D (DMA0), 0x08, Local2)
2180 Or (Local0, Local2, Local0)
2181 }
2182 }
2183
2184 If (And (FLAG, 0x04))
2185 {
2186 And (Local1, 0xFF00, Local1)
2187 Or (0xC0, T2U (DMA1), Local2)
2188 Or (Local2, Local1, Local1)
2189 }
2190 Else
2191 {
2192 If (LNotEqual (DMA1, 0xFFFFFFFF))
2193 {
2194 And (Local0, 0xFF00, Local0)
2195 Or (Local0, T2D (DMA1), Local0)
2196 }
2197 }
2198
2199 If (LEqual (Arg3, 0x00))
2200 {
2201 Store (Local0, IDTP)
2202 Store (Local1, UMSP)
2203 }
2204 Else
2205 {
2206 Store (Local0, IDTS)
2207 Store (Local1, UMSS)
2208 }
2209 }
2210
2211 Method (GTF, 2, NotSerialized)
2212 {
2213 Store (Buffer (0x07)
2214 {
2215 /* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
2216 }, Local0)
2217 CreateByteField (Local0, 0x01, MODE)
2218 CreateByteField (Local0, 0x05, DRIV)
2219 Store (Arg1, DRIV)
2220 If (LEqual (Arg0, 0x00))
2221 {
2222 Store (IDEP, Local1)
2223 }
2224 Else
2225 {
2226 Store (IDES, Local1)
2227 }
2228
2229 CreateDWordField (Local1, 0x00, PIO0)
2230 CreateDWordField (Local1, 0x04, DMA0)
2231 CreateDWordField (Local1, 0x08, PIO1)
2232 CreateDWordField (Local1, 0x0C, DMA1)
2233 CreateDWordField (Local1, 0x10, FLGX)
2234 If (LEqual (Arg1, 0xA0))
2235 {
2236 Store (PIO0, Local2)
2237 Store (DMA0, Local3)
2238 And (FLGX, 0x01, FLGX)
2239 }
2240 Else
2241 {
2242 Store (PIO1, Local2)
2243 Store (DMA1, Local3)
2244 And (FLGX, 0x04, FLGX)
2245 }
2246
2247 Store (FLGX, Local1)
2248 If (LGreater (Local2, 0x0186))
2249 {
2250 Store (0x00, Local2)
2251 }
2252 Else
2253 {
2254 If (LGreater (Local2, 0xF0))
2255 {
2256 Store (0x01, Local2)
2257 }
2258 Else
2259 {
2260 If (LGreater (Local2, 0xB4))
2261 {
2262 Store (0x02, Local2)
2263 }
2264 Else
2265 {
2266 If (LGreater (Local2, 0x78))
2267 {
2268 Store (0x03, Local2)
2269 }
2270 Else
2271 {
2272 Store (0x04, Local2)
2273 }
2274 }
2275 }
2276 }
2277
2278 Or (0x08, Local2, MODE)
2279 Store (Local0, Local2)
2280 If (FLGX)
2281 {
2282 If (LGreater (Local3, 0x5A))
2283 {
2284 Store (0x00, Local3)
2285 }
2286 Else
2287 {
2288 If (LGreater (Local3, 0x3C))
2289 {
2290 Store (0x01, Local3)
2291 }
2292 Else
2293 {
2294 If (LGreater (Local3, 0x2D))
2295 {
2296 Store (0x02, Local3)
2297 }
2298 Else
2299 {
2300 If (LGreater (Local3, 0x1E))
2301 {
2302 Store (0x03, Local3)
2303 }
2304 Else
2305 {
2306 If (LGreater (Local3, 0x14))
2307 {
2308 Store (0x04, Local3)
2309 }
2310 Else
2311 {
2312 If (LGreater (Local3, 0x0F))
2313 {
2314 Store (0x05, Local3)
2315 }
2316 Else
2317 {
2318 Store (0x06, Local3)
2319 }
2320 }
2321 }
2322 }
2323 }
2324 }
2325
2326 Or (0x40, Local3, MODE)
2327 }
2328 Else
2329 {
2330 If (LEqual (Local3, 0xFFFFFFFF))
2331 {
2332 Return (Local0)
2333 }
2334 Else
2335 {
2336 If (LGreater (Local3, 0x96))
2337 {
2338 Store (0x00, Local3)
2339 }
2340 Else
2341 {
2342 If (LGreater (Local3, 0x78))
2343 {
2344 Store (0x01, Local3)
2345 }
2346 Else
2347 {
2348 Store (0x02, Local3)
2349 }
2350 }
2351
2352 Or (0x20, Local3, MODE)
2353 }
2354 }
2355
2356 Concatenate (Local0, Local2, Local1)
2357 Return (Local1)
2358 }
2359
2360 Device (PRI0)
2361 {
2362 Name (_ADR, 0x00)
2363 Name (PCS0, 0x00)
2364 Name (PSS0, 0x00)
2365 Name (PCS1, 0x00)
2366 Name (PSS1, 0x00)
2367 Method (_GTM, 0, NotSerialized)
2368 {
2369 Return (GTM (0x00))
2370 }
2371
2372 Method (_STM, 3, NotSerialized)
2373 {
2374 STM (Arg0, Arg1, Arg2, 0x00)
2375 CreateWordField (Arg1, 0xA4, ICM0)
2376 CreateWordField (Arg1, 0x0100, ISE0)
2377 CreateWordField (Arg2, 0xA4, ICM1)
2378 CreateWordField (Arg2, 0x0100, ISE1)
2379 Store (ICM0, PCS0)
2380 Store (ISE0, PSS0)
2381 Store (ICM1, PCS1)
2382 Store (ISE1, PSS1)
2383 }
2384
2385 Device (MAST)
2386 {
2387 Name (_ADR, 0x00)
2388 Method (_GTF, 0, NotSerialized)
2389 {
2390 Store (GTF (0x00, 0xA0), Local0)
2391 If (LAnd (PCS0, 0x02))
2392 {
2393 If (LAnd (PSS0, 0x01))
2394 {
2395 Store (Buffer (0x07)
2396 {
2397 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5
2398 }, Local1)
2399 Concatenate (Local0, Local1, Local0)
2400 }
2401 }
2402
2403 Return (Local0)
2404 }
2405 }
2406
2407 Device (SLAV)
2408 {
2409 Name (_ADR, 0x01)
2410 Method (_GTF, 0, NotSerialized)
2411 {
2412 Store (GTF (0x00, 0xB0), Local0)
2413 If (LAnd (PCS1, 0x02))
2414 {
2415 If (LAnd (PSS1, 0x01))
2416 {
2417 Store (Buffer (0x07)
2418 {
2419 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xF5
2420 }, Local1)
2421 Concatenate (Local0, Local1, Local0)
2422 }
2423 }
2424
2425 Return (Local0)
2426 }
2427 }
2428 }
2429
2430 Device (SEC0)
2431 {
2432 Name (_ADR, 0x01)
2433 Name (PCS0, 0x00)
2434 Name (PSS0, 0x00)
2435 Name (PCS1, 0x00)
2436 Name (PSS1, 0x00)
2437 Method (_GTM, 0, NotSerialized)
2438 {
2439 Return (GTM (0x01))
2440 }
2441
2442 Method (_STM, 3, NotSerialized)
2443 {
2444 STM (Arg0, Arg1, Arg2, 0x01)
2445 CreateWordField (Arg1, 0xA4, ICM0)
2446 CreateWordField (Arg1, 0x0100, ISE0)
2447 CreateWordField (Arg2, 0xA4, ICM1)
2448 CreateWordField (Arg2, 0x0100, ISE1)
2449 Store (ICM0, PCS0)
2450 Store (ISE0, PSS0)
2451 Store (ICM1, PCS1)
2452 Store (ISE1, PSS1)
2453 }
2454
2455 Device (MAST)
2456 {
2457 Name (_ADR, 0x00)
2458 Method (_GTF, 0, NotSerialized)
2459 {
2460 Store (GTF (0x01, 0xA0), Local0)
2461 If (LAnd (PCS0, 0x02))
2462 {
2463 If (LAnd (PSS0, 0x01))
2464 {
2465 Store (Buffer (0x07)
2466 {
2467 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5
2468 }, Local1)
2469 Concatenate (Local0, Local1, Local0)
2470 }
2471 }
2472
2473 Return (Local0)
2474 }
2475 }
2476
2477 Device (SLAV)
2478 {
2479 Name (_ADR, 0x01)
2480 Method (_GTF, 0, NotSerialized)
2481 {
2482 Store (GTF (0x01, 0xB0), Local0)
2483 If (LAnd (PCS1, 0x02))
2484 {
2485 If (LAnd (PSS1, 0x01))
2486 {
2487 Store (Buffer (0x07)
2488 {
2489 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xF5
2490 }, Local1)
2491 Concatenate (Local0, Local1, Local0)
2492 }
2493 }
2494
2495 Return (Local0)
2496 }
2497 }
2498 }
2499 }
2500
2501 Device (K800)
2502 {
2503 Name (_BBN, 0x00)
2504 Name (_ADR, 0x00180000)
2505 }
2506
2507 Device (K801)
2508 {
2509 Name (_BBN, 0x00)
2510 Name (_ADR, 0x00180001)
2511 OperationRegion (K181, PCI_Config, 0x00, 0xFF)
2512 Field (K181, AnyAcc, NoLock, Preserve)
2513 {
2514 Offset (0x80),
2515 MB00, 8,
2516 MBV0, 24,
2517 ML00, 8,
2518 MLV0, 24,
2519 MB01, 8,
2520 MBV1, 24,
2521 ML01, 8,
2522 MLV1, 24,
2523 MB02, 8,
2524 MBV2, 24,
2525 ML02, 8,
2526 MLV2, 24,
2527 MB03, 8,
2528 MBV3, 24,
2529 ML03, 8,
2530 MLV3, 24,
2531 MB04, 8,
2532 MBV4, 24,
2533 ML04, 8,
2534 MLV4, 24,
2535 MB05, 8,
2536 MBV5, 24,
2537 ML05, 8,
2538 MLV5, 24,
2539 MB06, 8,
2540 MBV6, 24,
2541 ML06, 8,
2542 MLV6, 24,
2543 MB07, 8,
2544 MBV7, 24,
2545 ML07, 8,
2546 MLV7, 24,
2547 IB00, 6,
2548 , 6,
2549 IBV0, 13,
2550 Offset (0xC4),
2551 IL00, 6,
2552 , 6,
2553 ILV0, 13,
2554 Offset (0xC8),
2555 IB01, 6,
2556 , 6,
2557 IBV1, 13,
2558 Offset (0xCC),
2559 IL01, 6,
2560 , 6,
2561 ILV1, 13,
2562 Offset (0xD0),
2563 IB02, 6,
2564 , 6,
2565 IBV2, 13,
2566 Offset (0xD4),
2567 IL02, 6,
2568 , 6,
2569 ILV2, 13,
2570 Offset (0xD8),
2571 IB03, 6,
2572 , 6,
2573 IBV3, 13,
2574 Offset (0xDC),
2575 IL03, 6,
2576 , 6,
2577 ILV3, 13,
2578 Offset (0xE0),
2579 L0EN, 8,
2580 DL00, 8,
2581 BNB0, 8,
2582 BNL0, 8,
2583 L1EN, 8,
2584 DL01, 8,
2585 BNB1, 8,
2586 BNL1, 8,
2587 L2EN, 8,
2588 DL02, 8,
2589 BNB2, 8,
2590 BNL2, 8,
2591 L3EN, 8,
2592 DL03, 8,
2593 BNB3, 8,
2594 BNL3, 8
2595 }
2596 }
2597
2598 Device (K802)
2599 {
2600 Name (_BBN, 0x00)
2601 Name (_ADR, 0x00180002)
2602 }
2603
2604 Device (K810)
2605 {
2606 Name (_BBN, 0x00)
2607 Name (_ADR, 0x00190000)
2608 }
2609
2610 Device (K811)
2611 {
2612 Name (_BBN, 0x00)
2613 Name (_ADR, 0x00190001)
2614 OperationRegion (K281, PCI_Config, 0x00, 0xFF)
2615 Field (K281, AnyAcc, NoLock, Preserve)
2616 {
2617 Offset (0x80),
2618 MB00, 8,
2619 MBV0, 24,
2620 ML00, 8,
2621 MLV0, 24,
2622 MB01, 8,
2623 MBV1, 24,
2624 ML01, 8,
2625 MLV1, 24,
2626 MB02, 8,
2627 MBV2, 24,
2628 ML02, 8,
2629 MLV2, 24,
2630 MB03, 8,
2631 MBV3, 24,
2632 ML03, 8,
2633 MLV3, 24,
2634 MB04, 8,
2635 MBV4, 24,
2636 ML04, 8,
2637 MLV4, 24,
2638 MB05, 8,
2639 MBV5, 24,
2640 ML05, 8,
2641 MLV5, 24,
2642 MB06, 8,
2643 MBV6, 24,
2644 ML06, 8,
2645 MLV6, 24,
2646 MB07, 8,
2647 MBV7, 24,
2648 ML07, 8,
2649 MLV7, 24,
2650 IB00, 6,
2651 , 6,
2652 IBV0, 13,
2653 Offset (0xC4),
2654 IL00, 6,
2655 , 6,
2656 ILV0, 13,
2657 Offset (0xC8),
2658 IB01, 6,
2659 , 6,
2660 IBV1, 13,
2661 Offset (0xCC),
2662 IL01, 6,
2663 , 6,
2664 ILV1, 13,
2665 Offset (0xD0),
2666 IB02, 6,
2667 , 6,
2668 IBV2, 13,
2669 Offset (0xD4),
2670 IL02, 6,
2671 , 6,
2672 ILV2, 13,
2673 Offset (0xD8),
2674 IB03, 6,
2675 , 6,
2676 IBV3, 13,
2677 Offset (0xDC),
2678 IL03, 6,
2679 , 6,
2680 ILV3, 13,
2681 Offset (0xE0),
2682 L0EN, 8,
2683 DL00, 8,
2684 BNB0, 8,
2685 BNL0, 8,
2686 L1EN, 8,
2687 DL01, 8,
2688 BNB1, 8,
2689 BNL1, 8,
2690 L2EN, 8,
2691 DL02, 8,
2692 BNB2, 8,
2693 BNL2, 8,
2694 L3EN, 8,
2695 DL03, 8,
2696 BNB3, 8,
2697 BNL3, 8
2698 }
2699 }
2700
2701 Device (K812)
2702 {
2703 Name (_BBN, 0x00)
2704 Name (_ADR, 0x00190002)
2705 }
2706
2707 Device (K820)
2708 {
2709 Name (_BBN, 0x00)
2710 Name (_ADR, 0x001A0000)
2711 }
2712
2713 Device (K821)
2714 {
2715 Name (_BBN, 0x00)
2716 Name (_ADR, 0x001A0001)
2717 OperationRegion (K381, PCI_Config, 0x00, 0xFF)
2718 Field (K381, AnyAcc, NoLock, Preserve)
2719 {
2720 Offset (0x80),
2721 MB00, 8,
2722 MBV0, 24,
2723 ML00, 8,
2724 MLV0, 24,
2725 MB01, 8,
2726 MBV1, 24,
2727 ML01, 8,
2728 MLV1, 24,
2729 MB02, 8,
2730 MBV2, 24,
2731 ML02, 8,
2732 MLV2, 24,
2733 MB03, 8,
2734 MBV3, 24,
2735 ML03, 8,
2736 MLV3, 24,
2737 MB04, 8,
2738 MBV4, 24,
2739 ML04, 8,
2740 MLV4, 24,
2741 MB05, 8,
2742 MBV5, 24,
2743 ML05, 8,
2744 MLV5, 24,
2745 MB06, 8,
2746 MBV6, 24,
2747 ML06, 8,
2748 MLV6, 24,
2749 MB07, 8,
2750 MBV7, 24,
2751 ML07, 8,
2752 MLV7, 24,
2753 IB00, 6,
2754 , 5,
2755 IBV0, 13,
2756 Offset (0xC4),
2757 IL00, 6,
2758 , 5,
2759 ILV0, 13,
2760 Offset (0xC8),
2761 IB01, 6,
2762 , 5,
2763 IBV1, 13,
2764 Offset (0xCC),
2765 IL01, 6,
2766 , 5,
2767 ILV1, 13,
2768 Offset (0xD0),
2769 IB02, 6,
2770 , 5,
2771 IBV2, 13,
2772 Offset (0xD4),
2773 IL02, 6,
2774 , 5,
2775 ILV2, 13,
2776 Offset (0xD8),
2777 IB03, 6,
2778 , 5,
2779 IBV3, 13,
2780 Offset (0xDC),
2781 IL03, 6,
2782 , 5,
2783 ILV3, 13,
2784 Offset (0xE0),
2785 L0EN, 8,
2786 DL00, 8,
2787 BNB0, 8,
2788 BNL0, 8,
2789 L1EN, 8,
2790 DL01, 8,
2791 BNB1, 8,
2792 BNL1, 8,
2793 L2EN, 8,
2794 DL02, 8,
2795 BNB2, 8,
2796 BNL2, 8,
2797 L3EN, 8,
2798 DL03, 8,
2799 BNB3, 8,
2800 BNL3, 8
2801 }
2802 }
2803
2804 Device (K822)
2805 {
2806 Name (_BBN, 0x00)
2807 Name (_ADR, 0x001A0002)
2808 }
2809
2810 Device (K830)
2811 {
2812 Name (_BBN, 0x00)
2813 Name (_ADR, 0x001B0000)
2814 }
2815
2816 Device (K831)
2817 {
2818 Name (_BBN, 0x00)
2819 Name (_ADR, 0x001B0001)
2820 OperationRegion (K381, PCI_Config, 0x00, 0xFF)
2821 Field (K381, AnyAcc, NoLock, Preserve)
2822 {
2823 Offset (0x80),
2824 MB00, 8,
2825 MBV0, 24,
2826 ML00, 8,
2827 MLV0, 24,
2828 MB01, 8,
2829 MBV1, 24,
2830 ML01, 8,
2831 MLV1, 24,
2832 MB02, 8,
2833 MBV2, 24,
2834 ML02, 8,
2835 MLV2, 24,
2836 MB03, 8,
2837 MBV3, 24,
2838 ML03, 8,
2839 MLV3, 24,
2840 MB04, 8,
2841 MBV4, 24,
2842 ML04, 8,
2843 MLV4, 24,
2844 MB05, 8,
2845 MBV5, 24,
2846 ML05, 8,
2847 MLV5, 24,
2848 MB06, 8,
2849 MBV6, 24,
2850 ML06, 8,
2851 MLV6, 24,
2852 MB07, 8,
2853 MBV7, 24,
2854 ML07, 8,
2855 MLV7, 24,
2856 IB00, 6,
2857 , 5,
2858 IBV0, 13,
2859 Offset (0xC4),
2860 IL00, 6,
2861 , 5,
2862 ILV0, 13,
2863 Offset (0xC8),
2864 IB01, 6,
2865 , 5,
2866 IBV1, 13,
2867 Offset (0xCC),
2868 IL01, 6,
2869 , 5,
2870 ILV1, 13,
2871 Offset (0xD0),
2872 IB02, 6,
2873 , 5,
2874 IBV2, 13,
2875 Offset (0xD4),
2876 IL02, 6,
2877 , 5,
2878 ILV2, 13,
2879 Offset (0xD8),
2880 IB03, 6,
2881 , 5,
2882 IBV3, 13,
2883 Offset (0xDC),
2884 IL03, 6,
2885 , 5,
2886 ILV3, 13,
2887 Offset (0xE0),
2888 L0EN, 8,
2889 DL00, 8,
2890 BNB0, 8,
2891 BNL0, 8,
2892 L1EN, 8,
2893 DL01, 8,
2894 BNB1, 8,
2895 BNL1, 8,
2896 L2EN, 8,
2897 DL02, 8,
2898 BNB2, 8,
2899 BNL2, 8,
2900 L3EN, 8,
2901 DL03, 8,
2902 BNB3, 8,
2903 BNL3, 8
2904 }
2905 }
2906
2907 Device (K832)
2908 {
2909 Name (_BBN, 0x00)
2910 Name (_ADR, 0x001B0002)
2911 }
2912
2913 Device (IGPU)
2914 {
2915 Name (_ADR, 0x00050000)
2916 OperationRegion (GPUR, PCI_Config, 0xA0, 0x08)
2917 Scope (\)
2918 {
2919 Field (\_SB.PCI0.IGPU.GPUR, ByteAcc, NoLock, Preserve)
2920 {
2921 IGUB, 32,
2922 IGUL, 32
2923 }
2924 }
2925 }
2926
2927 Device (SMB0)
2928 {
2929 Name (_ADR, 0x000A0001)
2930 OperationRegion (SMCF, PCI_Config, 0x48, 0x10)
2931 Field (SMCF, DWordAcc, NoLock, Preserve)
2932 {
2933 SMPM, 4,
2934 SMT1, 28,
2935 SMT2, 32
2936 }
2937
2938 OperationRegion (SMCA, PCI_Config, 0x20, 0x08)
2939 Field (SMCA, DWordAcc, NoLock, Preserve)
2940 {
2941 SB1, 32,
2942 SB2, 32
2943 }
2944
2945 OperationRegion (PDEV, PCI_Config, 0xE8, 0x04)
2946 Scope (\)
2947 {
2948 Field (\_SB.PCI0.SMB0.PDEV, AnyAcc, NoLock, Preserve)
2949 {
2950 , 12,
2951 ACIE, 1
2952 }
2953 }
2954
2955 Method (SMBB, 0, NotSerialized)
2956 {
2957 If (PCIA)
2958 {
2959 And (SB1, 0xFFFE, Local0)
2960 }
2961 Else
2962 {
2963 Store (0x4C00, Local0)
2964 }
2965
2966 Return (Local0)
2967 }
2968 }
2969
2970 Device (VT86)
2971 {
2972 Name (_ADR, 0x000A0000)
2973 OperationRegion (PIO0, PCI_Config, 0x04, 0x20)
2974 Scope (\)
2975 {
2976 Field (\_SB.PCI0.VT86.PIO0, ByteAcc, NoLock, Preserve)
2977 {
2978 SMEN, 8,
2979 Offset (0x0C),
2980 Offset (0x0D),
2981 SMIO, 8
2982 }
2983 }
2984
2985 Scope (\)
2986 {
2987 OperationRegion (\SCPP, SystemIO, 0x442E, 0x01)
2988 Field (\SCPP, ByteAcc, NoLock, Preserve)
2989 {
2990 SMIP, 8
2991 }
2992 }
2993
2994 Method (\_SB.PCI0._INI, 0, NotSerialized)
2995 {
2996 If (STRC (\_OS, "Microsoft Windows"))
2997 {
2998 Store (0x56, SMIP)
2999 }
3000 Else
3001 {
3002 If (STRC (\_OS, "Microsoft Windows NT"))
3003 {
3004 If (CondRefOf (\_OSI, Local0))
3005 {
3006 If (\_OSI ("Windows 2001"))
3007 {
3008 Store (0x59, SMIP)
3009 Store (0x00, OSFL)
3010 Store (0x03, OSFX)
3011 }
3012
3013 If (\_OSI ("Windows 2006"))
3014 {
3015 Store (0x01, VSTA)
3016 }
3017 }
3018 Else
3019 {
3020 Store (0x58, SMIP)
3021 Store (0x00, OSFX)
3022 Store (0x00, OSFL)
3023 }
3024 }
3025 Else
3026 {
3027 Store (0x57, SMIP)
3028 Store (0x02, OSFX)
3029 Store (0x02, OSFL)
3030 }
3031 }
3032
3033 Name (TEMP, 0x00)
3034 Store (UA1D, TEMP)
3035 And (TEMP, 0x0F, TEMP)
3036 ShiftLeft (0x01, TEMP, UARA)
3037 Store (UA1D, TEMP)
3038 And (TEMP, 0xF0, TEMP)
3039 ShiftRight (TEMP, 0x04, TEMP)
3040 ShiftLeft (0x01, TEMP, UARB)
3041 }
3042
3043 Scope (\)
3044 {
3045 Method (OSTP, 0, NotSerialized)
3046 {
3047 If (LEqual (OSFX, 0x01))
3048 {
3049 Store (0x56, SMIP)
3050 }
3051
3052 If (LEqual (OSFX, 0x02))
3053 {
3054 Store (0x57, SMIP)
3055 }
3056
3057 If (LEqual (OSFX, 0x00))
3058 {
3059 Store (0x58, SMIP)
3060 }
3061
3062 If (LEqual (OSFX, 0x03))
3063 {
3064 Store (0x59, SMIP)
3065 }
3066 }
3067 }
3068
3069 Device (SYSR)
3070 {
3071 Name (_HID, EisaId ("PNP0C02"))
3072 Name (_UID, 0x01)
3073 Name (_CRS, ResourceTemplate ()
3074 {
3075 IO (Decode16,
3076 0x0010, // Range Minimum
3077 0x0010, // Range Maximum
3078 0x01, // Alignment
3079 0x10, // Length
3080 )
3081 IO (Decode16,
3082 0x0022, // Range Minimum
3083 0x0022, // Range Maximum
3084 0x01, // Alignment
3085 0x1E, // Length
3086 )
3087 IO (Decode16,
3088 0x0044, // Range Minimum
3089 0x0044, // Range Maximum
3090 0x01, // Alignment
3091 0x1C, // Length
3092 )
3093 IO (Decode16,
3094 0x0062, // Range Minimum
3095 0x0062, // Range Maximum
3096 0x01, // Alignment
3097 0x02, // Length
3098 )
3099 IO (Decode16,
3100 0x0065, // Range Minimum
3101 0x0065, // Range Maximum
3102 0x01, // Alignment
3103 0x0B, // Length
3104 )
3105 IO (Decode16,
3106 0x0074, // Range Minimum
3107 0x0074, // Range Maximum
3108 0x01, // Alignment
3109 0x0C, // Length
3110 )
3111 IO (Decode16,
3112 0x0091, // Range Minimum
3113 0x0091, // Range Maximum
3114 0x01, // Alignment
3115 0x03, // Length
3116 )
3117 IO (Decode16,
3118 0x00A2, // Range Minimum
3119 0x00A2, // Range Maximum
3120 0x01, // Alignment
3121 0x1E, // Length
3122 )
3123 IO (Decode16,
3124 0x00E0, // Range Minimum
3125 0x00E0, // Range Maximum
3126 0x01, // Alignment
3127 0x10, // Length
3128 )
3129 IO (Decode16,
3130 0x04D0, // Range Minimum
3131 0x04D0, // Range Maximum
3132 0x01, // Alignment
3133 0x02, // Length
3134 )
3135 IO (Decode16,
3136 0x0800, // Range Minimum
3137 0x0800, // Range Maximum
3138 0x01, // Alignment
3139 0x80, // Length
3140 )
3141 })
3142 }
3143
3144 Device (PIC)
3145 {
3146 Name (_HID, EisaId ("PNP0000"))
3147 Name (_CRS, ResourceTemplate ()
3148 {
3149 IO (Decode16,
3150 0x0020, // Range Minimum
3151 0x0020, // Range Maximum
3152 0x01, // Alignment
3153 0x02, // Length
3154 )
3155 IO (Decode16,
3156 0x00A0, // Range Minimum
3157 0x00A0, // Range Maximum
3158 0x01, // Alignment
3159 0x02, // Length
3160 )
3161 IRQNoFlags ()
3162 {2}
3163 })
3164 }
3165
3166 Device (DMA1)
3167 {
3168 Name (_HID, EisaId ("PNP0200"))
3169 Name (_CRS, ResourceTemplate ()
3170 {
3171 DMA (Compatibility, BusMaster, Transfer8, )
3172 {4}
3173 IO (Decode16,
3174 0x0000, // Range Minimum
3175 0x0000, // Range Maximum
3176 0x01, // Alignment
3177 0x10, // Length
3178 )
3179 IO (Decode16,
3180 0x0080, // Range Minimum
3181 0x0080, // Range Maximum
3182 0x01, // Alignment
3183 0x11, // Length
3184 )
3185 IO (Decode16,
3186 0x0094, // Range Minimum
3187 0x0094, // Range Maximum
3188 0x01, // Alignment
3189 0x0C, // Length
3190 )
3191 IO (Decode16,
3192 0x00C0, // Range Minimum
3193 0x00C0, // Range Maximum
3194 0x01, // Alignment
3195 0x20, // Length
3196 )
3197 })
3198 }
3199
3200 Device (TMR)
3201 {
3202 Name (_HID, EisaId ("PNP0100"))
3203 Name (ATT5, ResourceTemplate ()
3204 {
3205 IO (Decode16,
3206 0x0040, // Range Minimum
3207 0x0040, // Range Maximum
3208 0x00, // Alignment
3209 0x04, // Length
3210 )
3211 IRQNoFlags ()
3212 {0}
3213 })
3214 Name (ATT6, ResourceTemplate ()
3215 {
3216 IO (Decode16,
3217 0x0040, // Range Minimum
3218 0x0040, // Range Maximum
3219 0x00, // Alignment
3220 0x04, // Length
3221 )
3222 })
3223 Method (_CRS, 0, NotSerialized)
3224 {
3225 If (LEqual (OSFX, 0x03))
3226 {
3227 If (HPTF)
3228 {
3229 Return (ATT6)
3230 }
3231 Else
3232 {
3233 Return (ATT5)
3234 }
3235 }
3236 Else
3237 {
3238 Return (ATT5)
3239 }
3240 }
3241 }
3242
3243 Device (HPET)
3244 {
3245 Name (_HID, EisaId ("PNP0103"))
3246 Name (ATT3, ResourceTemplate ()
3247 {
3248 IRQNoFlags ()
3249 {0}
3250 IRQNoFlags ()
3251 {8}
3252 Memory32Fixed (ReadWrite,
3253 0xFEFFF000, // Address Base
3254 0x00000400, // Address Length
3255 )
3256 })
3257 Name (ATT4, ResourceTemplate ()
3258 {
3259 })
3260 Method (_STA, 0, NotSerialized)
3261 {
3262 If (LEqual (OSFX, 0x03))
3263 {
3264 If (HPTF)
3265 {
3266 Return (0x0F)
3267 }
3268 Else
3269 {
3270 Return (0x00)
3271 }
3272 }
3273 Else
3274 {
3275 Return (0x00)
3276 }
3277 }
3278
3279 Method (_CRS, 0, NotSerialized)
3280 {
3281 If (LEqual (OSFX, 0x03))
3282 {
3283 If (HPTF)
3284 {
3285 Return (ATT3)
3286 }
3287 Else
3288 {
3289 Return (ATT4)
3290 }
3291 }
3292 Else
3293 {
3294 Return (ATT4)
3295 }
3296 }
3297 }
3298
3299 Device (RTC)
3300 {
3301 Name (_HID, EisaId ("PNP0B00"))
3302 Name (ATT0, ResourceTemplate ()
3303 {
3304 IO (Decode16,
3305 0x0070, // Range Minimum
3306 0x0070, // Range Maximum
3307 0x00, // Alignment
3308 0x04, // Length
3309 )
3310 IRQNoFlags ()
3311 {8}
3312 })
3313 Name (ATT1, ResourceTemplate ()
3314 {
3315 IO (Decode16,
3316 0x0070, // Range Minimum
3317 0x0070, // Range Maximum
3318 0x00, // Alignment
3319 0x04, // Length
3320 )
3321 })
3322 Method (_CRS, 0, NotSerialized)
3323 {
3324 If (LEqual (OSFX, 0x03))
3325 {
3326 If (HPTF)
3327 {
3328 Return (ATT1)
3329 }
3330 Else
3331 {
3332 Return (ATT0)
3333 }
3334 }
3335 Else
3336 {
3337 Return (ATT0)
3338 }
3339 }
3340 }
3341
3342 Device (SPKR)
3343 {
3344 Name (_HID, EisaId ("PNP0800"))
3345 Name (_CRS, ResourceTemplate ()
3346 {
3347 IO (Decode16,
3348 0x0061, // Range Minimum
3349 0x0061, // Range Maximum
3350 0x01, // Alignment
3351 0x01, // Length
3352 )
3353 })
3354 }
3355
3356 Device (COPR)
3357 {
3358 Name (_HID, EisaId ("PNP0C04"))
3359 Name (_CRS, ResourceTemplate ()
3360 {
3361 IO (Decode16,
3362 0x00F0, // Range Minimum
3363 0x00F0, // Range Maximum
3364 0x01, // Alignment
3365 0x10, // Length
3366 )
3367 IRQNoFlags ()
3368 {13}
3369 })
3370 }
3371
3372 Scope (\)
3373 {
3374 OperationRegion (SMGP, SystemIO, 0x0800, 0x80)
3375 Field (SMGP, ByteAcc, NoLock, Preserve)
3376 {
3377 P3SG, 8,
3378 P5SG, 8,
3379 PM3E, 8,
3380 PM5E, 8,
3381 P3S1, 8,
3382 P3S3, 8,
3383 P3S5, 8,
3384 P3S6, 8,
3385 P3E1, 8,
3386 P3E3, 8,
3387 P3E5, 8,
3388 P3E6, 8,
3389 P5S1, 8,
3390 P5S3, 8,
3391 P5S5, 8,
3392 P5S6, 8,
3393 P5E1, 8,
3394 P5E3, 8,
3395 P5E5, 8,
3396 P5E6, 8,
3397 SMS1, 8,
3398 SMS2, 8,
3399 SMS3, 8,
3400 SMS4, 8,
3401 SME1, 8,
3402 SME2, 8,
3403 SME3, 8,
3404 SME4, 8,
3405 MSST, 8,
3406 Offset (0x1E),
3407 FDC, 8,
3408 FDRS, 8,
3409 UAF1, 8,
3410 UAF2, 8,
3411 DDR, 8,
3412 SG10, 8,
3413 SG11, 8,
3414 SG12, 8,
3415 SG13, 8,
3416 SG14, 8,
3417 Offset (0x29),
3418 Offset (0x2A),
3419 Offset (0x2B),
3420 Offset (0x2C),
3421 SG21, 8,
3422 SG22, 8,
3423 Offset (0x2F),
3424 Offset (0x30),
3425 Offset (0x31),
3426 Offset (0x32),
3427 SG27, 8,
3428 Offset (0x34),
3429 Offset (0x35),
3430 SG32, 8,
3431 SG33, 8,
3432 Offset (0x38),
3433 Offset (0x39),
3434 SG36, 8,
3435 SG37, 8,
3436 SG40, 8,
3437 Offset (0x3D),
3438 SG42, 8,
3439 SG43, 8,
3440 SG50, 8,
3441 SG51, 8,
3442 SG52, 8,
3443 SG53, 8,
3444 SG54, 8,
3445 SG55, 8,
3446 SG56, 8,
3447 SG57, 8,
3448 SG60, 8,
3449 SG61, 8,
3450 PWRC, 8,
3451 SLP3, 8,
3452 SG01, 8,
3453 SG02, 8,
3454 SG03, 8,
3455 SG04, 8,
3456 SG05, 8,
3457 SG06, 8,
3458 Offset (0x52),
3459 Offset (0x53),
3460 SLPP, 8,
3461 Offset (0x55),
3462 Offset (0x56),
3463 Offset (0x57),
3464 Offset (0x58),
3465 Offset (0x59),
3466 Offset (0x5A),
3467 Offset (0x5B),
3468 CBLC, 8,
3469 MOSW, 8,
3470 LED1, 8,
3471 LED2, 8,
3472 KBSC, 8,
3473 HWRI, 8,
3474 HWRD, 8,
3475 KBB2, 8,
3476 KBB3, 8,
3477 PRBT, 8,
3478 WDTO, 8,
3479 WDVA, 8,
3480 WDCF, 8,
3481 WDCO, 8,
3482 SPK1, 8,
3483 SMIS, 8,
3484 Offset (0x6C),
3485 Offset (0x6D),
3486 Offset (0x6E),
3487 Offset (0x6F),
3488 Offset (0x70),
3489 Offset (0x71)
3490 }
3491
3492 Method (LEDX, 2, NotSerialized)
3493 {
3494 If (LEqual (Arg0, 0x01))
3495 {
3496 And (SG60, 0xF3, SG60)
3497 Or (SG60, 0x04, SG60)
3498 And (LED1, 0xFC, LED1)
3499 Or (LED1, Arg1, LED1)
3500 }
3501
3502 If (LEqual (Arg0, 0x02))
3503 {
3504 And (SG61, 0xF3, SG61)
3505 Or (SG61, 0x04, SG61)
3506 And (LED2, 0xFC, LED2)
3507 Or (LED2, Arg1, LED2)
3508 }
3509 }
3510 }
3511
3512 OperationRegion (WIN1, SystemIO, 0x2E, 0x02)
3513 Field (WIN1, ByteAcc, NoLock, Preserve)
3514 {
3515 INDX, 8,
3516 DATA, 8
3517 }
3518
3519 IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
3520 {
3521 Offset (0x02),
3522 CFG, 8,
3523 Offset (0x07),
3524 LDN, 8,
3525 Offset (0x20),
3526 IDHI, 8,
3527 IDLO, 8,
3528 POWC, 8,
3529 Offset (0x30),
3530 ACTR, 8,
3531 Offset (0x60),
3532 IOAH, 8,
3533 IOAL, 8,
3534 Offset (0x70),
3535 INTR, 8,
3536 Offset (0x72),
3537 INT1, 8,
3538 Offset (0x74),
3539 DMCH, 8,
3540 Offset (0xC0),
3541 GP40, 8,
3542 Offset (0xF0),
3543 OPT1, 8,
3544 OPT2, 8,
3545 OPT3, 8
3546 }
3547
3548 Method (ENFG, 0, NotSerialized)
3549 {
3550 Store (0x55, INDX)
3551 }
3552
3553 Method (EXFG, 0, NotSerialized)
3554 {
3555 Store (0xAA, INDX)
3556 }
3557
3558 Device (FDC0)
3559 {
3560 Name (_HID, EisaId ("PNP0700"))
3561 Method (_STA, 0, NotSerialized)
3562 {
3563 ENFG ()
3564 Store (Zero, LDN)
3565 If (ACTR)
3566 {
3567 EXFG ()
3568 Return (0x0F)
3569 }
3570 Else
3571 {
3572 If (LOr (IOAH, IOAL))
3573 {
3574 EXFG ()
3575 Return (0x0D)
3576 }
3577 Else
3578 {
3579 EXFG ()
3580 Return (0x00)
3581 }
3582 }
3583 }
3584
3585 Method (_DIS, 0, NotSerialized)
3586 {
3587 ENFG ()
3588 Store (Zero, LDN)
3589 Store (Zero, ACTR)
3590 SLDM (DMCH, 0x04)
3591 EXFG ()
3592 DISD (0x03)
3593 }
3594
3595 Method (_CRS, 0, NotSerialized)
3596 {
3597 Name (BUF0, ResourceTemplate ()
3598 {
3599 IO (Decode16,
3600 0x03F0, // Range Minimum
3601 0x03F0, // Range Maximum
3602 0x01, // Alignment
3603 0x06, // Length
3604 _Y07)
3605 IO (Decode16,
3606 0x03F7, // Range Minimum
3607 0x03F7, // Range Maximum
3608 0x01, // Alignment
3609 0x01, // Length
3610 )
3611 IRQNoFlags ()
3612 {6}
3613 DMA (Compatibility, NotBusMaster, Transfer8, )
3614 {2}
3615 })
3616 CreateByteField (BUF0, \_SB.PCI0.VT86.FDC0._CRS._Y07._MIN, IOLO)
3617 CreateByteField (BUF0, 0x03, IOHI)
3618 CreateByteField (BUF0, \_SB.PCI0.VT86.FDC0._CRS._Y07._MAX, IORL)
3619 CreateByteField (BUF0, 0x05, IORH)
3620 Return (BUF0)
3621 }
3622
3623 Name (_PRS, ResourceTemplate ()
3624 {
3625 StartDependentFnNoPri ()
3626 {
3627 IO (Decode16,
3628 0x03F0, // Range Minimum
3629 0x03F0, // Range Maximum
3630 0x00, // Alignment
3631 0x06, // Length
3632 )
3633 IO (Decode16,
3634 0x03F7, // Range Minimum
3635 0x03F7, // Range Maximum
3636 0x00, // Alignment
3637 0x01, // Length
3638 )
3639 IRQNoFlags ()
3640 {6}
3641 DMA (Compatibility, NotBusMaster, Transfer8, )
3642 {2}
3643 }
3644 EndDependentFn ()
3645 })
3646 Method (_SRS, 1, NotSerialized)
3647 {
3648 CreateByteField (Arg0, 0x02, IOLO)
3649 CreateByteField (Arg0, 0x03, IOHI)
3650 CreateWordField (Arg0, 0x02, IOAD)
3651 CreateWordField (Arg0, 0x19, IRQW)
3652 CreateByteField (Arg0, 0x1C, DMAV)
3653 ENFG ()
3654 Store (Zero, LDN)
3655 Store (One, ACTR)
3656 SLDM (DMCH, DMCH)
3657 EXFG ()
3658 CKIO (IOAD, 0x03)
3659 }
3660 }
3661
3662 Device (UAR1)
3663 {
3664 Name (_HID, EisaId ("PNP0501"))
3665 Name (_UID, 0x01)
3666 Method (_STA, 0, NotSerialized)
3667 {
3668 ENFG ()
3669 Store (0x04, LDN)
3670 If (ACTR)
3671 {
3672 EXFG ()
3673 Return (0x0F)
3674 }
3675 Else
3676 {
3677 If (LOr (IOAH, IOAL))
3678 {
3679 EXFG ()
3680 Return (0x0D)
3681 }
3682 Else
3683 {
3684 EXFG ()
3685 Return (0x00)
3686 }
3687 }
3688
3689 EXFG ()
3690 }
3691
3692 Method (_DIS, 0, NotSerialized)
3693 {
3694 ENFG ()
3695 Store (0x04, LDN)
3696 Store (Zero, ACTR)
3697 EXFG ()
3698 DISD (0x00)
3699 }
3700
3701 Method (_CRS, 0, NotSerialized)
3702 {
3703 Name (BUF1, ResourceTemplate ()
3704 {
3705 IO (Decode16,
3706 0x0000, // Range Minimum
3707 0x0000, // Range Maximum
3708 0x01, // Alignment
3709 0x08, // Length
3710 _Y08)
3711 IRQNoFlags (_Y09)
3712 {}
3713 })
3714 CreateByteField (BUF1, \_SB.PCI0.VT86.UAR1._CRS._Y08._MIN, IOLO)
3715 CreateByteField (BUF1, 0x03, IOHI)
3716 CreateByteField (BUF1, \_SB.PCI0.VT86.UAR1._CRS._Y08._MAX, IORL)
3717 CreateByteField (BUF1, 0x05, IORH)
3718 CreateWordField (BUF1, \_SB.PCI0.VT86.UAR1._CRS._Y09._INT, IRQW)
3719 ENFG ()
3720 Store (0x04, LDN)
3721 Store (IOAL, IOLO)
3722 Store (IOAL, IORL)
3723 Store (IOAH, IOHI)
3724 Store (IOAH, IORH)
3725 Store (Zero, IRQW)
3726 If (LNotEqual (INTR, Zero))
3727 {
3728 ShiftLeft (One, INTR, IRQW)
3729 }
3730
3731 EXFG ()
3732 Return (BUF1)
3733 }
3734
3735 Name (_PRS, ResourceTemplate ()
3736 {
3737 StartDependentFnNoPri ()
3738 {
3739 IO (Decode16,
3740 0x03F8, // Range Minimum
3741 0x03F8, // Range Maximum
3742 0x01, // Alignment
3743 0x08, // Length
3744 )
3745 }
3746 StartDependentFnNoPri ()
3747 {
3748 IO (Decode16,
3749 0x02F8, // Range Minimum
3750 0x02F8, // Range Maximum
3751 0x01, // Alignment
3752 0x08, // Length
3753 )
3754 }
3755 StartDependentFnNoPri ()
3756 {
3757 IO (Decode16,
3758 0x03E8, // Range Minimum
3759 0x03E8, // Range Maximum
3760 0x01, // Alignment
3761 0x08, // Length
3762 )
3763 }
3764 StartDependentFnNoPri ()
3765 {
3766 IO (Decode16,
3767 0x02E8, // Range Minimum
3768 0x02E8, // Range Maximum
3769 0x01, // Alignment
3770 0x08, // Length
3771 )
3772 }
3773 EndDependentFn ()
3774 IRQNoFlags ()
3775 {3,4,5,7,9,10,11,12}
3776 })
3777 Method (_SRS, 1, NotSerialized)
3778 {
3779 CreateByteField (Arg0, 0x02, IOLO)
3780 CreateByteField (Arg0, 0x03, IOHI)
3781 CreateWordField (Arg0, 0x02, IOAD)
3782 CreateWordField (Arg0, 0x09, IRQW)
3783 ENFG ()
3784 Store (0x04, LDN)
3785 Store (One, ACTR)
3786 Store (IOLO, IOAL)
3787 Store (IOHI, IOAH)
3788 FindSetLeftBit (IRQW, Local0)
3789 If (LNotEqual (Local0, Zero))
3790 {
3791 Subtract (Local0, 0x01, Local0)
3792 }
3793
3794 EXFG ()
3795 CKIO (IOAD, 0x00)
3796 }
3797 }
3798
3799 Device (LPT1)
3800 {
3801 Name (_HID, EisaId ("PNP0400"))
3802 Method (_STA, 0, NotSerialized)
3803 {
3804 ENFG ()
3805 Store (0x03, LDN)
3806 And (OPT1, 0x02, Local0)
3807 If (LNotEqual (Local0, 0x02))
3808 {
3809 If (ACTR)
3810 {
3811 EXFG ()
3812 Return (0x0F)
3813 }
3814 Else
3815 {
3816 If (LOr (IOAH, IOAL))
3817 {
3818 EXFG ()
3819 Return (0x0D)
3820 }
3821 Else
3822 {
3823 EXFG ()
3824 Return (0x00)
3825 }
3826 }
3827 }
3828 Else
3829 {
3830 EXFG ()
3831 Return (0x00)
3832 }
3833 }
3834
3835 Method (_DIS, 0, NotSerialized)
3836 {
3837 ENFG ()
3838 Store (0x03, LDN)
3839 Store (Zero, ACTR)
3840 EXFG ()
3841 DISD (0x02)
3842 }
3843
3844 Method (_CRS, 0, NotSerialized)
3845 {
3846 Name (BUF5, ResourceTemplate ()
3847 {
3848 IO (Decode16,
3849 0x0000, // Range Minimum
3850 0x0000, // Range Maximum
3851 0x01, // Alignment
3852 0x08, // Length
3853 _Y0A)
3854 IRQNoFlags (_Y0B)
3855 {}
3856 })
3857 CreateByteField (BUF5, \_SB.PCI0.VT86.LPT1._CRS._Y0A._MIN, IOLO)
3858 CreateByteField (BUF5, 0x03, IOHI)
3859 CreateByteField (BUF5, \_SB.PCI0.VT86.LPT1._CRS._Y0A._MAX, IORL)
3860 CreateByteField (BUF5, 0x05, IORH)
3861 CreateByteField (BUF5, \_SB.PCI0.VT86.LPT1._CRS._Y0A._LEN, IOLE)
3862 CreateWordField (BUF5, \_SB.PCI0.VT86.LPT1._CRS._Y0B._INT, IRQW)
3863 ENFG ()
3864 Store (0x03, LDN)
3865 Store (IOAL, IOLO)
3866 Store (IOLO, IORL)
3867 Store (IOAH, IOHI)
3868 Store (IOHI, IORH)
3869 If (LEqual (IOLO, 0xBC))
3870 {
3871 Store (0x04, IOLE)
3872 }
3873 Else
3874 {
3875 Store (0x08, IOLE)
3876 }
3877
3878 Store (Zero, IRQW)
3879 If (LNotEqual (INTR, Zero))
3880 {
3881 ShiftLeft (One, INTR, IRQW)
3882 }
3883
3884 EXFG ()
3885 Return (BUF5)
3886 }
3887
3888 Name (_PRS, ResourceTemplate ()
3889 {
3890 StartDependentFnNoPri ()
3891 {
3892 IO (Decode16,
3893 0x0378, // Range Minimum
3894 0x0378, // Range Maximum
3895 0x01, // Alignment
3896 0x08, // Length
3897 )
3898 }
3899 StartDependentFnNoPri ()
3900 {
3901 IO (Decode16,
3902 0x0278, // Range Minimum
3903 0x0278, // Range Maximum
3904 0x01, // Alignment
3905 0x08, // Length
3906 )
3907 }
3908 StartDependentFnNoPri ()
3909 {
3910 IO (Decode16,
3911 0x03BC, // Range Minimum
3912 0x03BC, // Range Maximum
3913 0x01, // Alignment
3914 0x04, // Length
3915 )
3916 }
3917 EndDependentFn ()
3918 IRQNoFlags ()
3919 {3,4,5,7,9,10,11,12}
3920 })
3921 Method (_SRS, 1, NotSerialized)
3922 {
3923 CreateByteField (Arg0, 0x02, IOLO)
3924 CreateByteField (Arg0, 0x03, IOHI)
3925 CreateByteField (Arg0, 0x04, IORL)
3926 CreateWordField (Arg0, 0x02, IOAD)
3927 CreateByteField (Arg0, 0x05, IORH)
3928 CreateWordField (Arg0, 0x09, IRQW)
3929 ENFG ()
3930 Store (0x03, LDN)
3931 Store (One, ACTR)
3932 Store (IOLO, IOAL)
3933 Store (IOHI, IOAH)
3934 FindSetLeftBit (IRQW, Local0)
3935 If (LNotEqual (Local0, Zero))
3936 {
3937 Subtract (Local0, 0x01, Local0)
3938 }
3939
3940 Store (Local0, INTR)
3941 EXFG ()
3942 CKIO (IOAD, 0x02)
3943 }
3944 }
3945
3946 Device (ECP1)
3947 {
3948 Name (_HID, EisaId ("PNP0401"))
3949 Method (_STA, 0, NotSerialized)
3950 {
3951 ENFG ()
3952 Store (0x03, LDN)
3953 And (OPT1, 0x02, Local0)
3954 If (LEqual (Local0, 0x02))
3955 {
3956 If (ACTR)
3957 {
3958 EXFG ()
3959 Return (0x0F)
3960 }
3961 Else
3962 {
3963 If (LOr (IOAH, IOAL))
3964 {
3965 EXFG ()
3966 Return (0x0D)
3967 }
3968 Else
3969 {
3970 EXFG ()
3971 Return (0x00)
3972 }
3973 }
3974 }
3975 Else
3976 {
3977 EXFG ()
3978 Return (0x00)
3979 }
3980 }
3981
3982 Method (_DIS, 0, NotSerialized)
3983 {
3984 ENFG ()
3985 Store (0x03, LDN)
3986 Store (Zero, ACTR)
3987 SLDM (DMCH, 0x04)
3988 EXFG ()
3989 DISD (0x02)
3990 }
3991
3992 Method (_CRS, 0, NotSerialized)
3993 {
3994 Name (BUF6, ResourceTemplate ()
3995 {
3996 IO (Decode16,
3997 0x0000, // Range Minimum
3998 0x0000, // Range Maximum
3999 0x01, // Alignment
4000 0x08, // Length
4001 _Y0C)
4002 IO (Decode16,
4003 0x0000, // Range Minimum
4004 0x0000, // Range Maximum
4005 0x01, // Alignment
4006 0x04, // Length
4007 _Y0D)
4008 IRQNoFlags (_Y0E)
4009 {}
4010 DMA (Compatibility, NotBusMaster, Transfer8, _Y0F)
4011 {}
4012 })
4013 CreateByteField (BUF6, \_SB.PCI0.VT86.ECP1._CRS._Y0C._MIN, IOLO)
4014 CreateByteField (BUF6, 0x03, IOHI)
4015 CreateByteField (BUF6, \_SB.PCI0.VT86.ECP1._CRS._Y0C._MAX, IORL)
4016 CreateByteField (BUF6, 0x05, IORH)
4017 CreateByteField (BUF6, \_SB.PCI0.VT86.ECP1._CRS._Y0C._LEN, IOLE)
4018 CreateByteField (BUF6, \_SB.PCI0.VT86.ECP1._CRS._Y0D._MIN, IOEL)
4019 CreateByteField (BUF6, 0x0B, IOEH)
4020 CreateByteField (BUF6, \_SB.PCI0.VT86.ECP1._CRS._Y0D._MAX, IOML)
4021 CreateByteField (BUF6, 0x0D, IOMH)
4022 CreateWordField (BUF6, \_SB.PCI0.VT86.ECP1._CRS._Y0E._INT, IRQW)
4023 CreateByteField (BUF6, \_SB.PCI0.VT86.ECP1._CRS._Y0F._DMA, DMAC)
4024 ENFG ()
4025 Store (0x03, LDN)
4026 Store (One, ACTR)
4027 Store (IOAL, Local2)
4028 Store (Local2, IOLO)
4029 Store (IOAH, Local3)
4030 Store (Local3, IOHI)
4031 Or (Local3, 0x04, Local3)
4032 Store (Local3, IOEH)
4033 Store (Local3, IOMH)
4034 Store (IOLO, IORL)
4035 Store (IOLO, IOEL)
4036 Store (IOLO, IOML)
4037 Store (IOHI, IORH)
4038 If (LEqual (IOLO, 0xBC))
4039 {
4040 Store (0x04, IOLE)
4041 }
4042 Else
4043 {
4044 Store (0x08, IOLE)
4045 }
4046
4047 Store (Zero, IRQW)
4048 If (LNotEqual (INTR, Zero))
4049 {
4050 ShiftLeft (One, INTR, IRQW)
4051 }
4052
4053 Store (One, Local0)
4054 Store (DMCH, Local5)
4055 ShiftLeft (Local0, Local5, DMAC)
4056 EXFG ()
4057 Return (BUF6)
4058 }
4059
4060 Name (_PRS, ResourceTemplate ()
4061 {
4062 StartDependentFnNoPri ()
4063 {
4064 IO (Decode16,
4065 0x0378, // Range Minimum
4066 0x0378, // Range Maximum
4067 0x00, // Alignment
4068 0x08, // Length
4069 )
4070 IO (Decode16,
4071 0x0778, // Range Minimum
4072 0x0778, // Range Maximum
4073 0x00, // Alignment
4074 0x04, // Length
4075 )
4076 }
4077 StartDependentFnNoPri ()
4078 {
4079 IO (Decode16,
4080 0x0278, // Range Minimum
4081 0x0278, // Range Maximum
4082 0x00, // Alignment
4083 0x08, // Length
4084 )
4085 IO (Decode16,
4086 0x0678, // Range Minimum
4087 0x0678, // Range Maximum
4088 0x00, // Alignment
4089 0x04, // Length
4090 )
4091 }
4092 StartDependentFnNoPri ()
4093 {
4094 IO (Decode16,
4095 0x03BC, // Range Minimum
4096 0x03BC, // Range Maximum
4097 0x00, // Alignment
4098 0x04, // Length
4099 )
4100 IO (Decode16,
4101 0x07BC, // Range Minimum
4102 0x07BC, // Range Maximum
4103 0x00, // Alignment
4104 0x04, // Length
4105 )
4106 }
4107 EndDependentFn ()
4108 IRQNoFlags ()
4109 {3,4,5,7,9,10,11,12}
4110 DMA (Compatibility, NotBusMaster, Transfer8, )
4111 {0,1,3}
4112 })
4113 Method (_SRS, 1, NotSerialized)
4114 {
4115 CreateByteField (Arg0, 0x02, IOLO)
4116 CreateByteField (Arg0, 0x03, IOHI)
4117 CreateWordField (Arg0, 0x02, IOAD)
4118 CreateWordField (Arg0, 0x11, IRQW)
4119 CreateByteField (Arg0, 0x14, DMAC)
4120 ENFG ()
4121 Store (0x03, LDN)
4122 Store (One, ACTR)
4123 Store (IOLO, IOAL)
4124 Store (IOHI, IOAH)
4125 FindSetLeftBit (IRQW, Local0)
4126 If (LNotEqual (Local0, Zero))
4127 {
4128 Subtract (Local0, 0x01, Local0)
4129 }
4130
4131 Store (Local0, INTR)
4132 FindSetLeftBit (DMAC, Local1)
4133 Store (DMCH, Local0)
4134 Subtract (Local1, 0x01, DMCH)
4135 SLDM (Local0, DMCH)
4136 EXFG ()
4137 CKIO (IOAD, 0x02)
4138 }
4139 }
4140
4141 OperationRegion (KBCT, SystemIO, 0x60, 0x05)
4142 Field (KBCT, ByteAcc, NoLock, Preserve)
4143 {
4144 P060, 8,
4145 Offset (0x04),
4146 P064, 8
4147 }
4148
4149 Device (PS2M)
4150 {
4151 Name (_HID, EisaId ("PNP0F13"))
4152 Method (_STA, 0, NotSerialized)
4153 {
4154 If (LEqual (PS2F, 0x00))
4155 {
4156 Return (0x0F)
4157 }
4158 Else
4159 {
4160 Return (0x00)
4161 }
4162 }
4163
4164 Method (_CRS, 0, NotSerialized)
4165 {
4166 Name (BUF1, ResourceTemplate ()
4167 {
4168 IRQNoFlags ()
4169 {12}
4170 })
4171 Name (BUF2, ResourceTemplate ()
4172 {
4173 IO (Decode16,
4174 0x0060, // Range Minimum
4175 0x0060, // Range Maximum
4176 0x01, // Alignment
4177 0x01, // Length
4178 )
4179 IO (Decode16,
4180 0x0064, // Range Minimum
4181 0x0064, // Range Maximum
4182 0x01, // Alignment
4183 0x01, // Length
4184 )
4185 IRQNoFlags ()
4186 {12}
4187 })
4188 If (LEqual (KBDI, 0x01))
4189 {
4190 If (LEqual (OSFL, 0x02))
4191 {
4192 Return (BUF1)
4193 }
4194
4195 If (LEqual (OSFL, 0x01))
4196 {
4197 Return (BUF1)
4198 }
4199 Else
4200 {
4201 Return (BUF2)
4202 }
4203 }
4204 Else
4205 {
4206 Return (BUF1)
4207 }
4208 }
4209 }
4210
4211 Device (PS2K)
4212 {
4213 Name (_HID, EisaId ("PNP0303"))
4214 Name (_CID, 0x0B03D041)
4215 Method (_STA, 0, NotSerialized)
4216 {
4217 If (LEqual (KBDI, 0x01))
4218 {
4219 Return (0x00)
4220 }
4221 Else
4222 {
4223 Return (0x0F)
4224 }
4225 }
4226
4227 Name (_CRS, ResourceTemplate ()
4228 {
4229 IO (Decode16,
4230 0x0060, // Range Minimum
4231 0x0060, // Range Maximum
4232 0x01, // Alignment
4233 0x01, // Length
4234 )
4235 IO (Decode16,
4236 0x0064, // Range Minimum
4237 0x0064, // Range Maximum
4238 0x01, // Alignment
4239 0x01, // Length
4240 )
4241 IRQNoFlags ()
4242 {1}
4243 })
4244 }
4245
4246 Device (PSMR)
4247 {
4248 Name (_HID, EisaId ("PNP0C02"))
4249 Name (_UID, 0x03)
4250 Method (_STA, 0, NotSerialized)
4251 {
4252 If (LEqual (KBDI, 0x00))
4253 {
4254 Return (0x00)
4255 }
4256
4257 If (LEqual (PS2F, 0x00))
4258 {
4259 If (LEqual (OSFL, 0x02))
4260 {
4261 Return (0x0F)
4262 }
4263
4264 If (LEqual (OSFL, 0x01))
4265 {
4266 Return (0x0F)
4267 }
4268
4269 Return (0x00)
4270 }
4271
4272 Return (0x00)
4273 }
4274
4275 Name (_CRS, ResourceTemplate ()
4276 {
4277 IO (Decode16,
4278 0x0060, // Range Minimum
4279 0x0060, // Range Maximum
4280 0x01, // Alignment
4281 0x01, // Length
4282 )
4283 IO (Decode16,
4284 0x0064, // Range Minimum
4285 0x0064, // Range Maximum
4286 0x01, // Alignment
4287 0x01, // Length
4288 )
4289 })
4290 }
4291
4292 Method (\_SB.PCI0.VT86.PS2M._PSW, 1, NotSerialized)
4293 {
4294 And (PM3E, 0xFE, PM3E)
4295 If (Arg0)
4296 {
4297 Or (P3E1, 0x10, P3E1)
4298 }
4299 Else
4300 {
4301 And (P3E1, 0xEF, P3E1)
4302 }
4303
4304 Notify (\_SB.PCI0.VT86.PS2M, 0x02)
4305 }
4306
4307 Method (\_SB.PCI0.VT86.PS2K._PSW, 1, NotSerialized)
4308 {
4309 And (PM3E, 0xFE, PM3E)
4310 If (Arg0)
4311 {
4312 Or (P3E1, 0x08, P3E1)
4313 }
4314 Else
4315 {
4316 And (P3E1, 0xF7, P3E1)
4317 }
4318
4319 Notify (\_SB.PCI0.VT86.PS2K, 0x02)
4320 }
4321
4322 Scope (\)
4323 {
4324 Method (SALD, 1, NotSerialized)
4325 {
4326 If (LEqual (Arg0, 0x00))
4327 {
4328 Store (0x00, LED2)
4329 }
4330
4331 If (LEqual (Arg0, 0x01))
4332 {
4333 Store (0x01, LED2)
4334 }
4335
4336 If (LEqual (Arg0, 0x03))
4337 {
4338 Store (0x02, LED2)
4339 }
4340
4341 If (LEqual (Arg0, 0x04))
4342 {
4343 Store (0x03, LED2)
4344 }
4345
4346 If (LEqual (Arg0, 0x05))
4347 {
4348 Store (0x03, LED2)
4349 }
4350 }
4351 }
4352
4353 Method (\_SB.PCI0.VT86.UAR1._PRW, 0, NotSerialized)
4354 {
4355 Return (Package (0x02)
4356 {
4357 0x03,
4358 0x05
4359 })
4360 }
4361
4362 Method (\_SB.PCI0.VT86.PS2K._PRW, 0, NotSerialized)
4363 {
4364 Return (Package (0x02)
4365 {
4366 0x10,
4367 0x04
4368 })
4369 }
4370
4371 Method (\_SB.PCI0.VT86.PS2M._PRW, 0, NotSerialized)
4372 {
4373 Return (Package (0x02)
4374 {
4375 0x10,
4376 0x04
4377 })
4378 }
4379
4380 Method (PS2W, 0, NotSerialized)
4381 {
4382 Store (P3S3, P3S3)
4383 Store (P3S5, P3S5)
4384 Store (P3S6, P3S6)
4385 Store (P3S1, Local0)
4386 Store (Local0, P3S1)
4387 If (And (Local0, 0x10))
4388 {
4389 Notify (\_SB.PCI0.VT86.PS2M, 0x02)
4390 }
4391
4392 If (And (Local0, 0x08))
4393 {
4394 Notify (\_SB.PCI0.VT86.PS2K, 0x02)
4395 }
4396 }
4397
4398 OperationRegion (PIO1, PCI_Config, 0x74, 0x01)
4399 Scope (\)
4400 {
4401 Field (\_SB.PCI0.VT86.PIO1, ByteAcc, NoLock, Preserve)
4402 {
4403 , 2,
4404 HPTF, 1,
4405 Offset (0x01)
4406 }
4407 }
4408
4409 OperationRegion (PIRQ, PCI_Config, 0x7C, 0x0C)
4410 Scope (\)
4411 {
4412 Field (\_SB.PCI0.VT86.PIRQ, AnyAcc, NoLock, Preserve)
4413 {
4414 INTA, 4,
4415 INTB, 4,
4416 INTC, 4,
4417 INTD, 4,
4418 PCEA, 4,
4419 PCEB, 4,
4420 PCEC, 4,
4421 PCED, 4,
4422 SCII, 4,
4423 TCOI, 4,
4424 INTF, 4,
4425 INTQ, 4,
4426 INTU, 4,
4427 INTS, 4,
4428 IS0P, 4,
4429 ITID, 4,
4430 INTG, 4,
4431 INTH, 4,
4432 INTJ, 4,
4433 INTK, 4,
4434 INTL, 4,
4435 INTM, 4,
4436 INTN, 4
4437 }
4438 }
4439
4440 OperationRegion (LPIO, PCI_Config, 0xA0, 0x18)
4441 Scope (\)
4442 {
4443 Field (\_SB.PCI0.VT86.LPIO, ByteAcc, NoLock, Preserve)
4444 {
4445 UAIO, 8,
4446 SNDD, 4,
4447 MIDD, 4,
4448 MSSD, 4,
4449 FDCD, 2,
4450 Offset (0x03),
4451 PRIO, 3,
4452 , 1,
4453 GEN1, 1,
4454 GEN2, 1,
4455 GEN3, 1,
4456 GEN4, 1,
4457 GAM1, 8,
4458 GAM2, 8
4459 }
4460
4461 OperationRegion (RTC2, SystemIO, 0x72, 0x02)
4462 Field (RTC2, ByteAcc, NoLock, Preserve)
4463 {
4464 CM2I, 8,
4465 CM2D, 8
4466 }
4467
4468 IndexField (CM2I, CM2D, ByteAcc, NoLock, Preserve)
4469 {
4470 Offset (0xCC),
4471 UA1D, 8
4472 }
4473
4474 Name (UARA, 0x00)
4475 Name (UARB, 0x00)
4476 Method (DISD, 1, NotSerialized)
4477 {
4478 If (LEqual (Arg0, 0x00))
4479 {
4480 Store (UARA, Local0)
4481 XOr (Local0, 0xFF, Local0)
4482 And (UAIO, Local0, UAIO)
4483 }
4484
4485 If (LEqual (Arg0, 0x01)) {}
4486 If (LEqual (Arg0, 0x02))
4487 {
4488 Store (0x00, PRIO)
4489 }
4490
4491 If (LEqual (Arg0, 0x03))
4492 {
4493 Store (0x00, FDCD)
4494 }
4495
4496 If (LEqual (Arg0, 0x04))
4497 {
4498 Store (0x00, GAM1)
4499 Store (0x00, GAM2)
4500 }
4501
4502 If (LEqual (Arg0, 0x05))
4503 {
4504 Store (0x00, MIDD)
4505 }
4506 }
4507
4508 Method (CKIO, 2, NotSerialized)
4509 {
4510 If (LEqual (Arg1, 0x00))
4511 {
4512 Or (UARA, UARB, Local0)
4513 And (UAIO, Local0, UAIO)
4514 Store (UARA, Local0)
4515 XOr (Local0, 0xFF, Local0)
4516 And (UAIO, Local0, UAIO)
4517 If (LEqual (Arg0, 0x03F8))
4518 {
4519 Store (0x01, Local0)
4520 }
4521
4522 If (LEqual (Arg0, 0x02F8))
4523 {
4524 Store (0x02, Local0)
4525 }
4526
4527 If (LEqual (Arg0, 0x02E8))
4528 {
4529 Store (0x20, Local0)
4530 }
4531
4532 If (LEqual (Arg0, 0x03E8))
4533 {
4534 Store (0x80, Local0)
4535 }
4536
4537 Or (UAIO, Local0, UAIO)
4538 Store (Local0, UARA)
4539 }
4540
4541 If (LEqual (Arg1, 0x01)) {}
4542 If (LEqual (Arg1, 0x02))
4543 {
4544 If (LEqual (Arg0, 0x0378))
4545 {
4546 Store (0x00, PRIO)
4547 Or (PRIO, 0x01, PRIO)
4548 }
4549
4550 If (LEqual (Arg0, 0x0278))
4551 {
4552 Store (0x00, PRIO)
4553 Or (PRIO, 0x02, PRIO)
4554 }
4555
4556 If (LEqual (Arg0, 0x03BC))
4557 {
4558 Store (0x00, PRIO)
4559 Or (PRIO, 0x04, PRIO)
4560 }
4561 }
4562
4563 If (LEqual (Arg1, 0x03))
4564 {
4565 Or (FDCD, 0x01, FDCD)
4566 }
4567
4568 If (LEqual (Arg1, 0x04))
4569 {
4570 Store (0x00, GAM1)
4571 Store (0x00, GAM2)
4572 If (LEqual (Arg0, 0x0201))
4573 {
4574 Or (GAM1, 0x02, GAM1)
4575 }
4576
4577 If (LEqual (Arg0, 0x0209))
4578 {
4579 Or (GAM2, 0x02, GAM2)
4580 }
4581 }
4582
4583 If (LEqual (Arg1, 0x05))
4584 {
4585 Store (0x00, MIDD)
4586 If (LEqual (Arg0, 0x0300))
4587 {
4588 Or (MIDD, 0x01, MIDD)
4589 }
4590
4591 If (LEqual (Arg0, 0x0330))
4592 {
4593 Or (MIDD, 0x08, MIDD)
4594 }
4595 }
4596 }
4597
4598 Method (SLDM, 2, NotSerialized)
4599 {
4600 }
4601
4602 Method (CLSU, 1, NotSerialized)
4603 {
4604 CreateWordField (Arg0, 0x02, UARO)
4605 If (LEqual (UARO, 0x03F8))
4606 {
4607 And (UAIO, 0xFE, UAIO)
4608 }
4609
4610 If (LEqual (UARO, 0x02F8))
4611 {
4612 And (UAIO, 0xFD, UAIO)
4613 }
4614
4615 If (LEqual (UARO, 0x02E8))
4616 {
4617 And (UAIO, 0xBF, UAIO)
4618 }
4619
4620 If (LEqual (UARO, 0x03E8))
4621 {
4622 And (UAIO, 0x7F, UAIO)
4623 }
4624 }
4625 }
4626 }
4627
4628 Device (USB0)
4629 {
4630 Name (_ADR, 0x000B0000)
4631 Method (_S1D, 0, NotSerialized)
4632 {
4633 Return (0x01)
4634 }
4635
4636 Method (_S3D, 0, NotSerialized)
4637 {
4638 If (LEqual (OSFL, 0x02))
4639 {
4640 Return (0x02)
4641 }
4642 Else
4643 {
4644 Return (0x03)
4645 }
4646 }
4647
4648 Name (_PRW, Package (0x02)
4649 {
4650 0x0D,
4651 0x04
4652 })
4653 }
4654
4655 Device (USB2)
4656 {
4657 Name (_ADR, 0x000B0001)
4658 OperationRegion (P020, PCI_Config, 0x49, 0x01)
4659 Field (P020, AnyAcc, NoLock, Preserve)
4660 {
4661 U0WK, 1
4662 }
4663
4664 Method (_PSW, 1, NotSerialized)
4665 {
4666 If (Arg0)
4667 {
4668 Store (0x01, U0WK)
4669 }
4670 Else
4671 {
4672 Store (0x00, U0WK)
4673 }
4674 }
4675
4676 Method (_S1D, 0, NotSerialized)
4677 {
4678 Return (0x01)
4679 }
4680
4681 Method (_S3D, 0, NotSerialized)
4682 {
4683 Return (0x01)
4684 }
4685
4686 Name (_PRW, Package (0x02)
4687 {
4688 0x05,
4689 0x04
4690 })
4691 }
4692
4693 Device (AZAD)
4694 {
4695 Name (_ADR, 0x00100001)
4696 Name (_PRW, Package (0x02)
4697 {
4698 0x15,
4699 0x05
4700 })
4701 }
4702
4703 Device (MMAC)
4704 {
4705 Name (_ADR, 0x00140000)
4706 Name (_PRW, Package (0x02)
4707 {
4708 0x0B,
4709 0x05
4710 })
4711 }
4712
4713 Device (ASOC)
4714 {
4715 Name (_HID, "ATK0110")
4716 Name (_UID, 0x01010110)
4717 Name (MBIF, Package (0x08)
4718 {
4719 0x01,
4720 "M2N8L",
4721 0x01010101,
4722 0x01010101,
4723 0xC0010002,
4724 0x01,
4725 0x00,
4726 0x00
4727 })
4728 Name (VBUF, Package (0x05)
4729 {
4730 0x04,
4731 VCRE,
4732 V333,
4733 V500,
4734 V120
4735 })
4736 Name (VCRE, Package (0x05)
4737 {
4738 0x06020000,
4739 "Vcore Voltage",
4740 0x05AA,
4741 0x06D6,
4742 0x01
4743 })
4744 Name (V333, Package (0x05)
4745 {
4746 0x06020001,
4747 " +3.3 Voltage",
4748 0x0BB8,
4749 0x0E10,
4750 0x01
4751 })
4752 Name (V500, Package (0x05)
4753 {
4754 0x06020002,
4755 " +5.0 Voltage",
4756 0x1194,
4757 0x157C,
4758 0x01
4759 })
4760 Name (V120, Package (0x05)
4761 {
4762 0x06020003,
4763 "+12.0 Voltage",
4764 0x2BC0,
4765 0x3390,
4766 0x01
4767 })
4768 Name (TBUF, Package (0x03)
4769 {
4770 0x02,
4771 CPUT,
4772 MBTP
4773 })
4774 Name (CPUT, Package (0x05)
4775 {
4776 0x06030000,
4777 "CPU Temperature",
4778 0x0384,
4779 0x04E2,
4780 0x00010001
4781 })
4782 Name (MBTP, Package (0x05)
4783 {
4784 0x06030001,
4785 "MB Temperature",
4786 0x02BC,
4787 0x04E2,
4788 0x00010001
4789 })
4790 Name (FBUF, Package (0x06)
4791 {
4792 0x03,
4793 CPUF,
4794 CHAF,
4795 PWRF,
4796 CHPF,
4797 CH2F
4798 })
4799 Name (CPUF, Package (0x05)
4800 {
4801 0x06040000,
4802 "CPU FAN Speed",
4803 0x00,
4804 0x0708,
4805 0x00010001
4806 })
4807 Name (CHAF, Package (0x05)
4808 {
4809 0x06040001,
4810 "CHASSIS FAN Speed",
4811 0x00,
4812 0x0708,
4813 0x01
4814 })
4815 Name (PWRF, Package (0x05)
4816 {
4817 0x06040002,
4818 "POWER FAN Speed",
4819 0x00,
4820 0x0708,
4821 0x00
4822 })
4823 Name (CHPF, Package (0x05)
4824 {
4825 0x06040005,
4826 "CHIPSET FAN Speed",
4827 0x00,
4828 0x0708,
4829 0x00
4830 })
4831 Name (CH2F, Package (0x05)
4832 {
4833 0x06040006,
4834 "CHASSIS2 FAN Speed",
4835 0x00,
4836 0x0708,
4837 0x00
4838 })
4839 Name (QFAN, Package (0x05)
4840 {
4841 0x04060003,
4842 "CPU Q-Fan Control",
4843 0x00,
4844 0x01,
4845 0x01
4846 })
4847 Name (QFRO, Package (0x05)
4848 {
4849 0x04050004,
4850 "CPU Q-Fan Ratio",
4851 0x3C,
4852 0x5A,
4853 0x00
4854 })
4855 Name (QFTP, Package (0x05)
4856 {
4857 0x04030005,
4858 "Temperature Range",
4859 0x02,
4860 0x50,
4861 0x00010001
4862 })
4863 Name (QCFN, Package (0x05)
4864 {
4865 0x04060006,
4866 "Chassis Q-Fan Control",
4867 0x00,
4868 0x01,
4869 0x00
4870 })
4871 Name (QFCR, Package (0x05)
4872 {
4873 0x04050007,
4874 "Chassis Q-Fan Ratio",
4875 0x38,
4876 0x64,
4877 0x00
4878 })
4879 Method (ASIF, 0, NotSerialized)
4880 {
4881 Return (MBIF)
4882 }
4883
4884 Method (VSIF, 0, NotSerialized)
4885 {
4886 Return (VBUF)
4887 }
4888
4889 Method (RVLT, 1, NotSerialized)
4890 {
4891 Store (DerefOf (Index (VCRE, 0x00)), Local0)
4892 If (LEqual (Arg0, Local0))
4893 {
4894 Store (RBYT (TSAD, 0x21), Local0)
4895 Multiply (Local0, 0x0C, Local0)
4896 Return (Local0)
4897 }
4898
4899 Store (DerefOf (Index (V333, 0x00)), Local0)
4900 If (LEqual (Arg0, Local0))
4901 {
4902 Store (RBYT (TSAD, 0x22), Local0)
4903 Multiply (Local0, 0x11, Local0)
4904 Return (Local0)
4905 }
4906
4907 Store (DerefOf (Index (V500, 0x00)), Local0)
4908 If (LEqual (Arg0, Local0))
4909 {
4910 Store (RBYT (TSAD, 0x23), Local0)
4911 Multiply (Local0, 0x1A, Local0)
4912 Return (Local0)
4913 }
4914
4915 Store (DerefOf (Index (V120, 0x00)), Local0)
4916 If (LEqual (Arg0, Local0))
4917 {
4918 Store (RBYT (TSAD, 0x24), Local0)
4919 Multiply (Local0, 0x3E, Local0)
4920 Return (Local0)
4921 }
4922 }
4923
4924 Method (TSIF, 0, NotSerialized)
4925 {
4926 Return (TBUF)
4927 }
4928
4929 Method (RTMP, 1, NotSerialized)
4930 {
4931 Store (DerefOf (Index (CPUT, 0x00)), Local0)
4932 If (LEqual (Arg0, Local0))
4933 {
4934 Store (RBYT (TSAD, 0x27), Local0)
4935 Add (Local0, 0xFFFFFFFA, Local0)
4936 Multiply (Local0, 0x0A, Local0)
4937 Return (Local0)
4938 }
4939
4940 Store (DerefOf (Index (MBTP, 0x00)), Local0)
4941 If (LEqual (Arg0, Local0))
4942 {
4943 Store (RBYT (TSAD, 0x26), Local0)
4944 Multiply (Local0, 0x0A, Local0)
4945 Return (Local0)
4946 }
4947 }
4948
4949 Method (FSIF, 0, NotSerialized)
4950 {
4951 Return (FBUF)
4952 }
4953
4954 Method (RFAN, 1, NotSerialized)
4955 {
4956 Store (DerefOf (Index (CPUF, 0x00)), Local1)
4957 If (LEqual (Arg0, Local1))
4958 {
4959 Store (RBYT (TSAD, 0x28), Local0)
4960 Store (RBYT (TSAD, 0x29), Local1)
4961 Add (Local0, Local1, Local2)
4962 If (LAnd (LNotEqual (Local2, 0x01FE), LNotEqual (Local2, 0x00)))
4963 {
4964 Multiply (Local1, 0x0100, Local1)
4965 Add (Local1, Local0, Local1)
4966 Store (0x005265C0, Local0)
4967 Divide (Local0, Local1, Local1, Local0)
4968 }
4969 Else
4970 {
4971 Store (0x00, Local0)
4972 }
4973 }
4974
4975 Store (DerefOf (Index (CHAF, 0x00)), Local1)
4976 If (LEqual (Arg0, Local1)) {}
4977 Return (Local0)
4978 }
4979
4980 Method (SFAS, 1, NotSerialized)
4981 {
4982 Store (DerefOf (Index (Arg0, 0x00)), Local0)
4983 And (Local0, 0x0F, Local0)
4984 Store (DerefOf (Index (FBUF, 0x00)), Local1)
4985 If (LGreaterEqual (Local0, Local1))
4986 {
4987 Return (0x00)
4988 }
4989 Else
4990 {
4991 Return (0x01)
4992 }
4993 }
4994
4995 Name (QFNF, 0x00)
4996 Name (QFPF, 0x00)
4997 Method (OCOP, 1, NotSerialized)
4998 {
4999 Store (DerefOf (Index (QFAN, 0x00)), Local1)
5000 If (LEqual (Arg0, Local1))
5001 {
5002 If (LEqual (QFNF, 0x00))
5003 {
5004 Store (QFNE, Local0)
5005 Not (Local0, Local0)
5006 And (Local0, 0x01, Local0)
5007 Store (Local0, Index (CQFN, 0x02))
5008 SPRE (Arg0, QFNE)
5009 Store (0x01, QFNF)
5010 }
5011
5012 Return (CQFN)
5013 }
5014
5015 Store (DerefOf (Index (QFTP, 0x00)), Local1)
5016 If (LEqual (Arg0, Local1))
5017 {
5018 If (LEqual (QFPF, 0x00))
5019 {
5020 Store (QFTE, Index (QFNT, 0x02))
5021 SPRE (Arg0, QFTE)
5022 Store (0x01, QFPF)
5023 }
5024
5025 Return (QFNT)
5026 }
5027 }
5028
5029 Method (PROC, 3, NotSerialized)
5030 {
5031 If (LEqual (Arg2, 0x00))
5032 {
5033 Return (0x01)
5034 }
5035
5036 If (LEqual (Arg2, 0x01))
5037 {
5038 Store (DerefOf (Index (QFAN, 0x00)), Local0)
5039 If (LEqual (Arg0, Local0))
5040 {
5041 If (LEqual (Arg1, 0x00))
5042 {
5043 WBYT (TSAD, 0x5C, 0x62)
5044 WBYT (TSAD, 0x69, 0x5A)
5045 WBYT (TSAD, 0x61, 0x90)
5046 WBYT (TSAD, 0x62, 0xE0)
5047 WBYT (TSAD, 0x64, 0x80)
5048 }
5049
5050 If (LEqual (Arg1, 0x01))
5051 {
5052 WBYT (TSAD, 0x5C, C5C1)
5053 WBYT (TSAD, 0x69, FLT1)
5054 WBYT (TSAD, 0x61, FTG1)
5055 WBYT (TSAD, 0x62, FRP1)
5056 WBYT (TSAD, 0x64, LVT1)
5057 }
5058
5059 Store (Arg1, AIP)
5060 Store (Arg1, Index (CQFN, 0x02))
5061 Store (0x07, AIP2)
5062 Store (0xB0, SCP)
5063 }
5064
5065 Store (DerefOf (Index (QFTP, 0x00)), Local0)
5066 If (LEqual (Arg0, Local0))
5067 {
5068 Store (Arg1, Local1)
5069 Multiply (Local1, 0x10, Local1)
5070 Store (RBYT (TSAD, 0x61), Local2)
5071 And (Local2, 0x0F, Local2)
5072 Or (Local2, Local1, Local2)
5073 WBYT (TSAD, 0x61, Local2)
5074 Store (Arg1, AIP)
5075 Store (Arg1, Index (QFNT, 0x02))
5076 Store (0x08, AIP2)
5077 Store (0xB0, SCP)
5078 }
5079
5080 SPRE (Arg0, Arg1)
5081 Return (0x01)
5082 }
5083 Else
5084 {
5085 Return (0x00)
5086 }
5087 }
5088
5089 Name (CQFN, Package (0x06)
5090 {
5091 0x04060003,
5092 0x00,
5093 0x00,
5094 0x01,
5095 "Disabled",
5096 "Enabled"
5097 })
5098 Name (QFNR, Package (0x09)
5099 {
5100 0x04050004,
5101 0x5A,
5102 0x00,
5103 0x01,
5104 "Auto",
5105 "90%",
5106 "80%",
5107 "70%",
5108 "60%"
5109 })
5110 Name (QFNT, Package (0x14)
5111 {
5112 0x04030005,
5113 0x10,
5114 0x09,
5115 0x01,
5116 "2.0 ",
5117 "2.5 ",
5118 "3.3 ",
5119 "4.0 ",
5120 "5.0 ",
5121 "6.7 ",
5122 "8.0 ",
5123 "10.0",
5124 "13.3",
5125 "16.0",
5126 "20.0",
5127 "26.7",
5128 "32.0",
5129 "40.0",
5130 "53.3",
5131 "80.0"
5132 })
5133 Name (PREB, Package (0x1C)
5134 {
5135 0x02010002,
5136 0x00,
5137 0x07010003,
5138 0x00,
5139 0x08050005,
5140 0x00,
5141 0x08050006,
5142 0x00,
5143 0x04040007,
5144 0x00,
5145 0x01020008,
5146 0x00,
5147 0x02020009,
5148 0x00,
5149 0x0702000A,
5150 0x00,
5151 0x0106000B,
5152 0x00,
5153 0x0906000C,
5154 0x00,
5155 0x04060003,
5156 0x00,
5157 0x04030005,
5158 0x00,
5159 0x01010000,
5160 0x00,
5161 0x01060001,
5162 0x00
5163 })
5164 Name (PRED, Package (0x0A)
5165 {
5166 0x01010000,
5167 0x00,
5168 0x01060001,
5169 0x00,
5170 0x01020008,
5171 0x00,
5172 0x02020009,
5173 0x00,
5174 0x0702000A,
5175 0x00
5176 })
5177 Method (SPRD, 2, NotSerialized)
5178 {
5179 Store (0x00, Local0)
5180 Store (0x01, Local2)
5181 While (Local2)
5182 {
5183 Multiply (Local0, 0x02, Local1)
5184 If (LEqual (DerefOf (Index (PRED, Local1)), Arg0))
5185 {
5186 Add (Local1, 0x01, Local1)
5187 Store (Arg1, Index (PRED, Local1))
5188 Store (0x00, Local2)
5189 }
5190
5191 Increment (Local0)
5192 If (LEqual (Local0, 0x10))
5193 {
5194 Store (0x00, Local2)
5195 }
5196 }
5197 }
5198
5199 Method (GPRE, 1, NotSerialized)
5200 {
5201 If (Arg0)
5202 {
5203 Return (PREB)
5204 }
5205 Else
5206 {
5207 Return (PRED)
5208 }
5209 }
5210
5211 Method (SPRE, 2, NotSerialized)
5212 {
5213 Store (0x00, Local0)
5214 Store (0x01, Local2)
5215 While (Local2)
5216 {
5217 Multiply (Local0, 0x02, Local1)
5218 If (LEqual (DerefOf (Index (PREB, Local1)), Arg0))
5219 {
5220 Add (Local1, 0x01, Local1)
5221 Store (Arg1, Index (PREB, Local1))
5222 Store (0x00, Local2)
5223 }
5224
5225 Increment (Local0)
5226 If (LEqual (Local0, 0x10))
5227 {
5228 Store (0x00, Local2)
5229 }
5230 }
5231 }
5232
5233 Method (GCQV, 1, NotSerialized)
5234 {
5235 If (LEqual (Arg0, 0x00))
5236 {
5237 Store (K8VL, Local0)
5238 Return (Local0)
5239 }
5240 Else
5241 {
5242 If (LEqual (Arg0, 0x01))
5243 {
5244 Store (K8VH, Local0)
5245 Return (Local0)
5246 }
5247 Else
5248 {
5249 If (LEqual (Arg0, 0x02))
5250 {
5251 If (LEqual (CNQC, 0x00))
5252 {
5253 Store (0x01, Local0)
5254 }
5255 Else
5256 {
5257 Store (0x00, Local0)
5258 }
5259
5260 Return (Local0)
5261 }
5262 }
5263 }
5264 }
5265
5266 Method (SPLV, 1, Serialized)
5267 {
5268 Return (Arg0)
5269 }
5270
5271 Method (GPLV, 0, Serialized)
5272 {
5273 Return (0x00)
5274 }
5275
5276 Method (ENGR, 1, NotSerialized)
5277 {
5278 }
5279 }
5280
5281 Name (BUFA, ResourceTemplate ()
5282 {
5283 IRQ (Level, ActiveLow, Shared, )
5284 {5,7,9,10,11,14,15}
5285 })
5286 Name (BUFB, ResourceTemplate ()
5287 {
5288 IRQ (Level, ActiveLow, Shared, _Y10)
5289 {}
5290 })
5291 CreateWordField (BUFB, \_SB.PCI0._Y10._INT, IRQV)
5292 Method (CRS, 1, NotSerialized)
5293 {
5294 If (Arg0)
5295 {
5296 ShiftLeft (0x01, Arg0, IRQV)
5297 }
5298 Else
5299 {
5300 Store (Zero, IRQV)
5301 }
5302
5303 Return (BUFB)
5304 }
5305
5306 Method (SRS, 1, NotSerialized)
5307 {
5308 CreateWordField (Arg0, 0x01, IRQ0)
5309 FindSetRightBit (IRQ0, Local0)
5310 Decrement (Local0)
5311 Return (Local0)
5312 }
5313
5314 Method (CRSA, 1, Serialized)
5315 {
5316 Store (0x00, Local0)
5317 If (LEqual (Arg0, 0x01))
5318 {
5319 Store (0x17, Local0)
5320 }
5321
5322 If (LEqual (Arg0, 0x02))
5323 {
5324 Store (0x16, Local0)
5325 }
5326
5327 If (LEqual (Arg0, 0x03))
5328 {
5329 Store (0x10, Local0)
5330 }
5331
5332 If (LEqual (Arg0, 0x04))
5333 {
5334 Store (0x11, Local0)
5335 }
5336
5337 If (LEqual (Arg0, 0x06))
5338 {
5339 Store (0x12, Local0)
5340 }
5341
5342 If (LEqual (Arg0, 0x08))
5343 {
5344 Store (0x14, Local0)
5345 }
5346
5347 If (LEqual (Arg0, 0x0C))
5348 {
5349 Store (0x13, Local0)
5350 }
5351
5352 If (LEqual (Arg0, 0x0D))
5353 {
5354 Store (0x15, Local0)
5355 }
5356
5357 Name (IRZ5, ResourceTemplate ()
5358 {
5359 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, _Y11)
5360 {
5361 0x00000007,
5362 }
5363 })
5364 CreateWordField (IRZ5, \_SB.PCI0.CRSA._Y11._INT, INZ5)
5365 Store (Local0, INZ5)
5366 Return (IRZ5)
5367 }
5368
5369 Method (SRSA, 1, Serialized)
5370 {
5371 CreateWordField (Arg0, 0x05, INZ6)
5372 Store (0x08, Local0)
5373 If (LEqual (INZ6, 0x10))
5374 {
5375 Store (0x03, Local0)
5376 }
5377
5378 If (LEqual (INZ6, 0x11))
5379 {
5380 Store (0x04, Local0)
5381 }
5382
5383 If (LEqual (INZ6, 0x12))
5384 {
5385 Store (0x06, Local0)
5386 }
5387
5388 If (LEqual (INZ6, 0x13))
5389 {
5390 Store (0x0C, Local0)
5391 }
5392
5393 If (LEqual (INZ6, 0x14))
5394 {
5395 Store (0x08, Local0)
5396 }
5397
5398 If (LEqual (INZ6, 0x15))
5399 {
5400 Store (0x0D, Local0)
5401 }
5402
5403 If (LEqual (INZ6, 0x16))
5404 {
5405 Store (0x02, Local0)
5406 }
5407
5408 If (LEqual (INZ6, 0x17))
5409 {
5410 Store (0x01, Local0)
5411 }
5412
5413 Return (Local0)
5414 }
5415
5416 Device (LNK1)
5417 {
5418 Name (_HID, EisaId ("PNP0C0F"))
5419 Name (_UID, 0x01)
5420 Method (_STA, 0, NotSerialized)
5421 {
5422 If (INTA)
5423 {
5424 Return (0x0B)
5425 }
5426 Else
5427 {
5428 Return (0x09)
5429 }
5430 }
5431
5432 Method (_PRS, 0, NotSerialized)
5433 {
5434 Return (BUFA)
5435 }
5436
5437 Method (_DIS, 0, NotSerialized)
5438 {
5439 Store (0x00, INTA)
5440 }
5441
5442 Method (_CRS, 0, NotSerialized)
5443 {
5444 Return (CRS (INTA))
5445 }
5446
5447 Method (_SRS, 1, NotSerialized)
5448 {
5449 Store (SRS (Arg0), INTA)
5450 }
5451 }
5452
5453 Device (LNK2)
5454 {
5455 Name (_HID, EisaId ("PNP0C0F"))
5456 Name (_UID, 0x02)
5457 Method (_STA, 0, NotSerialized)
5458 {
5459 If (INTB)
5460 {
5461 Return (0x0B)
5462 }
5463 Else
5464 {
5465 Return (0x09)
5466 }
5467 }
5468
5469 Method (_PRS, 0, NotSerialized)
5470 {
5471 Return (BUFA)
5472 }
5473
5474 Method (_DIS, 0, NotSerialized)
5475 {
5476 Store (0x00, INTB)
5477 }
5478
5479 Method (_CRS, 0, NotSerialized)
5480 {
5481 Return (CRS (INTB))
5482 }
5483
5484 Method (_SRS, 1, NotSerialized)
5485 {
5486 Store (SRS (Arg0), INTB)
5487 }
5488 }
5489
5490 Device (LNK3)
5491 {
5492 Name (_HID, EisaId ("PNP0C0F"))
5493 Name (_UID, 0x03)
5494 Method (_STA, 0, NotSerialized)
5495 {
5496 If (INTC)
5497 {
5498 Return (0x0B)
5499 }
5500 Else
5501 {
5502 Return (0x09)
5503 }
5504 }
5505
5506 Method (_PRS, 0, NotSerialized)
5507 {
5508 Return (BUFA)
5509 }
5510
5511 Method (_DIS, 0, NotSerialized)
5512 {
5513 Store (0x00, INTC)
5514 }
5515
5516 Method (_CRS, 0, NotSerialized)
5517 {
5518 Return (CRS (INTC))
5519 }
5520
5521 Method (_SRS, 1, NotSerialized)
5522 {
5523 Store (SRS (Arg0), INTC)
5524 }
5525 }
5526
5527 Device (LNK4)
5528 {
5529 Name (_HID, EisaId ("PNP0C0F"))
5530 Name (_UID, 0x04)
5531 Method (_STA, 0, NotSerialized)
5532 {
5533 If (INTD)
5534 {
5535 Return (0x0B)
5536 }
5537 Else
5538 {
5539 Return (0x09)
5540 }
5541 }
5542
5543 Method (_PRS, 0, NotSerialized)
5544 {
5545 Return (BUFA)
5546 }
5547
5548 Method (_DIS, 0, NotSerialized)
5549 {
5550 Store (0x00, INTD)
5551 }
5552
5553 Method (_CRS, 0, NotSerialized)
5554 {
5555 Return (CRS (INTD))
5556 }
5557
5558 Method (_SRS, 1, NotSerialized)
5559 {
5560 Store (SRS (Arg0), INTD)
5561 }
5562 }
5563
5564 Device (LNK5)
5565 {
5566 Name (_HID, EisaId ("PNP0C0F"))
5567 Name (_UID, 0x05)
5568 Method (_STA, 0, NotSerialized)
5569 {
5570 If (PCEA)
5571 {
5572 Return (0x0B)
5573 }
5574 Else
5575 {
5576 Return (0x09)
5577 }
5578 }
5579
5580 Method (_PRS, 0, NotSerialized)
5581 {
5582 Return (BUFA)
5583 }
5584
5585 Method (_DIS, 0, NotSerialized)
5586 {
5587 Store (0x00, PCEA)
5588 }
5589
5590 Method (_CRS, 0, NotSerialized)
5591 {
5592 Return (CRS (PCEA))
5593 }
5594
5595 Method (_SRS, 1, NotSerialized)
5596 {
5597 Store (SRS (Arg0), PCEA)
5598 }
5599 }
5600
5601 Device (LNK6)
5602 {
5603 Name (_HID, EisaId ("PNP0C0F"))
5604 Name (_UID, 0x06)
5605 Method (_STA, 0, NotSerialized)
5606 {
5607 If (PCEB)
5608 {
5609 Return (0x0B)
5610 }
5611 Else
5612 {
5613 Return (0x09)
5614 }
5615 }
5616
5617 Method (_PRS, 0, NotSerialized)
5618 {
5619 Return (BUFA)
5620 }
5621
5622 Method (_DIS, 0, NotSerialized)
5623 {
5624 Store (0x00, PCEB)
5625 }
5626
5627 Method (_CRS, 0, NotSerialized)
5628 {
5629 Return (CRS (PCEB))
5630 }
5631
5632 Method (_SRS, 1, NotSerialized)
5633 {
5634 Store (SRS (Arg0), PCEB)
5635 }
5636 }
5637
5638 Device (LNK7)
5639 {
5640 Name (_HID, EisaId ("PNP0C0F"))
5641 Name (_UID, 0x07)
5642 Method (_STA, 0, NotSerialized)
5643 {
5644 If (PCEC)
5645 {
5646 Return (0x0B)
5647 }
5648 Else
5649 {
5650 Return (0x09)
5651 }
5652 }
5653
5654 Method (_PRS, 0, NotSerialized)
5655 {
5656 Return (BUFA)
5657 }
5658
5659 Method (_DIS, 0, NotSerialized)
5660 {
5661 Store (0x00, PCEC)
5662 }
5663
5664 Method (_CRS, 0, NotSerialized)
5665 {
5666 Return (CRS (PCEC))
5667 }
5668
5669 Method (_SRS, 1, NotSerialized)
5670 {
5671 Store (SRS (Arg0), PCEC)
5672 }
5673 }
5674
5675 Device (LNK8)
5676 {
5677 Name (_HID, EisaId ("PNP0C0F"))
5678 Name (_UID, 0x08)
5679 Method (_STA, 0, NotSerialized)
5680 {
5681 If (PCED)
5682 {
5683 Return (0x0B)
5684 }
5685 Else
5686 {
5687 Return (0x09)
5688 }
5689 }
5690
5691 Method (_PRS, 0, NotSerialized)
5692 {
5693 Return (BUFA)
5694 }
5695
5696 Method (_DIS, 0, NotSerialized)
5697 {
5698 Store (0x00, PCED)
5699 }
5700
5701 Method (_CRS, 0, NotSerialized)
5702 {
5703 Return (CRS (PCED))
5704 }
5705
5706 Method (_SRS, 1, NotSerialized)
5707 {
5708 Store (SRS (Arg0), PCED)
5709 }
5710 }
5711
5712 Device (LUBA)
5713 {
5714 Name (_HID, EisaId ("PNP0C0F"))
5715 Name (_UID, 0x09)
5716 Method (_STA, 0, NotSerialized)
5717 {
5718 If (INTG)
5719 {
5720 Return (0x0B)
5721 }
5722 Else
5723 {
5724 Return (0x09)
5725 }
5726 }
5727
5728 Method (_PRS, 0, NotSerialized)
5729 {
5730 Return (BUFA)
5731 }
5732
5733 Method (_DIS, 0, NotSerialized)
5734 {
5735 Store (0x00, INTG)
5736 }
5737
5738 Method (_CRS, 0, NotSerialized)
5739 {
5740 Return (CRS (INTG))
5741 }
5742
5743 Method (_SRS, 1, NotSerialized)
5744 {
5745 Store (SRS (Arg0), INTG)
5746 }
5747 }
5748
5749 Device (LUBB)
5750 {
5751 Name (_HID, EisaId ("PNP0C0F"))
5752 Name (_UID, 0x0A)
5753 Method (_STA, 0, NotSerialized)
5754 {
5755 If (INTH)
5756 {
5757 Return (0x0B)
5758 }
5759 Else
5760 {
5761 Return (0x09)
5762 }
5763 }
5764
5765 Method (_PRS, 0, NotSerialized)
5766 {
5767 Return (BUFA)
5768 }
5769
5770 Method (_DIS, 0, NotSerialized)
5771 {
5772 Store (0x00, INTH)
5773 }
5774
5775 Method (_CRS, 0, NotSerialized)
5776 {
5777 Return (CRS (INTH))
5778 }
5779
5780 Method (_SRS, 1, NotSerialized)
5781 {
5782 Store (SRS (Arg0), INTH)
5783 }
5784 }
5785
5786 Device (LMAC)
5787 {
5788 Name (_HID, EisaId ("PNP0C0F"))
5789 Name (_UID, 0x0B)
5790 Method (_STA, 0, NotSerialized)
5791 {
5792 If (INTJ)
5793 {
5794 Return (0x0B)
5795 }
5796 Else
5797 {
5798 Return (0x09)
5799 }
5800 }
5801
5802 Method (_PRS, 0, NotSerialized)
5803 {
5804 Return (BUFA)
5805 }
5806
5807 Method (_DIS, 0, NotSerialized)
5808 {
5809 Store (0x00, INTJ)
5810 }
5811
5812 Method (_CRS, 0, NotSerialized)
5813 {
5814 Return (CRS (INTJ))
5815 }
5816
5817 Method (_SRS, 1, NotSerialized)
5818 {
5819 Store (SRS (Arg0), INTJ)
5820 }
5821 }
5822
5823 Device (LACI)
5824 {
5825 Name (_HID, EisaId ("PNP0C0F"))
5826 Name (_UID, 0x0C)
5827 Method (_STA, 0, NotSerialized)
5828 {
5829 If (INTL)
5830 {
5831 Return (0x0B)
5832 }
5833 Else
5834 {
5835 Return (0x09)
5836 }
5837 }
5838
5839 Method (_PRS, 0, NotSerialized)
5840 {
5841 Return (BUFA)
5842 }
5843
5844 Method (_DIS, 0, NotSerialized)
5845 {
5846 Store (0x00, INTL)
5847 }
5848
5849 Method (_CRS, 0, NotSerialized)
5850 {
5851 Return (CRS (INTL))
5852 }
5853
5854 Method (_SRS, 1, NotSerialized)
5855 {
5856 Store (SRS (Arg0), INTL)
5857 }
5858 }
5859
5860 Device (LAZA)
5861 {
5862 Name (_HID, EisaId ("PNP0C0F"))
5863 Name (_UID, 0x0D)
5864 Method (_STA, 0, NotSerialized)
5865 {
5866 If (INTK)
5867 {
5868 Return (0x0B)
5869 }
5870 Else
5871 {
5872 Return (0x09)
5873 }
5874 }
5875
5876 Method (_PRS, 0, NotSerialized)
5877 {
5878 Return (BUFA)
5879 }
5880
5881 Method (_DIS, 0, NotSerialized)
5882 {
5883 Store (0x00, INTK)
5884 }
5885
5886 Method (_CRS, 0, NotSerialized)
5887 {
5888 Return (CRS (INTK))
5889 }
5890
5891 Method (_SRS, 1, NotSerialized)
5892 {
5893 Store (SRS (Arg0), INTK)
5894 }
5895 }
5896
5897 Device (LPMU)
5898 {
5899 Name (_HID, EisaId ("PNP0C0F"))
5900 Name (_UID, 0x0E)
5901 Method (_STA, 0, NotSerialized)
5902 {
5903 If (INTS)
5904 {
5905 Return (0x0B)
5906 }
5907 Else
5908 {
5909 Return (0x09)
5910 }
5911 }
5912
5913 Method (_PRS, 0, NotSerialized)
5914 {
5915 Return (BUFA)
5916 }
5917
5918 Method (_DIS, 0, NotSerialized)
5919 {
5920 Store (0x00, INTS)
5921 }
5922
5923 Method (_CRS, 0, NotSerialized)
5924 {
5925 Return (CRS (INTS))
5926 }
5927
5928 Method (_SRS, 1, NotSerialized)
5929 {
5930 Store (SRS (Arg0), INTS)
5931 }
5932 }
5933
5934 Device (LMCI)
5935 {
5936 Name (_HID, EisaId ("PNP0C0F"))
5937 Name (_UID, 0x0F)
5938 Method (_STA, 0, NotSerialized)
5939 {
5940 If (INTM)
5941 {
5942 Return (0x0B)
5943 }
5944 Else
5945 {
5946 Return (0x09)
5947 }
5948 }
5949
5950 Method (_PRS, 0, NotSerialized)
5951 {
5952 Return (BUFA)
5953 }
5954
5955 Method (_DIS, 0, NotSerialized)
5956 {
5957 Store (0x00, INTM)
5958 }
5959
5960 Method (_CRS, 0, NotSerialized)
5961 {
5962 Return (CRS (INTM))
5963 }
5964
5965 Method (_SRS, 1, NotSerialized)
5966 {
5967 Store (SRS (Arg0), INTM)
5968 }
5969 }
5970
5971 Device (LSMB)
5972 {
5973 Name (_HID, EisaId ("PNP0C0F"))
5974 Name (_UID, 0x10)
5975 Method (_STA, 0, NotSerialized)
5976 {
5977 If (INTF)
5978 {
5979 Return (0x0B)
5980 }
5981 Else
5982 {
5983 Return (0x09)
5984 }
5985 }
5986
5987 Method (_PRS, 0, NotSerialized)
5988 {
5989 Return (BUFA)
5990 }
5991
5992 Method (_DIS, 0, NotSerialized)
5993 {
5994 Store (0x00, INTF)
5995 }
5996
5997 Method (_CRS, 0, NotSerialized)
5998 {
5999 Return (CRS (INTF))
6000 }
6001
6002 Method (_SRS, 1, NotSerialized)
6003 {
6004 Store (SRS (Arg0), INTF)
6005 }
6006 }
6007
6008 Device (LUB2)
6009 {
6010 Name (_HID, EisaId ("PNP0C0F"))
6011 Name (_UID, 0x11)
6012 Method (_STA, 0, NotSerialized)
6013 {
6014 If (INTQ)
6015 {
6016 Return (0x0B)
6017 }
6018 Else
6019 {
6020 Return (0x09)
6021 }
6022 }
6023
6024 Method (_PRS, 0, NotSerialized)
6025 {
6026 Return (BUFA)
6027 }
6028
6029 Method (_DIS, 0, NotSerialized)
6030 {
6031 Store (0x00, INTQ)
6032 }
6033
6034 Method (_CRS, 0, NotSerialized)
6035 {
6036 Return (CRS (INTQ))
6037 }
6038
6039 Method (_SRS, 1, NotSerialized)
6040 {
6041 Store (SRS (Arg0), INTQ)
6042 }
6043 }
6044
6045 Device (LIDE)
6046 {
6047 Name (_HID, EisaId ("PNP0C0F"))
6048 Name (_UID, 0x12)
6049 Method (_STA, 0, NotSerialized)
6050 {
6051 If (INTN)
6052 {
6053 Return (0x0B)
6054 }
6055 Else
6056 {
6057 Return (0x09)
6058 }
6059 }
6060
6061 Method (_PRS, 0, NotSerialized)
6062 {
6063 Return (BUFA)
6064 }
6065
6066 Method (_DIS, 0, NotSerialized)
6067 {
6068 Store (0x00, INTN)
6069 }
6070
6071 Method (_CRS, 0, NotSerialized)
6072 {
6073 Return (CRS (INTN))
6074 }
6075
6076 Method (_SRS, 1, NotSerialized)
6077 {
6078 Store (SRS (Arg0), INTN)
6079 }
6080 }
6081
6082 Device (LSID)
6083 {
6084 Name (_HID, EisaId ("PNP0C0F"))
6085 Name (_UID, 0x13)
6086 Method (_STA, 0, NotSerialized)
6087 {
6088 If (ITID)
6089 {
6090 Return (0x0B)
6091 }
6092 Else
6093 {
6094 Return (0x09)
6095 }
6096 }
6097
6098 Method (_PRS, 0, NotSerialized)
6099 {
6100 Return (BUFA)
6101 }
6102
6103 Method (_DIS, 0, NotSerialized)
6104 {
6105 Store (0x00, ITID)
6106 }
6107
6108 Method (_CRS, 0, NotSerialized)
6109 {
6110 Return (CRS (ITID))
6111 }
6112
6113 Method (_SRS, 1, NotSerialized)
6114 {
6115 Store (SRS (Arg0), ITID)
6116 }
6117 }
6118
6119 Device (LFID)
6120 {
6121 Name (_HID, EisaId ("PNP0C0F"))
6122 Name (_UID, 0x14)
6123 Method (_STA, 0, NotSerialized)
6124 {
6125 If (IS0P)
6126 {
6127 Return (0x0B)
6128 }
6129 Else
6130 {
6131 Return (0x09)
6132 }
6133 }
6134
6135 Method (_PRS, 0, NotSerialized)
6136 {
6137 Return (BUFA)
6138 }
6139
6140 Method (_DIS, 0, NotSerialized)
6141 {
6142 Store (0x00, IS0P)
6143 }
6144
6145 Method (_CRS, 0, NotSerialized)
6146 {
6147 Return (CRS (IS0P))
6148 }
6149
6150 Method (_SRS, 1, NotSerialized)
6151 {
6152 Store (SRS (Arg0), IS0P)
6153 }
6154 }
6155
6156 Name (BUF1, ResourceTemplate ()
6157 {
6158 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6159 {
6160 0x00000010,
6161 }
6162 })
6163 Name (BUF2, ResourceTemplate ()
6164 {
6165 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6166 {
6167 0x00000011,
6168 }
6169 })
6170 Name (BUF3, ResourceTemplate ()
6171 {
6172 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6173 {
6174 0x00000012,
6175 }
6176 })
6177 Name (BUF4, ResourceTemplate ()
6178 {
6179 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6180 {
6181 0x00000013,
6182 }
6183 })
6184 Name (BUFF, ResourceTemplate ()
6185 {
6186 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6187 {
6188 0x00000014,
6189 0x00000015,
6190 0x00000016,
6191 0x00000017,
6192 }
6193 })
6194 Name (BUFH, ResourceTemplate ()
6195 {
6196 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6197 {
6198 0x0000000B,
6199 }
6200 })
6201 Name (BUFI, ResourceTemplate ()
6202 {
6203 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6204 {
6205 0x00000017,
6206 }
6207 })
6208 Name (IRZ1, ResourceTemplate ()
6209 {
6210 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6211 {
6212 0x00000007,
6213 }
6214 })
6215 Device (APC1)
6216 {
6217 Name (_HID, EisaId ("PNP0C0F"))
6218 Name (_UID, 0x15)
6219 Method (_STA, 0, NotSerialized)
6220 {
6221 If (LAnd (INTA, PICF))
6222 {
6223 Return (0x0B)
6224 }
6225 Else
6226 {
6227 Return (0x09)
6228 }
6229 }
6230
6231 Method (_PRS, 0, NotSerialized)
6232 {
6233 Return (BUF1)
6234 }
6235
6236 Method (_DIS, 0, NotSerialized)
6237 {
6238 Store (0x00, INTA)
6239 }
6240
6241 Method (_CRS, 0, NotSerialized)
6242 {
6243 Return (CRSA (INTA))
6244 }
6245
6246 Method (_SRS, 1, NotSerialized)
6247 {
6248 Store (SRSA (Arg0), INTA)
6249 }
6250 }
6251
6252 Device (APC2)
6253 {
6254 Name (_HID, EisaId ("PNP0C0F"))
6255 Name (_UID, 0x16)
6256 Method (_STA, 0, NotSerialized)
6257 {
6258 If (LAnd (INTB, PICF))
6259 {
6260 Return (0x0B)
6261 }
6262 Else
6263 {
6264 Return (0x09)
6265 }
6266 }
6267
6268 Method (_PRS, 0, NotSerialized)
6269 {
6270 Return (BUF2)
6271 }
6272
6273 Method (_DIS, 0, NotSerialized)
6274 {
6275 Store (0x00, INTB)
6276 }
6277
6278 Method (_CRS, 0, NotSerialized)
6279 {
6280 Return (CRSA (INTB))
6281 }
6282
6283 Method (_SRS, 1, NotSerialized)
6284 {
6285 Store (SRSA (Arg0), INTB)
6286 }
6287 }
6288
6289 Device (APC3)
6290 {
6291 Name (_HID, EisaId ("PNP0C0F"))
6292 Name (_UID, 0x17)
6293 Method (_STA, 0, NotSerialized)
6294 {
6295 If (LAnd (INTC, PICF))
6296 {
6297 Return (0x0B)
6298 }
6299 Else
6300 {
6301 Return (0x09)
6302 }
6303 }
6304
6305 Method (_PRS, 0, NotSerialized)
6306 {
6307 Return (BUF3)
6308 }
6309
6310 Method (_DIS, 0, NotSerialized)
6311 {
6312 Store (0x00, INTC)
6313 }
6314
6315 Method (_CRS, 0, NotSerialized)
6316 {
6317 Return (CRSA (INTC))
6318 }
6319
6320 Method (_SRS, 1, NotSerialized)
6321 {
6322 Store (SRSA (Arg0), INTC)
6323 }
6324 }
6325
6326 Device (APC4)
6327 {
6328 Name (_HID, EisaId ("PNP0C0F"))
6329 Name (_UID, 0x18)
6330 Method (_STA, 0, NotSerialized)
6331 {
6332 If (LAnd (INTD, PICF))
6333 {
6334 Return (0x0B)
6335 }
6336 Else
6337 {
6338 Return (0x09)
6339 }
6340 }
6341
6342 Method (_PRS, 0, NotSerialized)
6343 {
6344 Return (BUF4)
6345 }
6346
6347 Method (_DIS, 0, NotSerialized)
6348 {
6349 Store (0x00, INTD)
6350 }
6351
6352 Method (_CRS, 0, NotSerialized)
6353 {
6354 Return (CRSA (INTD))
6355 }
6356
6357 Method (_SRS, 1, NotSerialized)
6358 {
6359 Store (SRSA (Arg0), INTD)
6360 }
6361 }
6362
6363 Device (APC5)
6364 {
6365 Name (_HID, EisaId ("PNP0C0F"))
6366 Name (_UID, 0x19)
6367 Method (_STA, 0, NotSerialized)
6368 {
6369 If (LAnd (PCEA, PICF))
6370 {
6371 Return (0x0B)
6372 }
6373 Else
6374 {
6375 Return (0x09)
6376 }
6377 }
6378
6379 Method (_PRS, 0, NotSerialized)
6380 {
6381 Return (BUF1)
6382 }
6383
6384 Method (_DIS, 0, NotSerialized)
6385 {
6386 Store (0x00, PCEA)
6387 }
6388
6389 Method (_CRS, 0, NotSerialized)
6390 {
6391 Return (CRSA (PCEA))
6392 }
6393
6394 Method (_SRS, 1, NotSerialized)
6395 {
6396 Store (SRSA (Arg0), PCEA)
6397 }
6398 }
6399
6400 Device (APC6)
6401 {
6402 Name (_HID, EisaId ("PNP0C0F"))
6403 Name (_UID, 0x1A)
6404 Method (_STA, 0, NotSerialized)
6405 {
6406 If (LAnd (PCEB, PICF))
6407 {
6408 Return (0x0B)
6409 }
6410 Else
6411 {
6412 Return (0x09)
6413 }
6414 }
6415
6416 Method (_PRS, 0, NotSerialized)
6417 {
6418 Return (BUF1)
6419 }
6420
6421 Method (_DIS, 0, NotSerialized)
6422 {
6423 Store (0x00, PCEB)
6424 }
6425
6426 Method (_CRS, 0, NotSerialized)
6427 {
6428 Return (CRSA (PCEB))
6429 }
6430
6431 Method (_SRS, 1, NotSerialized)
6432 {
6433 Store (SRSA (Arg0), PCEB)
6434 }
6435 }
6436
6437 Device (APC7)
6438 {
6439 Name (_HID, EisaId ("PNP0C0F"))
6440 Name (_UID, 0x1B)
6441 Method (_STA, 0, NotSerialized)
6442 {
6443 If (LAnd (PCEC, PICF))
6444 {
6445 Return (0x0B)
6446 }
6447 Else
6448 {
6449 Return (0x09)
6450 }
6451 }
6452
6453 Method (_PRS, 0, NotSerialized)
6454 {
6455 Return (BUF1)
6456 }
6457
6458 Method (_DIS, 0, NotSerialized)
6459 {
6460 Store (0x00, PCEC)
6461 }
6462
6463 Method (_CRS, 0, NotSerialized)
6464 {
6465 Return (CRSA (PCEC))
6466 }
6467
6468 Method (_SRS, 1, NotSerialized)
6469 {
6470 Store (SRSA (Arg0), PCEC)
6471 }
6472 }
6473
6474 Device (APC8)
6475 {
6476 Name (_HID, EisaId ("PNP0C0F"))
6477 Name (_UID, 0x1C)
6478 Method (_STA, 0, NotSerialized)
6479 {
6480 If (LAnd (PCED, PICF))
6481 {
6482 Return (0x0B)
6483 }
6484 Else
6485 {
6486 Return (0x09)
6487 }
6488 }
6489
6490 Method (_PRS, 0, NotSerialized)
6491 {
6492 Return (BUF1)
6493 }
6494
6495 Method (_DIS, 0, NotSerialized)
6496 {
6497 Store (0x00, PCED)
6498 }
6499
6500 Method (_CRS, 0, NotSerialized)
6501 {
6502 Return (CRSA (PCED))
6503 }
6504
6505 Method (_SRS, 1, NotSerialized)
6506 {
6507 Store (SRSA (Arg0), PCED)
6508 }
6509 }
6510
6511 Device (APCF)
6512 {
6513 Name (_HID, EisaId ("PNP0C0F"))
6514 Name (_UID, 0x1D)
6515 Method (_STA, 0, NotSerialized)
6516 {
6517 If (LAnd (INTG, PICF))
6518 {
6519 Return (0x0B)
6520 }
6521 Else
6522 {
6523 Return (0x09)
6524 }
6525 }
6526
6527 Method (_PRS, 0, NotSerialized)
6528 {
6529 Return (BUFF)
6530 }
6531
6532 Method (_DIS, 0, NotSerialized)
6533 {
6534 Store (0x00, INTG)
6535 }
6536
6537 Method (_CRS, 0, NotSerialized)
6538 {
6539 Return (CRSA (INTG))
6540 }
6541
6542 Method (_SRS, 1, NotSerialized)
6543 {
6544 Store (SRSA (Arg0), INTG)
6545 }
6546 }
6547
6548 Device (APCG)
6549 {
6550 Name (_HID, EisaId ("PNP0C0F"))
6551 Name (_UID, 0x1E)
6552 Method (_STA, 0, NotSerialized)
6553 {
6554 If (LAnd (INTH, PICF))
6555 {
6556 Return (0x0B)
6557 }
6558 Else
6559 {
6560 Return (0x09)
6561 }
6562 }
6563
6564 Method (_PRS, 0, NotSerialized)
6565 {
6566 Return (BUFF)
6567 }
6568
6569 Method (_DIS, 0, NotSerialized)
6570 {
6571 Store (0x00, INTH)
6572 }
6573
6574 Method (_CRS, 0, NotSerialized)
6575 {
6576 Return (CRSA (INTH))
6577 }
6578
6579 Method (_SRS, 1, NotSerialized)
6580 {
6581 Store (SRSA (Arg0), INTH)
6582 }
6583 }
6584
6585 Device (APCH)
6586 {
6587 Name (_HID, EisaId ("PNP0C0F"))
6588 Name (_UID, 0x1F)
6589 Method (_STA, 0, NotSerialized)
6590 {
6591 If (LAnd (INTJ, PICF))
6592 {
6593 Return (0x0B)
6594 }
6595 Else
6596 {
6597 Return (0x09)
6598 }
6599 }
6600
6601 Method (_PRS, 0, NotSerialized)
6602 {
6603 Return (BUFF)
6604 }
6605
6606 Method (_DIS, 0, NotSerialized)
6607 {
6608 Store (0x00, INTJ)
6609 }
6610
6611 Method (_CRS, 0, NotSerialized)
6612 {
6613 Return (CRSA (INTJ))
6614 }
6615
6616 Method (_SRS, 1, NotSerialized)
6617 {
6618 Store (SRSA (Arg0), INTJ)
6619 }
6620 }
6621
6622 Device (APCJ)
6623 {
6624 Name (_HID, EisaId ("PNP0C0F"))
6625 Name (_UID, 0x20)
6626 Method (_STA, 0, NotSerialized)
6627 {
6628 If (LAnd (INTL, PICF))
6629 {
6630 Return (0x0B)
6631 }
6632 Else
6633 {
6634 Return (0x09)
6635 }
6636 }
6637
6638 Method (_PRS, 0, NotSerialized)
6639 {
6640 Return (BUFF)
6641 }
6642
6643 Method (_DIS, 0, NotSerialized)
6644 {
6645 Store (0x00, INTL)
6646 }
6647
6648 Method (_CRS, 0, NotSerialized)
6649 {
6650 Return (CRSA (INTL))
6651 }
6652
6653 Method (_SRS, 1, NotSerialized)
6654 {
6655 Store (SRSA (Arg0), INTL)
6656 }
6657 }
6658
6659 Device (APMU)
6660 {
6661 Name (_HID, EisaId ("PNP0C0F"))
6662 Name (_UID, 0x21)
6663 Method (_STA, 0, NotSerialized)
6664 {
6665 If (LAnd (INTS, PICF))
6666 {
6667 Return (0x0B)
6668 }
6669 Else
6670 {
6671 Return (0x09)
6672 }
6673 }
6674
6675 Method (_PRS, 0, NotSerialized)
6676 {
6677 Return (BUFF)
6678 }
6679
6680 Method (_DIS, 0, NotSerialized)
6681 {
6682 Store (0x00, INTS)
6683 }
6684
6685 Method (_CRS, 0, NotSerialized)
6686 {
6687 Return (CRSA (INTS))
6688 }
6689
6690 Method (_SRS, 1, NotSerialized)
6691 {
6692 Store (SRSA (Arg0), INTS)
6693 }
6694 }
6695
6696 Device (AAZA)
6697 {
6698 Name (_HID, EisaId ("PNP0C0F"))
6699 Name (_UID, 0x22)
6700 Method (_STA, 0, NotSerialized)
6701 {
6702 If (LAnd (INTK, PICF))
6703 {
6704 Return (0x0B)
6705 }
6706 Else
6707 {
6708 Return (0x09)
6709 }
6710 }
6711
6712 Method (_PRS, 0, NotSerialized)
6713 {
6714 Return (BUFF)
6715 }
6716
6717 Method (_DIS, 0, NotSerialized)
6718 {
6719 Store (0x00, INTK)
6720 }
6721
6722 Method (_CRS, 0, NotSerialized)
6723 {
6724 Return (CRSA (INTK))
6725 }
6726
6727 Method (_SRS, 1, NotSerialized)
6728 {
6729 Store (SRSA (Arg0), INTK)
6730 }
6731 }
6732
6733 Device (APCK)
6734 {
6735 Name (_HID, EisaId ("PNP0C0F"))
6736 Name (_UID, 0x23)
6737 Method (_STA, 0, NotSerialized)
6738 {
6739 If (LAnd (INTM, PICF))
6740 {
6741 Return (0x0B)
6742 }
6743 Else
6744 {
6745 Return (0x09)
6746 }
6747 }
6748
6749 Method (_PRS, 0, NotSerialized)
6750 {
6751 Return (BUFF)
6752 }
6753
6754 Method (_DIS, 0, NotSerialized)
6755 {
6756 Store (0x00, INTM)
6757 }
6758
6759 Method (_CRS, 0, NotSerialized)
6760 {
6761 Return (CRSA (INTM))
6762 }
6763
6764 Method (_SRS, 1, NotSerialized)
6765 {
6766 Store (SRSA (Arg0), INTM)
6767 }
6768 }
6769
6770 Device (APCS)
6771 {
6772 Name (_HID, EisaId ("PNP0C0F"))
6773 Name (_UID, 0x24)
6774 Method (_STA, 0, NotSerialized)
6775 {
6776 If (LAnd (INTF, PICF))
6777 {
6778 Return (0x0B)
6779 }
6780 Else
6781 {
6782 Return (0x09)
6783 }
6784 }
6785
6786 Method (_PRS, 0, NotSerialized)
6787 {
6788 Return (BUFF)
6789 }
6790
6791 Method (_DIS, 0, NotSerialized)
6792 {
6793 Store (0x00, INTF)
6794 }
6795
6796 Method (_CRS, 0, NotSerialized)
6797 {
6798 Return (CRSA (INTF))
6799 }
6800
6801 Method (_SRS, 1, NotSerialized)
6802 {
6803 Store (SRSA (Arg0), INTF)
6804 }
6805 }
6806
6807 Device (APCL)
6808 {
6809 Name (_HID, EisaId ("PNP0C0F"))
6810 Name (_UID, 0x25)
6811 Method (_STA, 0, NotSerialized)
6812 {
6813 If (LAnd (INTQ, PICF))
6814 {
6815 Return (0x0B)
6816 }
6817 Else
6818 {
6819 Return (0x09)
6820 }
6821 }
6822
6823 Method (_PRS, 0, NotSerialized)
6824 {
6825 Return (BUFF)
6826 }
6827
6828 Method (_DIS, 0, NotSerialized)
6829 {
6830 Store (0x00, INTQ)
6831 }
6832
6833 Method (_CRS, 0, NotSerialized)
6834 {
6835 Return (CRSA (INTQ))
6836 }
6837
6838 Method (_SRS, 1, NotSerialized)
6839 {
6840 Store (SRSA (Arg0), INTQ)
6841 }
6842 }
6843
6844 Device (APCM)
6845 {
6846 Name (_HID, EisaId ("PNP0C0F"))
6847 Name (_UID, 0x26)
6848 Method (_STA, 0, NotSerialized)
6849 {
6850 If (LAnd (INTU, PICF))
6851 {
6852 Return (0x0B)
6853 }
6854 Else
6855 {
6856 Return (0x09)
6857 }
6858 }
6859
6860 Method (_PRS, 0, NotSerialized)
6861 {
6862 Return (BUFF)
6863 }
6864
6865 Method (_DIS, 0, NotSerialized)
6866 {
6867 Store (0x00, INTU)
6868 }
6869
6870 Method (_CRS, 0, NotSerialized)
6871 {
6872 Return (CRSA (INTU))
6873 }
6874
6875 Method (_SRS, 1, NotSerialized)
6876 {
6877 Store (SRSA (Arg0), INTU)
6878 }
6879 }
6880
6881 Device (APCZ)
6882 {
6883 Name (_HID, EisaId ("PNP0C0F"))
6884 Name (_UID, 0x27)
6885 Method (_STA, 0, NotSerialized)
6886 {
6887 If (LAnd (INTN, PICF))
6888 {
6889 Return (0x0B)
6890 }
6891 Else
6892 {
6893 Return (0x09)
6894 }
6895 }
6896
6897 Method (_PRS, 0, NotSerialized)
6898 {
6899 Return (BUFF)
6900 }
6901
6902 Method (_DIS, 0, NotSerialized)
6903 {
6904 Store (0x00, INTN)
6905 }
6906
6907 Method (_CRS, 0, NotSerialized)
6908 {
6909 Return (CRSA (INTN))
6910 }
6911
6912 Method (_SRS, 1, NotSerialized)
6913 {
6914 Store (SRSA (Arg0), INTN)
6915 }
6916 }
6917
6918 Device (APSI)
6919 {
6920 Name (_HID, EisaId ("PNP0C0F"))
6921 Name (_UID, 0x28)
6922 Method (_STA, 0, NotSerialized)
6923 {
6924 If (LAnd (ITID, PICF))
6925 {
6926 Return (0x0B)
6927 }
6928 Else
6929 {
6930 Return (0x09)
6931 }
6932 }
6933
6934 Method (_DIS, 0, NotSerialized)
6935 {
6936 Store (0x00, ITID)
6937 }
6938
6939 Method (_PRS, 0, NotSerialized)
6940 {
6941 Return (BUFF)
6942 }
6943
6944 Method (_CRS, 0, NotSerialized)
6945 {
6946 Return (CRSA (ITID))
6947 }
6948
6949 Method (_SRS, 1, NotSerialized)
6950 {
6951 Store (SRSA (Arg0), ITID)
6952 }
6953 }
6954
6955 Device (APSJ)
6956 {
6957 Name (_HID, EisaId ("PNP0C0F"))
6958 Name (_UID, 0x29)
6959 Method (_STA, 0, NotSerialized)
6960 {
6961 If (LAnd (IS0P, PICF))
6962 {
6963 Return (0x0B)
6964 }
6965 Else
6966 {
6967 Return (0x09)
6968 }
6969 }
6970
6971 Method (_DIS, 0, NotSerialized)
6972 {
6973 Store (0x00, IS0P)
6974 }
6975
6976 Method (_PRS, 0, NotSerialized)
6977 {
6978 Return (BUFF)
6979 }
6980
6981 Method (_CRS, 0, NotSerialized)
6982 {
6983 Return (CRSA (IS0P))
6984 }
6985
6986 Method (_SRS, 1, NotSerialized)
6987 {
6988 Store (SRSA (Arg0), IS0P)
6989 }
6990 }
6991 }
6992
6993 OperationRegion (SXTM, SystemMemory, 0x000FFF34, 0x04)
6994 Field (SXTM, WordAcc, NoLock, Preserve)
6995 {
6996 SMEM, 32
6997 }
6998
6999 OperationRegion (ACPM, SystemMemory, 0x3DEF2C00, 0x0400)
7000 Field (ACPM, ByteAcc, NoLock, Preserve)
7001 {
7002 QFNE, 8,
7003 QFTE, 8,
7004 C5C1, 8,
7005 FLT1, 8,
7006 FTG1, 8,
7007 FRP1, 8,
7008 LVT1, 8,
7009 CNQC, 8,
7010 K8VH, 16,
7011 K8VL, 16,
7012 K8HT, 8,
7013 REVG, 8,
7014 AIP, 8,
7015 AIP2, 8,
7016 WAKF, 8
7017 }
7018
7019 Device (MEM)
7020 {
7021 Name (_HID, EisaId ("PNP0C01"))
7022 Method (_CRS, 0, NotSerialized)
7023 {
7024 Name (BUF0, ResourceTemplate ()
7025 {
7026 Memory32Fixed (ReadWrite,
7027 0x000F0000, // Address Base
7028 0x00004000, // Address Length
7029 _Y13)
7030 Memory32Fixed (ReadWrite,
7031 0x000F4000, // Address Base
7032 0x00004000, // Address Length
7033 _Y14)
7034 Memory32Fixed (ReadWrite,
7035 0x000F8000, // Address Base
7036 0x00004000, // Address Length
7037 _Y15)
7038 Memory32Fixed (ReadWrite,
7039 0x000FC000, // Address Base
7040 0x00004000, // Address Length
7041 _Y16)
7042 Memory32Fixed (ReadWrite,
7043 0xFEFFF000, // Address Base
7044 0x00000100, // Address Length
7045 )
7046 Memory32Fixed (ReadWrite,
7047 0x00000000, // Address Base
7048 0x00010000, // Address Length
7049 _Y12)
7050 Memory32Fixed (ReadWrite,
7051 0xFFFF0000, // Address Base
7052 0x00010000, // Address Length
7053 )
7054 Memory32Fixed (ReadWrite,
7055 0x00000000, // Address Base
7056 0x000A0000, // Address Length
7057 )
7058 Memory32Fixed (ReadWrite,
7059 0x00100000, // Address Base
7060 0x00000000, // Address Length
7061 _Y17)
7062 Memory32Fixed (ReadWrite,
7063 0x00000000, // Address Base
7064 0x00000000, // Address Length
7065 _Y18)
7066 Memory32Fixed (ReadWrite,
7067 0xFEC00000, // Address Base
7068 0x00001000, // Address Length
7069 )
7070 Memory32Fixed (ReadWrite,
7071 0xFEE00000, // Address Base
7072 0x00100000, // Address Length
7073 )
7074 Memory32Fixed (ReadWrite,
7075 0xFEFFF000, // Address Base
7076 0x00001000, // Address Length
7077 )
7078 Memory32Fixed (ReadWrite,
7079 0xFFF80000, // Address Base
7080 0x00001000, // Address Length
7081 )
7082 Memory32Fixed (ReadWrite,
7083 0xFFF90000, // Address Base
7084 0x00030000, // Address Length
7085 )
7086 Memory32Fixed (ReadWrite,
7087 0xFFFED000, // Address Base
7088 0x00003000, // Address Length
7089 )
7090 })
7091 CreateDWordField (BUF0, \_SB.MEM._CRS._Y12._BAS, ACMM)
7092 CreateDWordField (BUF0, \_SB.MEM._CRS._Y13._BAS, RMA1)
7093 CreateDWordField (BUF0, \_SB.MEM._CRS._Y13._LEN, RSS1)
7094 CreateDWordField (BUF0, \_SB.MEM._CRS._Y14._BAS, RMA2)
7095 CreateDWordField (BUF0, \_SB.MEM._CRS._Y14._LEN, RSS2)
7096 CreateDWordField (BUF0, \_SB.MEM._CRS._Y15._BAS, RMA3)
7097 CreateDWordField (BUF0, \_SB.MEM._CRS._Y15._LEN, RSS3)
7098 CreateDWordField (BUF0, \_SB.MEM._CRS._Y16._BAS, RMA4)
7099 CreateDWordField (BUF0, \_SB.MEM._CRS._Y16._LEN, RSS4)
7100 CreateDWordField (BUF0, \_SB.MEM._CRS._Y17._LEN, EXTM)
7101 CreateDWordField (BUF0, \_SB.MEM._CRS._Y18._BAS, SXT1)
7102 CreateDWordField (BUF0, \_SB.MEM._CRS._Y18._LEN, SXT2)
7103 If (LNotEqual (SMEM, Zero))
7104 {
7105 Add (AMEM, 0x00010000, SXT1)
7106 }
7107 Else
7108 {
7109 Store (Zero, SXT1)
7110 }
7111
7112 Store (SMEM, SXT2)
7113 Subtract (AMEM, 0x00100000, EXTM)
7114 If (LNotEqual (ROM1, Zero))
7115 {
7116 Store (RMA1, RMA2)
7117 ShiftLeft (ROM1, 0x08, Local0)
7118 Store (Local0, RMA1)
7119 ShiftLeft (RMS1, 0x08, Local0)
7120 Store (Local0, RSS1)
7121 Store (0x8000, RSS2)
7122 }
7123
7124 If (LNotEqual (ROM2, Zero))
7125 {
7126 Store (RMA2, RMA3)
7127 ShiftLeft (ROM2, 0x08, Local0)
7128 Store (Local0, RMA2)
7129 ShiftLeft (RMS2, 0x08, Local0)
7130 Store (Local0, RSS2)
7131 Store (0xC000, RSS3)
7132 }
7133
7134 If (LNotEqual (ROM3, Zero))
7135 {
7136 Store (RMA3, RMA4)
7137 ShiftLeft (ROM3, 0x08, Local0)
7138 Store (Local0, RMA3)
7139 ShiftLeft (RMS3, 0x08, Local0)
7140 Store (Local0, RSS3)
7141 Store (0x00010000, RSS4)
7142 }
7143
7144 Store (AMEM, ACMM)
7145 Return (BUF0)
7146 }
7147 }
7148
7149 Device (\_SB.PCI0.EXPL)
7150 {
7151 Name (_HID, EisaId ("PNP0C02"))
7152 Name (_UID, 0x04)
7153 Method (_CRS, 0, NotSerialized)
7154 {
7155 Name (BUF0, ResourceTemplate ()
7156 {
7157 Memory32Fixed (ReadWrite,
7158 0xF0000000, // Address Base
7159 0x04000000, // Address Length
7160 )
7161 })
7162 Return (BUF0)
7163 }
7164 }
7165 }
7166
7167 OperationRegion (TEMM, SystemMemory, 0x000FF810, 0x0C)
7168 Field (TEMM, WordAcc, NoLock, Preserve)
7169 {
7170 TP1H, 16,
7171 TP1L, 16,
7172 TP2H, 16,
7173 TP2L, 16,
7174 TRPC, 16,
7175 SENF, 16
7176 }
7177
7178 Name (TVAR, Buffer (0x05)
7179 {
7180 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00
7181 })
7182 CreateByteField (TVAR, 0x00, PLCY)
7183 CreateWordField (TVAR, 0x01, CTOS)
7184 CreateWordField (TVAR, 0x03, CTHY)
7185 Name (TBUF, Buffer (0x04)
7186 {
7187 /* 0000 */ 0x00, 0x00, 0x00, 0x00
7188 })
7189 CreateByteField (TBUF, 0x00, DB00)
7190 CreateByteField (TBUF, 0x01, DB01)
7191 CreateWordField (TBUF, 0x00, DW00)
7192 CreateWordField (TBUF, 0x02, DW01)
7193 CreateDWordField (TBUF, 0x00, DATD)
7194 Name (TSAD, 0x5C)
7195 Method (STOS, 3, NotSerialized)
7196 {
7197 WBYT (TSAD, 0x4F, Local0)
7198 }
7199
7200 Method (STHY, 3, NotSerialized)
7201 {
7202 WBYT (TSAD, 0x4F, Arg1)
7203 }
7204
7205 Method (RTMP, 0, NotSerialized)
7206 {
7207 Store (RBYT (TSAD, 0x27), Local0)
7208 If (LLess (Local0, 0x80))
7209 {
7210 Multiply (Local0, 0x0A, Local0)
7211 Add (Local0, 0x0AAC, Local0)
7212 }
7213 Else
7214 {
7215 Subtract (Local0, 0x80, Local0)
7216 Multiply (Local0, 0x0A, Local0)
7217 Subtract (0x0AAC, Local0, Local0)
7218 }
7219
7220 If (LEqual (SSHU, 0x01))
7221 {
7222 Return (0x0C3C)
7223 }
7224 Else
7225 {
7226 Return (Local0)
7227 }
7228 }
7229
7230 Method (SFAN, 1, NotSerialized)
7231 {
7232 And (SENF, 0x02, Local0)
7233 If (LEqual (Local0, Zero))
7234 {
7235 If (LEqual (Arg0, Zero))
7236 {
7237 FOFF ()
7238 }
7239 Else
7240 {
7241 FON ()
7242 }
7243 }
7244 }
7245
7246 Method (FON, 0, NotSerialized)
7247 {
7248 WBYT (TSAD, 0x30, 0xFF)
7249 WBYT (TSAD, 0x31, 0xFF)
7250 WBYT (TSAD, 0x32, 0xFF)
7251 }
7252
7253 Method (FOFF, 0, NotSerialized)
7254 {
7255 WBYT (TSAD, 0x30, 0x00)
7256 WBYT (TSAD, 0x31, 0x00)
7257 WBYT (TSAD, 0x32, 0x00)
7258 }
7259
7260 Method (CSOU, 2, NotSerialized)
7261 {
7262 If (LLessEqual (Arg0, 0x7F))
7263 {
7264 If (LLessEqual (Arg1, 0x7F))
7265 {
7266 If (LGreaterEqual (Arg0, Arg1))
7267 {
7268 Return (0x01)
7269 }
7270 Else
7271 {
7272 Return (0x00)
7273 }
7274 }
7275 Else
7276 {
7277 Return (0x01)
7278 }
7279 }
7280 Else
7281 {
7282 If (LLessEqual (Arg1, 0x7F))
7283 {
7284 Return (0x00)
7285 }
7286 Else
7287 {
7288 If (LGreaterEqual (Arg0, Arg1))
7289 {
7290 Return (0x01)
7291 }
7292 Else
7293 {
7294 Return (0x00)
7295 }
7296 }
7297 }
7298 }
7299
7300 OperationRegion (SM00, SystemIO, \_SB.PCI0.SMB0.SMBB (), 0x06)
7301 Field (SM00, ByteAcc, NoLock, Preserve)
7302 {
7303 CTLR, 8,
7304 HSTS, 8,
7305 ADDR, 8,
7306 CMDR, 8,
7307 DAT0, 8,
7308 DAT1, 8
7309 }
7310
7311 Method (SWFS, 0, NotSerialized)
7312 {
7313 And (HSTS, 0x80, Local0)
7314 While (LEqual (Local0, Zero))
7315 {
7316 Stall (0x01)
7317 And (HSTS, 0x80, Local0)
7318 }
7319 }
7320
7321 Method (SRBY, 2, NotSerialized)
7322 {
7323 Store (Arg0, ADDR)
7324 Store (Arg1, CMDR)
7325 Store (0x04, CTLR)
7326 SWFS ()
7327 }
7328
7329 Method (WBYT, 3, NotSerialized)
7330 {
7331 Store (Arg0, ADDR)
7332 Store (Arg1, CMDR)
7333 Store (Arg2, DAT0)
7334 Store (0xFF, HSTS)
7335 Store (0x06, CTLR)
7336 SWFS ()
7337 }
7338
7339 Method (WWRD, 4, NotSerialized)
7340 {
7341 Store (Arg0, ADDR)
7342 Store (Arg1, CMDR)
7343 Store (Arg2, DAT0)
7344 Store (Arg3, DAT1)
7345 Store (0x08, CTLR)
7346 SWFS ()
7347 }
7348
7349 Method (RBYT, 2, NotSerialized)
7350 {
7351 Store (Arg0, ADDR)
7352 Store (Arg1, CMDR)
7353 Store (0x07, CTLR)
7354 SWFS ()
7355 Return (DAT0)
7356 }
7357
7358 Method (RWRD, 2, NotSerialized)
7359 {
7360 Store (Arg0, ADDR)
7361 Store (Arg1, CMDR)
7362 Store (0x09, CTLR)
7363 SWFS ()
7364 Store (DAT0, Local0)
7365 ShiftLeft (DAT1, 0x08, Local1)
7366 Or (Local0, Local1, Local2)
7367 Return (Local2)
7368 }
7369
7370 Scope (\_TZ)
7371 {
7372 Device (FAN)
7373 {
7374 Name (_HID, EisaId ("PNP0C0B"))
7375 Method (_INI, 0, NotSerialized)
7376 {
7377 Store (TP1H, CTOS)
7378 Store (TP1L, CTHY)
7379 }
7380 }
7381
7382 ThermalZone (THRM)
7383 {
7384 Name (_AL0, Package (0x01)
7385 {
7386 FAN
7387 })
7388 Method (_INI, 0, NotSerialized)
7389 {
7390 }
7391
7392 Method (_AC0, 0, NotSerialized)
7393 {
7394 If (Or (PLCY, PLCY, Local7))
7395 {
7396 Return (KELA (TP2H))
7397 }
7398 Else
7399 {
7400 Return (KELA (TP1H))
7401 }
7402 }
7403
7404 Name (_PSL, Package (0x01)
7405 {
7406 \_PR.CPU0
7407 })
7408 Name (_TSP, 0x3C)
7409 Name (_TC1, 0x04)
7410 Name (_TC2, 0x03)
7411 Method (_PSV, 0, NotSerialized)
7412 {
7413 If (Or (PLCY, PLCY, Local7))
7414 {
7415 Return (KELA (TP1H))
7416 }
7417 Else
7418 {
7419 Return (KELA (TP2H))
7420 }
7421 }
7422
7423 Method (KELA, 1, NotSerialized)
7424 {
7425 If (LGreater (Arg0, 0x01F4))
7426 {
7427 Return (Arg0)
7428 }
7429 Else
7430 {
7431 Store (Arg0, Local1)
7432 Multiply (Local1, 0x0A, Local1)
7433 Add (Local1, 0x0AAC, Local1)
7434 Return (Local1)
7435 }
7436 }
7437
7438 Method (_CRT, 0, NotSerialized)
7439 {
7440 Return (TRPC)
7441 }
7442
7443 Method (_TMP, 0, NotSerialized)
7444 {
7445 And (SENF, 0x01, Local6)
7446 If (LEqual (Local6, 0x01))
7447 {
7448 Return (KELA (RTMP ()))
7449 }
7450 Else
7451 {
7452 Return (0x0B86)
7453 }
7454 }
7455
7456 Method (_SCP, 1, NotSerialized)
7457 {
7458 If (Arg0)
7459 {
7460 Store (One, PLCY)
7461 }
7462 Else
7463 {
7464 Store (Zero, PLCY)
7465 }
7466
7467 Notify (\_TZ.THRM, 0x81)
7468 }
7469
7470 Method (STMP, 2, NotSerialized)
7471 {
7472 Store (Arg1, DW00)
7473 If (Arg0)
7474 {
7475 STHY (DB00, DB01, DW00)
7476 }
7477 Else
7478 {
7479 STOS (DB00, DB01, DW00)
7480 }
7481 }
7482 }
7483 }
7484}
7485