Ticket #15881: dsdt.dsl

File dsdt.dsl, 1.0 MB (added by X512, 4 years ago)

ACPI DSDT table

Line 
1/*
2 * Intel ACPI Component Architecture
3 * AML/ASL+ Disassembler version 20191213 (32-bit version)
4 * Copyright (c) 2000 - 2019 Intel Corporation
5 *
6 * Disassembling to symbolic ASL+ operators
7 *
8 * Disassembly of dsdt.dat, Tue Dec 31 08:37:40 2019
9 *
10 * Original Table Header:
11 * Signature "DSDT"
12 * Length 0x0001F114 (127252)
13 * Revision 0x02
14 * Checksum 0xA6
15 * OEM ID "FUJ "
16 * OEM Table ID "FJNBC0F "
17 * OEM Revision 0x02090000 (34144256)
18 * Compiler ID "FUJ "
19 * Compiler Version 0x00000001 (1)
20 */
21DefinitionBlock ("", "DSDT", 2, "FUJ ", "FJNBC0F ", 0x02090000)
22{
23 /*
24 * iASL Warning: There were 2 external control methods found during
25 * disassembly, but only 0 were resolved (2 unresolved). Additional
26 * ACPI tables may be required to properly disassemble the code. This
27 * resulting disassembler output file may not compile because the
28 * disassembler did not know how many arguments to assign to the
29 * unresolved methods. Note: SSDTs can be dynamically loaded at
30 * runtime and may or may not be available via the host OS.
31 *
32 * To specify the tables needed to resolve external control method
33 * references, the -e option can be used to specify the filenames.
34 * Example iASL invocations:
35 * iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
36 * iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
37 * iasl -e ssdt*.aml -d dsdt.aml
38 *
39 * In addition, the -fe option can be used to specify a file containing
40 * control method external declarations with the associated method
41 * argument counts. Each line of the file must be of the form:
42 * External (<method pathname>, MethodObj, <argument count>)
43 * Invocation:
44 * iasl -fe refs.txt -d dsdt.aml
45 *
46 * The following methods were unresolved and many not compile properly
47 * because the disassembler had to guess at the number of arguments
48 * required for each:
49 */
50 External (_PR_.CPU0._PPC, UnknownObj)
51 External (_SB_.DPTF, UnknownObj)
52 External (_SB_.TPM_.PTS_, MethodObj) // Warning: Unknown method, guessing 1 arguments
53 External (CFGD, UnknownObj)
54 External (DPTF, UnknownObj)
55 External (NDN3, MethodObj) // Warning: Unknown method, guessing 1 arguments
56 External (PDC0, UnknownObj)
57 External (PDC1, UnknownObj)
58 External (PDC2, UnknownObj)
59 External (PDC3, UnknownObj)
60 External (PSTM, IntObj)
61 External (TCHG, UnknownObj)
62 External (UBTC, UnknownObj)
63
64 Method (ADBG, 1, Serialized)
65 {
66 Return (Zero)
67 }
68
69 Name (PMBS, 0x0400)
70 Name (SMIP, 0xB2)
71 Name (APCB, 0xFEC00000)
72 Name (APCL, 0x1000)
73 Name (PMCB, 0xFED03000)
74 Name (PMCP, 0xFED030A0)
75 Name (PUNB, 0xFED06000)
76 Name (IBAS, 0xFED08000)
77 Name (SRCB, 0xFED1C000)
78 Name (HPTB, 0xFED00000)
79 Name (FMBL, One)
80 Name (FDTP, 0x02)
81 Name (RCOM, 0xFED98000)
82 OperationRegion (GNVS, SystemMemory, 0x7A290000, 0x0368)
83 Field (GNVS, AnyAcc, Lock, Preserve)
84 {
85 OSYS, 16,
86 SMIF, 8,
87 PRM0, 8,
88 PRM1, 8,
89 SCIF, 8,
90 PRM2, 8,
91 PRM3, 8,
92 LCKF, 8,
93 PRM4, 8,
94 PRM5, 8,
95 P80D, 32,
96 LIDS, 8,
97 PWRS, 8,
98 DBGS, 8,
99 THOF, 8,
100 ACT1, 8,
101 ACTT, 8,
102 PSVT, 8,
103 TC1V, 8,
104 TC2V, 8,
105 TSPV, 8,
106 CRTT, 8,
107 DTSE, 8,
108 DTS1, 8,
109 DTS2, 8,
110 DTSF, 8,
111 BNUM, 8,
112 B0SC, 8,
113 B1SC, 8,
114 B2SC, 8,
115 B0SS, 8,
116 B1SS, 8,
117 B2SS, 8,
118 REVS, 8,
119 OSID, 8,
120 ADED, 8,
121 APIC, 8,
122 MPEN, 8,
123 PCP0, 8,
124 PCP1, 8,
125 PPCM, 8,
126 PPMF, 32,
127 Offset (0x32),
128 NATP, 8,
129 CMAP, 8,
130 CMBP, 8,
131 LPTP, 8,
132 FDCP, 8,
133 CMCP, 8,
134 CIRP, 8,
135 W381, 8,
136 NPCE, 8,
137 Offset (0x3C),
138 IGDS, 8,
139 TLST, 8,
140 CADL, 8,
141 PADL, 8,
142 CSTE, 16,
143 NSTE, 16,
144 SSTE, 16,
145 NDID, 8,
146 DID1, 32,
147 DID2, 32,
148 DID3, 32,
149 DID4, 32,
150 DID5, 32,
151 KSV0, 32,
152 KSV1, 8,
153 Offset (0x67),
154 BLCS, 8,
155 BRTL, 8,
156 ALSE, 8,
157 ALAF, 8,
158 LLOW, 8,
159 LHIH, 8,
160 Offset (0x6E),
161 EMAE, 8,
162 EMAP, 16,
163 EMAL, 16,
164 Offset (0x74),
165 MEFE, 8,
166 DSTS, 8,
167 Offset (0x78),
168 TPMP, 8,
169 TPME, 8,
170 MORD, 8,
171 TCGP, 8,
172 PPRP, 32,
173 PPRQ, 8,
174 LPPR, 8,
175 GTF0, 56,
176 GTF2, 56,
177 IDEM, 8,
178 GTF1, 56,
179 Offset (0xAA),
180 ASLB, 32,
181 IBTT, 8,
182 IPAT, 8,
183 ITVF, 8,
184 ITVM, 8,
185 IPSC, 8,
186 IBLC, 8,
187 IBIA, 8,
188 ISSC, 8,
189 I409, 8,
190 I509, 8,
191 I609, 8,
192 I709, 8,
193 IDMM, 8,
194 IDMS, 8,
195 IF1E, 8,
196 HVCO, 8,
197 NXD1, 32,
198 NXD2, 32,
199 NXD3, 32,
200 NXD4, 32,
201 NXD5, 32,
202 NXD6, 32,
203 NXD7, 32,
204 NXD8, 32,
205 GSMI, 8,
206 PAVP, 8,
207 Offset (0xE1),
208 OSCC, 8,
209 NEXP, 8,
210 Offset (0xEB),
211 DSEN, 8,
212 ECON, 8,
213 GPIC, 8,
214 CTYP, 8,
215 L01C, 8,
216 VFN0, 8,
217 VFN1, 8,
218 Offset (0x100),
219 NVGA, 32,
220 NVHA, 32,
221 AMDA, 32,
222 DID6, 32,
223 DID7, 32,
224 DID8, 32,
225 Offset (0x147),
226 OTG0, 32,
227 OTG1, 32,
228 LPE0, 32,
229 LPE1, 32,
230 LPE2, 32,
231 ACST, 8,
232 BTST, 8,
233 PFLV, 8,
234 BREV, 8,
235 AOAC, 8,
236 XHCI, 8,
237 PMEN, 8,
238 USEL, 8,
239 ISPA, 32,
240 ISPD, 8,
241 D10A, 32,
242 D10L, 32,
243 D11A, 32,
244 D11L, 32,
245 P10A, 32,
246 P10L, 32,
247 P11A, 32,
248 P11L, 32,
249 P20A, 32,
250 P20L, 32,
251 P21A, 32,
252 P21L, 32,
253 U10A, 32,
254 U10L, 32,
255 U11A, 32,
256 U11L, 32,
257 U20A, 32,
258 U20L, 32,
259 U21A, 32,
260 U21L, 32,
261 SP0A, 32,
262 SP0L, 32,
263 SP1A, 32,
264 SP1L, 32,
265 S20A, 32,
266 S20L, 32,
267 S21A, 32,
268 S21L, 32,
269 S30A, 32,
270 S30L, 32,
271 S31A, 32,
272 S31L, 32,
273 D20A, 32,
274 D20L, 32,
275 D21A, 32,
276 D21L, 32,
277 I10A, 32,
278 I10L, 32,
279 I11A, 32,
280 I11L, 32,
281 I20A, 32,
282 I20L, 32,
283 I21A, 32,
284 I21L, 32,
285 I30A, 32,
286 I30L, 32,
287 I31A, 32,
288 I31L, 32,
289 I40A, 32,
290 I40L, 32,
291 I41A, 32,
292 I41L, 32,
293 I50A, 32,
294 I50L, 32,
295 I51A, 32,
296 I51L, 32,
297 I60A, 32,
298 I60L, 32,
299 I61A, 32,
300 I61L, 32,
301 I70A, 32,
302 I70L, 32,
303 I71A, 32,
304 I71L, 32,
305 EM0A, 32,
306 EM0L, 32,
307 EM1A, 32,
308 EM1L, 32,
309 SI0A, 32,
310 SI0L, 32,
311 SI1A, 32,
312 SI1L, 32,
313 SD0A, 32,
314 SD0L, 32,
315 SD1A, 32,
316 SD1L, 32,
317 ISH0, 32,
318 ISH1, 32,
319 Offset (0x2A4),
320 Offset (0x2A8),
321 DPTE, 8,
322 THM0, 8,
323 THM1, 8,
324 THM2, 8,
325 THM3, 8,
326 THM4, 8,
327 CHGR, 8,
328 DDSP, 8,
329 DSOC, 8,
330 DPSR, 8,
331 DPCT, 32,
332 DPPT, 32,
333 DGC0, 32,
334 DGP0, 32,
335 DGC1, 32,
336 DGP1, 32,
337 DGC2, 32,
338 DGP2, 32,
339 DGC3, 32,
340 DGP3, 32,
341 DGC4, 32,
342 DGP4, 32,
343 DLPM, 8,
344 DSC0, 32,
345 DSC1, 32,
346 DSC2, 32,
347 DSC3, 32,
348 DSC4, 32,
349 DDBG, 8,
350 LPOE, 32,
351 LPPS, 32,
352 LPST, 32,
353 LPPC, 32,
354 LPPF, 32,
355 DPME, 8,
356 BCSL, 8,
357 RSVD, 8,
358 BTHS, 8,
359 TPMA, 32,
360 TPML, 32,
361 PSSD, 8,
362 ITSA, 8,
363 S0IX, 8,
364 SDMD, 8,
365 EMVR, 8,
366 BMBD, 32,
367 FSAS, 8,
368 BDID, 8,
369 FBID, 8,
370 OTGM, 8,
371 STEP, 8,
372 SOCS, 8,
373 AMTE, 8,
374 ABC0, 8,
375 ABC1, 8,
376 ABC2, 8,
377 ABC3, 8,
378 ABC4, 8,
379 ABC5, 8,
380 DPHL, 8,
381 DPLL, 8,
382 DBAT, 8,
383 DTPM, 8,
384 RSV, 8,
385 PSDE, 8,
386 RSD2, 8,
387 MODS, 8,
388 WWEN, 8,
389 WWCR, 32,
390 WWPS, 32,
391 ABS0, 8,
392 ABS1, 8,
393 ABS2, 8,
394 ABS3, 8,
395 ABS4, 8,
396 ABS5, 8,
397 RCAM, 8,
398 ECAM, 8,
399 AUCD, 8,
400 BTHM, 8,
401 PMID, 8,
402 MPNL, 8,
403 VTSP, 16,
404 Offset (0x34E),
405 Offset (0x34F),
406 FMDM, 8,
407 SDVL, 8,
408 MLSD, 8,
409 SCDD, 8,
410 HPME, 8,
411 GPSD, 8,
412 PAVB, 32,
413 PAVL, 32,
414 NUSB, 8,
415 DSFG, 8,
416 DAMT, 8,
417 MODM, 8,
418 HPTE, 8,
419 UBCB, 32,
420 PSSE, 8,
421 ISPE, 8
422 }
423
424 Name (DKTO, Zero)
425 Scope (_SB)
426 {
427 Name (PR00, Package (0x17)
428 {
429 Package (0x04)
430 {
431 0x0002FFFF,
432 Zero,
433 LNKA,
434 Zero
435 },
436
437 Package (0x04)
438 {
439 0x0003FFFF,
440 Zero,
441 LNKB,
442 Zero
443 },
444
445 Package (0x04)
446 {
447 0x000AFFFF,
448 Zero,
449 LNKE,
450 Zero
451 },
452
453 Package (0x04)
454 {
455 0x000BFFFF,
456 Zero,
457 LNKF,
458 Zero
459 },
460
461 Package (0x04)
462 {
463 0x0010FFFF,
464 Zero,
465 LNKA,
466 Zero
467 },
468
469 Package (0x04)
470 {
471 0x0011FFFF,
472 Zero,
473 LNKB,
474 Zero
475 },
476
477 Package (0x04)
478 {
479 0x0012FFFF,
480 Zero,
481 LNKC,
482 Zero
483 },
484
485 Package (0x04)
486 {
487 0x0014FFFF,
488 Zero,
489 LNKE,
490 Zero
491 },
492
493 Package (0x04)
494 {
495 0x0015FFFF,
496 Zero,
497 LNKF,
498 Zero
499 },
500
501 Package (0x04)
502 {
503 0x0016FFFF,
504 Zero,
505 LNKH,
506 Zero
507 },
508
509 Package (0x04)
510 {
511 0x0018FFFF,
512 Zero,
513 LNKB,
514 Zero
515 },
516
517 Package (0x04)
518 {
519 0x0018FFFF,
520 0x02,
521 LNKD,
522 Zero
523 },
524
525 Package (0x04)
526 {
527 0x0018FFFF,
528 0x03,
529 LNKC,
530 Zero
531 },
532
533 Package (0x04)
534 {
535 0x0018FFFF,
536 One,
537 LNKA,
538 Zero
539 },
540
541 Package (0x04)
542 {
543 0x001AFFFF,
544 Zero,
545 LNKF,
546 Zero
547 },
548
549 Package (0x04)
550 {
551 0x001EFFFF,
552 Zero,
553 LNKD,
554 Zero
555 },
556
557 Package (0x04)
558 {
559 0x001EFFFF,
560 0x03,
561 LNKA,
562 Zero
563 },
564
565 Package (0x04)
566 {
567 0x001EFFFF,
568 One,
569 LNKB,
570 Zero
571 },
572
573 Package (0x04)
574 {
575 0x001EFFFF,
576 0x02,
577 LNKC,
578 Zero
579 },
580
581 Package (0x04)
582 {
583 0x001CFFFF,
584 Zero,
585 LNKA,
586 Zero
587 },
588
589 Package (0x04)
590 {
591 0x001CFFFF,
592 One,
593 LNKB,
594 Zero
595 },
596
597 Package (0x04)
598 {
599 0x001CFFFF,
600 0x02,
601 LNKC,
602 Zero
603 },
604
605 Package (0x04)
606 {
607 0x001CFFFF,
608 0x03,
609 LNKD,
610 Zero
611 }
612 })
613 Name (AR00, Package (0x17)
614 {
615 Package (0x04)
616 {
617 0x0002FFFF,
618 Zero,
619 Zero,
620 0x10
621 },
622
623 Package (0x04)
624 {
625 0x0003FFFF,
626 Zero,
627 Zero,
628 0x11
629 },
630
631 Package (0x04)
632 {
633 0x000AFFFF,
634 Zero,
635 Zero,
636 0x14
637 },
638
639 Package (0x04)
640 {
641 0x000BFFFF,
642 Zero,
643 Zero,
644 0x15
645 },
646
647 Package (0x04)
648 {
649 0x0010FFFF,
650 Zero,
651 Zero,
652 0x10
653 },
654
655 Package (0x04)
656 {
657 0x0011FFFF,
658 Zero,
659 Zero,
660 0x11
661 },
662
663 Package (0x04)
664 {
665 0x0012FFFF,
666 Zero,
667 Zero,
668 0x12
669 },
670
671 Package (0x04)
672 {
673 0x0014FFFF,
674 Zero,
675 Zero,
676 0x14
677 },
678
679 Package (0x04)
680 {
681 0x0015FFFF,
682 Zero,
683 Zero,
684 0x15
685 },
686
687 Package (0x04)
688 {
689 0x0016FFFF,
690 Zero,
691 Zero,
692 0x17
693 },
694
695 Package (0x04)
696 {
697 0x0018FFFF,
698 Zero,
699 Zero,
700 0x11
701 },
702
703 Package (0x04)
704 {
705 0x0018FFFF,
706 0x02,
707 Zero,
708 0x13
709 },
710
711 Package (0x04)
712 {
713 0x0018FFFF,
714 0x03,
715 Zero,
716 0x12
717 },
718
719 Package (0x04)
720 {
721 0x0018FFFF,
722 One,
723 Zero,
724 0x10
725 },
726
727 Package (0x04)
728 {
729 0x001AFFFF,
730 Zero,
731 Zero,
732 0x15
733 },
734
735 Package (0x04)
736 {
737 0x001EFFFF,
738 Zero,
739 Zero,
740 0x13
741 },
742
743 Package (0x04)
744 {
745 0x001EFFFF,
746 0x03,
747 Zero,
748 0x10
749 },
750
751 Package (0x04)
752 {
753 0x001EFFFF,
754 One,
755 Zero,
756 0x11
757 },
758
759 Package (0x04)
760 {
761 0x001EFFFF,
762 0x02,
763 Zero,
764 0x12
765 },
766
767 Package (0x04)
768 {
769 0x001CFFFF,
770 Zero,
771 Zero,
772 0x10
773 },
774
775 Package (0x04)
776 {
777 0x001CFFFF,
778 One,
779 Zero,
780 0x11
781 },
782
783 Package (0x04)
784 {
785 0x001CFFFF,
786 0x02,
787 Zero,
788 0x12
789 },
790
791 Package (0x04)
792 {
793 0x001CFFFF,
794 0x03,
795 Zero,
796 0x13
797 }
798 })
799 Name (PR04, Package (0x04)
800 {
801 Package (0x04)
802 {
803 0xFFFF,
804 Zero,
805 LNKA,
806 Zero
807 },
808
809 Package (0x04)
810 {
811 0xFFFF,
812 One,
813 LNKB,
814 Zero
815 },
816
817 Package (0x04)
818 {
819 0xFFFF,
820 0x02,
821 LNKC,
822 Zero
823 },
824
825 Package (0x04)
826 {
827 0xFFFF,
828 0x03,
829 LNKD,
830 Zero
831 }
832 })
833 Name (AR04, Package (0x04)
834 {
835 Package (0x04)
836 {
837 0xFFFF,
838 Zero,
839 Zero,
840 0x10
841 },
842
843 Package (0x04)
844 {
845 0xFFFF,
846 One,
847 Zero,
848 0x11
849 },
850
851 Package (0x04)
852 {
853 0xFFFF,
854 0x02,
855 Zero,
856 0x12
857 },
858
859 Package (0x04)
860 {
861 0xFFFF,
862 0x03,
863 Zero,
864 0x13
865 }
866 })
867 Name (PR05, Package (0x04)
868 {
869 Package (0x04)
870 {
871 0xFFFF,
872 Zero,
873 LNKB,
874 Zero
875 },
876
877 Package (0x04)
878 {
879 0xFFFF,
880 One,
881 LNKC,
882 Zero
883 },
884
885 Package (0x04)
886 {
887 0xFFFF,
888 0x02,
889 LNKD,
890 Zero
891 },
892
893 Package (0x04)
894 {
895 0xFFFF,
896 0x03,
897 LNKA,
898 Zero
899 }
900 })
901 Name (AR05, Package (0x04)
902 {
903 Package (0x04)
904 {
905 0xFFFF,
906 Zero,
907 Zero,
908 0x11
909 },
910
911 Package (0x04)
912 {
913 0xFFFF,
914 One,
915 Zero,
916 0x12
917 },
918
919 Package (0x04)
920 {
921 0xFFFF,
922 0x02,
923 Zero,
924 0x13
925 },
926
927 Package (0x04)
928 {
929 0xFFFF,
930 0x03,
931 Zero,
932 0x10
933 }
934 })
935 Name (PR06, Package (0x04)
936 {
937 Package (0x04)
938 {
939 0xFFFF,
940 Zero,
941 LNKC,
942 Zero
943 },
944
945 Package (0x04)
946 {
947 0xFFFF,
948 One,
949 LNKD,
950 Zero
951 },
952
953 Package (0x04)
954 {
955 0xFFFF,
956 0x02,
957 LNKA,
958 Zero
959 },
960
961 Package (0x04)
962 {
963 0xFFFF,
964 0x03,
965 LNKB,
966 Zero
967 }
968 })
969 Name (AR06, Package (0x04)
970 {
971 Package (0x04)
972 {
973 0xFFFF,
974 Zero,
975 Zero,
976 0x12
977 },
978
979 Package (0x04)
980 {
981 0xFFFF,
982 One,
983 Zero,
984 0x13
985 },
986
987 Package (0x04)
988 {
989 0xFFFF,
990 0x02,
991 Zero,
992 0x10
993 },
994
995 Package (0x04)
996 {
997 0xFFFF,
998 0x03,
999 Zero,
1000 0x11
1001 }
1002 })
1003 Name (PR07, Package (0x04)
1004 {
1005 Package (0x04)
1006 {
1007 0xFFFF,
1008 Zero,
1009 LNKD,
1010 Zero
1011 },
1012
1013 Package (0x04)
1014 {
1015 0xFFFF,
1016 One,
1017 LNKA,
1018 Zero
1019 },
1020
1021 Package (0x04)
1022 {
1023 0xFFFF,
1024 0x02,
1025 LNKB,
1026 Zero
1027 },
1028
1029 Package (0x04)
1030 {
1031 0xFFFF,
1032 0x03,
1033 LNKC,
1034 Zero
1035 }
1036 })
1037 Name (AR07, Package (0x04)
1038 {
1039 Package (0x04)
1040 {
1041 0xFFFF,
1042 Zero,
1043 Zero,
1044 0x13
1045 },
1046
1047 Package (0x04)
1048 {
1049 0xFFFF,
1050 One,
1051 Zero,
1052 0x10
1053 },
1054
1055 Package (0x04)
1056 {
1057 0xFFFF,
1058 0x02,
1059 Zero,
1060 0x11
1061 },
1062
1063 Package (0x04)
1064 {
1065 0xFFFF,
1066 0x03,
1067 Zero,
1068 0x12
1069 }
1070 })
1071 Name (PRSA, ResourceTemplate ()
1072 {
1073 IRQ (Level, ActiveLow, Shared, )
1074 {3,4,5,6,10,11,12,14,15}
1075 })
1076 Alias (PRSA, PRSB)
1077 Alias (PRSA, PRSC)
1078 Alias (PRSA, PRSD)
1079 Alias (PRSA, PRSE)
1080 Alias (PRSA, PRSF)
1081 Alias (PRSA, PRSG)
1082 Alias (PRSA, PRSH)
1083 Device (PCI0)
1084 {
1085 Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */) // _HID: Hardware ID
1086 Name (_CID, EisaId ("PNP0A03") /* PCI Bus */) // _CID: Compatible ID
1087 Name (_ADR, Zero) // _ADR: Address
1088 Method (^BN00, 0, NotSerialized)
1089 {
1090 Return (Zero)
1091 }
1092
1093 Method (_BBN, 0, NotSerialized) // _BBN: BIOS Bus Number
1094 {
1095 Return (BN00 ())
1096 }
1097
1098 Name (_UID, Zero) // _UID: Unique ID
1099 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
1100 {
1101 If (PICM)
1102 {
1103 Return (AR00) /* \_SB_.AR00 */
1104 }
1105
1106 Return (PR00) /* \_SB_.PR00 */
1107 }
1108
1109 Device (CHVC)
1110 {
1111 Name (_ADR, Zero) // _ADR: Address
1112 OperationRegion (HBUS, PCI_Config, Zero, 0xFF)
1113 Field (HBUS, DWordAcc, NoLock, Preserve)
1114 {
1115 Offset (0xD0),
1116 SMCR, 32,
1117 SMDR, 32,
1118 MCRX, 32,
1119 MCXX, 32
1120 }
1121
1122 Method (RMBR, 2, Serialized)
1123 {
1124 Local0 = ((Arg0 << 0x10) | (Arg1 << 0x08))
1125 SMCR = (0x100000F0 | Local0)
1126 Return (SMDR) /* \_SB_.PCI0.CHVC.SMDR */
1127 }
1128
1129 Method (WMBR, 3, Serialized)
1130 {
1131 SMDR = Arg2
1132 Local0 = ((Arg0 << 0x10) | (Arg1 << 0x08))
1133 SMCR = (0x110000F0 | Local0)
1134 }
1135
1136 Method (RMBX, 6, Serialized)
1137 {
1138 Local4 = (Arg3 & 0x07)
1139 Local4 = (Local4 << 0x08)
1140 Local5 = ((Arg4 << 0x03) | Arg5)
1141 Local5 &= 0xFF
1142 MCXX = (Local4 | Local5)
1143 Local3 = (Arg1 & 0xFFFFFF00)
1144 MCRX = Local3
1145 Local0 = (Arg1 & 0xFF)
1146 Local1 = ((Arg2 << 0x18) | (Arg0 << 0x10))
1147 Local1 &= 0xFFFF0000
1148 Local2 = ((Local0 << 0x08) | 0xF0)
1149 Local2 &= 0xFFFF
1150 SMCR = (Local1 | Local2)
1151 Return (SMDR) /* \_SB_.PCI0.CHVC.SMDR */
1152 }
1153
1154 Method (WMBX, 7, Serialized)
1155 {
1156 Local4 = (Arg4 & 0x07)
1157 Local4 = (Local4 << 0x08)
1158 Local5 = ((Arg5 << 0x03) | Arg6)
1159 Local5 &= 0xFF
1160 MCXX = (Local4 | Local5)
1161 Local3 = (Arg1 & 0xFFFFFF00)
1162 MCRX = Local3
1163 SMDR = Arg2
1164 Local0 = (Arg1 & 0xFF)
1165 Local1 = ((Arg3 << 0x18) | (Arg0 << 0x10))
1166 Local1 &= 0xFFFF0000
1167 Local2 = ((Local0 << 0x08) | 0xF0)
1168 Local2 &= 0xFFFF
1169 SMCR = (Local1 | Local2)
1170 }
1171 }
1172
1173 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1174 {
1175 Name (FTSZ, 0x00100000)
1176 CreateDWordField (RES0, \_SB.PCI0._Y00._MIN, LPMN) // _MIN: Minimum Base Address
1177 CreateDWordField (RES0, \_SB.PCI0._Y00._MAX, LPMX) // _MAX: Maximum Base Address
1178 CreateDWordField (RES0, \_SB.PCI0._Y00._LEN, LPLN) // _LEN: Length
1179 If (((LPE2 != Zero) && (LPED == Zero)))
1180 {
1181 LPMN = LPE2 /* \LPE2 */
1182 LPMX = (LPMN + LPLN) /* \_SB_.PCI0._CRS.LPLN */
1183 LPMX -= One
1184 }
1185 Else
1186 {
1187 LPMN = Zero
1188 LPMX = Zero
1189 LPLN = Zero
1190 }
1191
1192 CreateDWordField (RES0, \_SB.PCI0._Y01._MIN, ISMN) // _MIN: Minimum Base Address
1193 CreateDWordField (RES0, \_SB.PCI0._Y01._MAX, ISMX) // _MAX: Maximum Base Address
1194 CreateDWordField (RES0, \_SB.PCI0._Y01._LEN, ISLN) // _LEN: Length
1195 If ((ISPD == One))
1196 {
1197 ISMN = ISPA /* \ISPA */
1198 ISMX = (ISMN + ISLN) /* \_SB_.PCI0._CRS.ISLN */
1199 ISMX -= One
1200 }
1201 Else
1202 {
1203 ISMN = Zero
1204 ISMX = Zero
1205 ISLN = Zero
1206 }
1207
1208 CreateDWordField (RES0, \_SB.PCI0._Y02._MIN, M1MN) // _MIN: Minimum Base Address
1209 CreateDWordField (RES0, \_SB.PCI0._Y02._MAX, M1MX) // _MAX: Maximum Base Address
1210 CreateDWordField (RES0, \_SB.PCI0._Y02._LEN, M1LN) // _LEN: Length
1211 M1MN = (BMBD & 0xFF000000)
1212 M1LN = ((M1MX - M1MN) + One)
1213 CreateDWordField (RES0, \_SB.PCI0._Y03._MIN, GSMN) // _MIN: Minimum Base Address
1214 CreateDWordField (RES0, \_SB.PCI0._Y03._MAX, GSMX) // _MAX: Maximum Base Address
1215 CreateDWordField (RES0, \_SB.PCI0._Y03._LEN, GSLN) // _LEN: Length
1216 GSMN = ^GFX0.GSTM /* \_SB_.PCI0.GFX0.GSTM */
1217 GSLN = (^GFX0.GUMA << 0x19)
1218 GSMX = (GSMN + GSLN) /* \_SB_.PCI0._CRS.GSLN */
1219 GSMX -= One
1220 Return (RES0) /* \_SB_.PCI0.RES0 */
1221 }
1222
1223 Name (RES0, ResourceTemplate ()
1224 {
1225 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
1226 0x0000, // Granularity
1227 0x0000, // Range Minimum
1228 0x00FF, // Range Maximum
1229 0x0000, // Translation Offset
1230 0x0100, // Length
1231 ,, )
1232 IO (Decode16,
1233 0x0070, // Range Minimum
1234 0x0077, // Range Maximum
1235 0x01, // Alignment
1236 0x08, // Length
1237 )
1238 IO (Decode16,
1239 0x0CF8, // Range Minimum
1240 0x0CF8, // Range Maximum
1241 0x01, // Alignment
1242 0x08, // Length
1243 )
1244 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
1245 0x0000, // Granularity
1246 0x0000, // Range Minimum
1247 0x006F, // Range Maximum
1248 0x0000, // Translation Offset
1249 0x0070, // Length
1250 ,, , TypeStatic, DenseTranslation)
1251 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
1252 0x0000, // Granularity
1253 0x0078, // Range Minimum
1254 0x0CF7, // Range Maximum
1255 0x0000, // Translation Offset
1256 0x0C80, // Length
1257 ,, , TypeStatic, DenseTranslation)
1258 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
1259 0x0000, // Granularity
1260 0x0D00, // Range Minimum
1261 0xFFFF, // Range Maximum
1262 0x0000, // Translation Offset
1263 0xF300, // Length
1264 ,, , TypeStatic, DenseTranslation)
1265 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1266 0x00000000, // Granularity
1267 0x000A0000, // Range Minimum
1268 0x000BFFFF, // Range Maximum
1269 0x00000000, // Translation Offset
1270 0x00020000, // Length
1271 ,, , AddressRangeMemory, TypeStatic)
1272 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1273 0x00000000, // Granularity
1274 0x000C0000, // Range Minimum
1275 0x000DFFFF, // Range Maximum
1276 0x00000000, // Translation Offset
1277 0x00020000, // Length
1278 ,, , AddressRangeMemory, TypeStatic)
1279 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1280 0x00000000, // Granularity
1281 0x000E0000, // Range Minimum
1282 0x000FFFFF, // Range Maximum
1283 0x00000000, // Translation Offset
1284 0x00020000, // Length
1285 ,, , AddressRangeMemory, TypeStatic)
1286 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1287 0x00000000, // Granularity
1288 0x20000000, // Range Minimum
1289 0x201FFFFF, // Range Maximum
1290 0x00000000, // Translation Offset
1291 0x00200000, // Length
1292 ,, _Y00, AddressRangeMemory, TypeStatic)
1293 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1294 0x00000000, // Granularity
1295 0x7A000000, // Range Minimum
1296 0x7A3FFFFF, // Range Maximum
1297 0x00000000, // Translation Offset
1298 0x00400000, // Length
1299 ,, _Y01, AddressRangeMemory, TypeStatic)
1300 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1301 0x00000000, // Granularity
1302 0x7C000000, // Range Minimum
1303 0x7FFFFFFF, // Range Maximum
1304 0x00000000, // Translation Offset
1305 0x04000000, // Length
1306 ,, _Y03, AddressRangeMemory, TypeStatic)
1307 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1308 0x00000000, // Granularity
1309 0x80000000, // Range Minimum
1310 0xDFFFFFFF, // Range Maximum
1311 0x00000000, // Translation Offset
1312 0x60000000, // Length
1313 ,, _Y02, AddressRangeMemory, TypeStatic)
1314 })
1315 Name (GUID, ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */)
1316 Name (SUPP, Zero)
1317 Name (CTRL, Zero)
1318 Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities
1319 {
1320 Local0 = Arg3
1321 CreateDWordField (Local0, Zero, CDW1)
1322 CreateDWordField (Local0, 0x04, CDW2)
1323 CreateDWordField (Local0, 0x08, CDW3)
1324 If ((Arg0 == GUID))
1325 {
1326 SUPP = CDW2 /* \_SB_.PCI0._OSC.CDW2 */
1327 CTRL = CDW3 /* \_SB_.PCI0._OSC.CDW3 */
1328 If (~(CDW1 & One))
1329 {
1330 If ((CTRL & 0x02))
1331 {
1332 NHPG ()
1333 }
1334
1335 If ((CTRL & 0x04))
1336 {
1337 NPME ()
1338 }
1339 }
1340
1341 If ((Arg1 != One))
1342 {
1343 CDW1 |= 0x08
1344 }
1345
1346 If ((CDW3 != CTRL))
1347 {
1348 CDW1 |= 0x10
1349 }
1350
1351 CDW3 = CTRL /* \_SB_.PCI0.CTRL */
1352 OSCC = CTRL /* \_SB_.PCI0.CTRL */
1353 Return (Local0)
1354 }
1355 Else
1356 {
1357 CDW1 |= 0x04
1358 Return (Local0)
1359 }
1360 }
1361
1362 Device (LPCB)
1363 {
1364 Name (_ADR, 0x001F0000) // _ADR: Address
1365 Scope (\_SB)
1366 {
1367 OperationRegion (ILBR, SystemMemory, IBAS, 0x8C)
1368 Field (ILBR, AnyAcc, NoLock, Preserve)
1369 {
1370 Offset (0x08),
1371 PARC, 8,
1372 PBRC, 8,
1373 PCRC, 8,
1374 PDRC, 8,
1375 PERC, 8,
1376 PFRC, 8,
1377 PGRC, 8,
1378 PHRC, 8,
1379 Offset (0x88),
1380 , 4,
1381 UI4E, 1
1382 }
1383
1384 Device (LNKA)
1385 {
1386 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1387 Name (_UID, One) // _UID: Unique ID
1388 Method (_DIS, 0, Serialized) // _DIS: Disable Device
1389 {
1390 PARC |= 0x80
1391 }
1392
1393 Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
1394 {
1395 Return (PRSA) /* \_SB_.PRSA */
1396 }
1397
1398 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1399 {
1400 Name (RTLA, ResourceTemplate ()
1401 {
1402 IRQ (Level, ActiveLow, Shared, )
1403 {}
1404 })
1405 CreateWordField (RTLA, One, IRQ0)
1406 IRQ0 = Zero
1407 IRQ0 = (One << (PARC & 0x0F))
1408 Return (RTLA) /* \_SB_.LNKA._CRS.RTLA */
1409 }
1410
1411 Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
1412 {
1413 CreateWordField (Arg0, One, IRQ0)
1414 FindSetRightBit (IRQ0, Local0)
1415 Local0--
1416 PARC = Local0
1417 }
1418
1419 Method (_STA, 0, Serialized) // _STA: Status
1420 {
1421 If ((PARC & 0x80))
1422 {
1423 Return (0x09)
1424 }
1425 Else
1426 {
1427 Return (0x0B)
1428 }
1429 }
1430 }
1431
1432 Device (LNKB)
1433 {
1434 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1435 Name (_UID, 0x02) // _UID: Unique ID
1436 Method (_DIS, 0, Serialized) // _DIS: Disable Device
1437 {
1438 PBRC |= 0x80
1439 }
1440
1441 Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
1442 {
1443 Return (PRSB) /* \_SB_.PRSB */
1444 }
1445
1446 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1447 {
1448 Name (RTLB, ResourceTemplate ()
1449 {
1450 IRQ (Level, ActiveLow, Shared, )
1451 {}
1452 })
1453 CreateWordField (RTLB, One, IRQ0)
1454 IRQ0 = Zero
1455 IRQ0 = (One << (PBRC & 0x0F))
1456 Return (RTLB) /* \_SB_.LNKB._CRS.RTLB */
1457 }
1458
1459 Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
1460 {
1461 CreateWordField (Arg0, One, IRQ0)
1462 FindSetRightBit (IRQ0, Local0)
1463 Local0--
1464 PBRC = Local0
1465 }
1466
1467 Method (_STA, 0, Serialized) // _STA: Status
1468 {
1469 If ((PBRC & 0x80))
1470 {
1471 Return (0x09)
1472 }
1473 Else
1474 {
1475 Return (0x0B)
1476 }
1477 }
1478 }
1479
1480 Device (LNKC)
1481 {
1482 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1483 Name (_UID, 0x03) // _UID: Unique ID
1484 Method (_DIS, 0, Serialized) // _DIS: Disable Device
1485 {
1486 PCRC |= 0x80
1487 }
1488
1489 Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
1490 {
1491 Return (PRSC) /* \_SB_.PRSC */
1492 }
1493
1494 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1495 {
1496 Name (RTLC, ResourceTemplate ()
1497 {
1498 IRQ (Level, ActiveLow, Shared, )
1499 {}
1500 })
1501 CreateWordField (RTLC, One, IRQ0)
1502 IRQ0 = Zero
1503 IRQ0 = (One << (PCRC & 0x0F))
1504 Return (RTLC) /* \_SB_.LNKC._CRS.RTLC */
1505 }
1506
1507 Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
1508 {
1509 CreateWordField (Arg0, One, IRQ0)
1510 FindSetRightBit (IRQ0, Local0)
1511 Local0--
1512 PCRC = Local0
1513 }
1514
1515 Method (_STA, 0, Serialized) // _STA: Status
1516 {
1517 If ((PCRC & 0x80))
1518 {
1519 Return (0x09)
1520 }
1521 Else
1522 {
1523 Return (0x0B)
1524 }
1525 }
1526 }
1527
1528 Device (LNKD)
1529 {
1530 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1531 Name (_UID, 0x04) // _UID: Unique ID
1532 Method (_DIS, 0, Serialized) // _DIS: Disable Device
1533 {
1534 PDRC |= 0x80
1535 }
1536
1537 Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
1538 {
1539 Return (PRSD) /* \_SB_.PRSD */
1540 }
1541
1542 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1543 {
1544 Name (RTLD, ResourceTemplate ()
1545 {
1546 IRQ (Level, ActiveLow, Shared, )
1547 {}
1548 })
1549 CreateWordField (RTLD, One, IRQ0)
1550 IRQ0 = Zero
1551 IRQ0 = (One << (PDRC & 0x0F))
1552 Return (RTLD) /* \_SB_.LNKD._CRS.RTLD */
1553 }
1554
1555 Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
1556 {
1557 CreateWordField (Arg0, One, IRQ0)
1558 FindSetRightBit (IRQ0, Local0)
1559 Local0--
1560 PDRC = Local0
1561 }
1562
1563 Method (_STA, 0, Serialized) // _STA: Status
1564 {
1565 If ((PDRC & 0x80))
1566 {
1567 Return (0x09)
1568 }
1569 Else
1570 {
1571 Return (0x0B)
1572 }
1573 }
1574 }
1575
1576 Device (LNKE)
1577 {
1578 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1579 Name (_UID, 0x05) // _UID: Unique ID
1580 Method (_DIS, 0, Serialized) // _DIS: Disable Device
1581 {
1582 PERC |= 0x80
1583 }
1584
1585 Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
1586 {
1587 Return (PRSE) /* \_SB_.PRSE */
1588 }
1589
1590 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1591 {
1592 Name (RTLE, ResourceTemplate ()
1593 {
1594 IRQ (Level, ActiveLow, Shared, )
1595 {}
1596 })
1597 CreateWordField (RTLE, One, IRQ0)
1598 IRQ0 = Zero
1599 IRQ0 = (One << (PERC & 0x0F))
1600 Return (RTLE) /* \_SB_.LNKE._CRS.RTLE */
1601 }
1602
1603 Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
1604 {
1605 CreateWordField (Arg0, One, IRQ0)
1606 FindSetRightBit (IRQ0, Local0)
1607 Local0--
1608 PERC = Local0
1609 }
1610
1611 Method (_STA, 0, Serialized) // _STA: Status
1612 {
1613 If ((PERC & 0x80))
1614 {
1615 Return (0x09)
1616 }
1617 Else
1618 {
1619 Return (0x0B)
1620 }
1621 }
1622 }
1623
1624 Device (LNKF)
1625 {
1626 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1627 Name (_UID, 0x06) // _UID: Unique ID
1628 Method (_DIS, 0, Serialized) // _DIS: Disable Device
1629 {
1630 PFRC |= 0x80
1631 }
1632
1633 Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
1634 {
1635 Return (PRSF) /* \_SB_.PRSF */
1636 }
1637
1638 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1639 {
1640 Name (RTLF, ResourceTemplate ()
1641 {
1642 IRQ (Level, ActiveLow, Shared, )
1643 {}
1644 })
1645 CreateWordField (RTLF, One, IRQ0)
1646 IRQ0 = Zero
1647 IRQ0 = (One << (PFRC & 0x0F))
1648 Return (RTLF) /* \_SB_.LNKF._CRS.RTLF */
1649 }
1650
1651 Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
1652 {
1653 CreateWordField (Arg0, One, IRQ0)
1654 FindSetRightBit (IRQ0, Local0)
1655 Local0--
1656 PFRC = Local0
1657 }
1658
1659 Method (_STA, 0, Serialized) // _STA: Status
1660 {
1661 If ((PFRC & 0x80))
1662 {
1663 Return (0x09)
1664 }
1665 Else
1666 {
1667 Return (0x0B)
1668 }
1669 }
1670 }
1671
1672 Device (LNKG)
1673 {
1674 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1675 Name (_UID, 0x07) // _UID: Unique ID
1676 Method (_DIS, 0, Serialized) // _DIS: Disable Device
1677 {
1678 PGRC |= 0x80
1679 }
1680
1681 Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
1682 {
1683 Return (PRSG) /* \_SB_.PRSG */
1684 }
1685
1686 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1687 {
1688 Name (RTLG, ResourceTemplate ()
1689 {
1690 IRQ (Level, ActiveLow, Shared, )
1691 {}
1692 })
1693 CreateWordField (RTLG, One, IRQ0)
1694 IRQ0 = Zero
1695 IRQ0 = (One << (PGRC & 0x0F))
1696 Return (RTLG) /* \_SB_.LNKG._CRS.RTLG */
1697 }
1698
1699 Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
1700 {
1701 CreateWordField (Arg0, One, IRQ0)
1702 FindSetRightBit (IRQ0, Local0)
1703 Local0--
1704 PGRC = Local0
1705 }
1706
1707 Method (_STA, 0, Serialized) // _STA: Status
1708 {
1709 If ((PGRC & 0x80))
1710 {
1711 Return (0x09)
1712 }
1713 Else
1714 {
1715 Return (0x0B)
1716 }
1717 }
1718 }
1719
1720 Device (LNKH)
1721 {
1722 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1723 Name (_UID, 0x08) // _UID: Unique ID
1724 Method (_DIS, 0, Serialized) // _DIS: Disable Device
1725 {
1726 PHRC |= 0x80
1727 }
1728
1729 Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
1730 {
1731 Return (PRSH) /* \_SB_.PRSH */
1732 }
1733
1734 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1735 {
1736 Name (RTLH, ResourceTemplate ()
1737 {
1738 IRQ (Level, ActiveLow, Shared, )
1739 {}
1740 })
1741 CreateWordField (RTLH, One, IRQ0)
1742 IRQ0 = Zero
1743 IRQ0 = (One << (PHRC & 0x0F))
1744 Return (RTLH) /* \_SB_.LNKH._CRS.RTLH */
1745 }
1746
1747 Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
1748 {
1749 CreateWordField (Arg0, One, IRQ0)
1750 FindSetRightBit (IRQ0, Local0)
1751 Local0--
1752 PHRC = Local0
1753 }
1754
1755 Method (_STA, 0, Serialized) // _STA: Status
1756 {
1757 If ((PHRC & 0x80))
1758 {
1759 Return (0x09)
1760 }
1761 Else
1762 {
1763 Return (0x0B)
1764 }
1765 }
1766 }
1767 }
1768
1769 OperationRegion (LPC0, PCI_Config, Zero, 0xC0)
1770 Field (LPC0, AnyAcc, NoLock, Preserve)
1771 {
1772 Offset (0x08),
1773 SRID, 8,
1774 Offset (0x80),
1775 C1EN, 1,
1776 Offset (0x84)
1777 }
1778
1779 Device (FWHD)
1780 {
1781 Name (_HID, EisaId ("INT0800") /* Intel 82802 Firmware Hub Device */) // _HID: Hardware ID
1782 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
1783 {
1784 Memory32Fixed (ReadOnly,
1785 0xFF000000, // Address Base
1786 0x01000000, // Address Length
1787 )
1788 })
1789 }
1790
1791 Scope (\_SB)
1792 {
1793 Device (RTC)
1794 {
1795 Name (_HID, EisaId ("PNP0B00") /* AT Real-Time Clock */) // _HID: Hardware ID
1796 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
1797 {
1798 IO (Decode16,
1799 0x0070, // Range Minimum
1800 0x0070, // Range Maximum
1801 0x01, // Alignment
1802 0x08, // Length
1803 )
1804 })
1805 }
1806
1807 Device (HPET)
1808 {
1809 Name (_HID, EisaId ("PNP0103") /* HPET System Timer */) // _HID: Hardware ID
1810 Name (_UID, Zero) // _UID: Unique ID
1811 Method (_STA, 0, NotSerialized) // _STA: Status
1812 {
1813 If ((HPTE == Zero))
1814 {
1815 Return (Zero)
1816 }
1817
1818 Return (0x0F)
1819 }
1820
1821 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
1822 {
1823 Name (RBUF, ResourceTemplate ()
1824 {
1825 Memory32Fixed (ReadWrite,
1826 0xFED00000, // Address Base
1827 0x00000400, // Address Length
1828 )
1829 Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
1830 {
1831 0x00000008,
1832 }
1833 })
1834 Name (GBUF, ResourceTemplate ()
1835 {
1836 Memory32Fixed (ReadWrite,
1837 0xFED00000, // Address Base
1838 0x00000400, // Address Length
1839 )
1840 Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
1841 {
1842 0x00000008,
1843 }
1844 })
1845 If ((OSID == One))
1846 {
1847 Return (RBUF) /* \_SB_.HPET._CRS.RBUF */
1848 }
1849
1850 Return (GBUF) /* \_SB_.HPET._CRS.GBUF */
1851 }
1852 }
1853 }
1854
1855 Device (IPIC)
1856 {
1857 Name (_HID, EisaId ("PNP0000") /* 8259-compatible Programmable Interrupt Controller */) // _HID: Hardware ID
1858 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
1859 {
1860 IO (Decode16,
1861 0x0020, // Range Minimum
1862 0x0020, // Range Maximum
1863 0x01, // Alignment
1864 0x02, // Length
1865 )
1866 IO (Decode16,
1867 0x0024, // Range Minimum
1868 0x0024, // Range Maximum
1869 0x01, // Alignment
1870 0x02, // Length
1871 )
1872 IO (Decode16,
1873 0x0028, // Range Minimum
1874 0x0028, // Range Maximum
1875 0x01, // Alignment
1876 0x02, // Length
1877 )
1878 IO (Decode16,
1879 0x002C, // Range Minimum
1880 0x002C, // Range Maximum
1881 0x01, // Alignment
1882 0x02, // Length
1883 )
1884 IO (Decode16,
1885 0x0030, // Range Minimum
1886 0x0030, // Range Maximum
1887 0x01, // Alignment
1888 0x02, // Length
1889 )
1890 IO (Decode16,
1891 0x0034, // Range Minimum
1892 0x0034, // Range Maximum
1893 0x01, // Alignment
1894 0x02, // Length
1895 )
1896 IO (Decode16,
1897 0x0038, // Range Minimum
1898 0x0038, // Range Maximum
1899 0x01, // Alignment
1900 0x02, // Length
1901 )
1902 IO (Decode16,
1903 0x003C, // Range Minimum
1904 0x003C, // Range Maximum
1905 0x01, // Alignment
1906 0x02, // Length
1907 )
1908 IO (Decode16,
1909 0x00A0, // Range Minimum
1910 0x00A0, // Range Maximum
1911 0x01, // Alignment
1912 0x02, // Length
1913 )
1914 IO (Decode16,
1915 0x00A4, // Range Minimum
1916 0x00A4, // Range Maximum
1917 0x01, // Alignment
1918 0x02, // Length
1919 )
1920 IO (Decode16,
1921 0x00A8, // Range Minimum
1922 0x00A8, // Range Maximum
1923 0x01, // Alignment
1924 0x02, // Length
1925 )
1926 IO (Decode16,
1927 0x00AC, // Range Minimum
1928 0x00AC, // Range Maximum
1929 0x01, // Alignment
1930 0x02, // Length
1931 )
1932 IO (Decode16,
1933 0x00B0, // Range Minimum
1934 0x00B0, // Range Maximum
1935 0x01, // Alignment
1936 0x02, // Length
1937 )
1938 IO (Decode16,
1939 0x00B4, // Range Minimum
1940 0x00B4, // Range Maximum
1941 0x01, // Alignment
1942 0x02, // Length
1943 )
1944 IO (Decode16,
1945 0x00B8, // Range Minimum
1946 0x00B8, // Range Maximum
1947 0x01, // Alignment
1948 0x02, // Length
1949 )
1950 IO (Decode16,
1951 0x00BC, // Range Minimum
1952 0x00BC, // Range Maximum
1953 0x01, // Alignment
1954 0x02, // Length
1955 )
1956 IO (Decode16,
1957 0x04D0, // Range Minimum
1958 0x04D0, // Range Maximum
1959 0x01, // Alignment
1960 0x02, // Length
1961 )
1962 IRQNoFlags ()
1963 {2}
1964 })
1965 }
1966
1967 Device (LDRC)
1968 {
1969 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
1970 Name (_UID, 0x02) // _UID: Unique ID
1971 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
1972 {
1973 IO (Decode16,
1974 0x004E, // Range Minimum
1975 0x004E, // Range Maximum
1976 0x01, // Alignment
1977 0x02, // Length
1978 )
1979 IO (Decode16,
1980 0x0061, // Range Minimum
1981 0x0061, // Range Maximum
1982 0x01, // Alignment
1983 0x01, // Length
1984 )
1985 IO (Decode16,
1986 0x0063, // Range Minimum
1987 0x0063, // Range Maximum
1988 0x01, // Alignment
1989 0x01, // Length
1990 )
1991 IO (Decode16,
1992 0x0065, // Range Minimum
1993 0x0065, // Range Maximum
1994 0x01, // Alignment
1995 0x01, // Length
1996 )
1997 IO (Decode16,
1998 0x0067, // Range Minimum
1999 0x0067, // Range Maximum
2000 0x01, // Alignment
2001 0x01, // Length
2002 )
2003 IO (Decode16,
2004 0x0070, // Range Minimum
2005 0x0070, // Range Maximum
2006 0x01, // Alignment
2007 0x01, // Length
2008 )
2009 IO (Decode16,
2010 0x0080, // Range Minimum
2011 0x0080, // Range Maximum
2012 0x01, // Alignment
2013 0x10, // Length
2014 )
2015 IO (Decode16,
2016 0x0092, // Range Minimum
2017 0x0092, // Range Maximum
2018 0x01, // Alignment
2019 0x01, // Length
2020 )
2021 IO (Decode16,
2022 0x00B2, // Range Minimum
2023 0x00B2, // Range Maximum
2024 0x01, // Alignment
2025 0x02, // Length
2026 )
2027 IO (Decode16,
2028 0x0680, // Range Minimum
2029 0x0680, // Range Maximum
2030 0x01, // Alignment
2031 0x20, // Length
2032 )
2033 IO (Decode16,
2034 0x0400, // Range Minimum
2035 0x0400, // Range Maximum
2036 0x01, // Alignment
2037 0x80, // Length
2038 )
2039 IO (Decode16,
2040 0x0500, // Range Minimum
2041 0x0500, // Range Maximum
2042 0x01, // Alignment
2043 0xFF, // Length
2044 )
2045 })
2046 }
2047
2048 Device (TIMR)
2049 {
2050 Name (_HID, EisaId ("PNP0100") /* PC-class System Timer */) // _HID: Hardware ID
2051 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
2052 {
2053 IO (Decode16,
2054 0x0040, // Range Minimum
2055 0x0040, // Range Maximum
2056 0x01, // Alignment
2057 0x04, // Length
2058 )
2059 IO (Decode16,
2060 0x0050, // Range Minimum
2061 0x0050, // Range Maximum
2062 0x10, // Alignment
2063 0x04, // Length
2064 )
2065 IRQNoFlags ()
2066 {0}
2067 })
2068 }
2069
2070 Device (IURT)
2071 {
2072 Name (_HID, EisaId ("PNP0501") /* 16550A-compatible COM Serial Port */) // _HID: Hardware ID
2073 Name (_UID, One) // _UID: Unique ID
2074 Method (_STA, 0, Serialized) // _STA: Status
2075 {
2076 If ((USEL == Zero))
2077 {
2078 UI4E = One
2079 C1EN = One
2080 Return (0x0F)
2081 }
2082
2083 Return (Zero)
2084 }
2085
2086 Method (_DIS, 0, Serialized) // _DIS: Disable Device
2087 {
2088 If (((BDID != One) && ((BDID != 0x0A) &&
2089 (BDID != 0x09))))
2090 {
2091 UI4E = Zero
2092 C1EN = Zero
2093 }
2094 }
2095
2096 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
2097 {
2098 Name (BUF0, ResourceTemplate ()
2099 {
2100 IO (Decode16,
2101 0x03F8, // Range Minimum
2102 0x03F8, // Range Maximum
2103 0x01, // Alignment
2104 0x08, // Length
2105 )
2106 IRQNoFlags ()
2107 {4}
2108 })
2109 Return (BUF0) /* \_SB_.PCI0.LPCB.IURT._CRS.BUF0 */
2110 }
2111 }
2112 }
2113
2114 Method (GDID, 0, NotSerialized)
2115 {
2116 If (^^GPO0.DKCD)
2117 {
2118 Return (Zero)
2119 }
2120 Else
2121 {
2122 If (^^GPO0.KBDT)
2123 {
2124 Return (0x02)
2125 }
2126 ElseIf (^^GPO0.CRDT)
2127 {
2128 Return (One)
2129 }
2130
2131 Return (Zero)
2132 }
2133 }
2134 }
2135 }
2136
2137 Scope (\)
2138 {
2139 OperationRegion (PMIO, SystemIO, PMBS, 0x46)
2140 Field (PMIO, ByteAcc, NoLock, Preserve)
2141 {
2142 Offset (0x01),
2143 PWBS, 1,
2144 Offset (0x20),
2145 , 13,
2146 PMEB, 1,
2147 Offset (0x30),
2148 , 4,
2149 SLPE, 1,
2150 Offset (0x34),
2151 , 4,
2152 SLPS, 1,
2153 Offset (0x35),
2154 PM1S, 1,
2155 Offset (0x42),
2156 , 1,
2157 GPEC, 1
2158 }
2159
2160 Field (PMIO, ByteAcc, NoLock, WriteAsZeros)
2161 {
2162 Offset (0x20),
2163 , 4,
2164 PSCI, 1,
2165 SCIS, 1
2166 }
2167
2168 OperationRegion (PMCR, SystemMemory, PMCB, 0x0100)
2169 Field (PMCR, DWordAcc, Lock, Preserve)
2170 {
2171 Offset (0x34),
2172 L10D, 1,
2173 L11D, 1,
2174 L12D, 1,
2175 L13D, 1,
2176 L14D, 1,
2177 L15D, 1,
2178 L16D, 1,
2179 L17D, 1,
2180 SD1D, 1,
2181 SD2D, 1,
2182 SD3D, 1,
2183 , 1,
2184 , 1,
2185 LPED, 1,
2186 OTGD, 1,
2187 Offset (0x36),
2188 , 1,
2189 , 1,
2190 , 1,
2191 , 1,
2192 RP1D, 1,
2193 RP2D, 1,
2194 RP3D, 1,
2195 RP4D, 1,
2196 L20D, 1,
2197 L21D, 1,
2198 L22D, 1,
2199 L23D, 1,
2200 L24D, 1,
2201 L25D, 1,
2202 L26D, 1,
2203 L27D, 1,
2204 , 1,
2205 , 1,
2206 , 1,
2207 , 1,
2208 ISHD, 1,
2209 Offset (0x3C),
2210 Offset (0x60),
2211 CKC0, 2,
2212 CKF0, 1,
2213 Offset (0x64),
2214 CKC1, 2,
2215 CKF1, 1,
2216 Offset (0x68),
2217 CKC2, 2,
2218 CKF2, 1,
2219 Offset (0x6C),
2220 CKC3, 2,
2221 CKF3, 1,
2222 Offset (0x70),
2223 CKC4, 2,
2224 CKF4, 1,
2225 Offset (0x74),
2226 CKC5, 2,
2227 CKF5, 1,
2228 Offset (0x78),
2229 Offset (0xA0),
2230 PMCD, 32,
2231 Offset (0xEC),
2232 PMCC, 32
2233 }
2234
2235 OperationRegion (PPSC, SystemMemory, PMCP, 0x08)
2236 Field (PPSC, DWordAcc, Lock, Preserve)
2237 {
2238 DM1P, 1,
2239 PW1P, 1,
2240 PW2P, 1,
2241 UR1P, 1,
2242 UR2P, 1,
2243 SP1P, 1,
2244 SP2P, 1,
2245 SP3P, 1,
2246 EMMP, 1,
2247 SDI1, 1,
2248 SDI2, 1,
2249 , 2,
2250 LPEP, 1,
2251 , 1,
2252 Offset (0x02),
2253 , 1,
2254 SATP, 1,
2255 USBP, 1,
2256 SECP, 1,
2257 PRP1, 1,
2258 PRP2, 1,
2259 PRP3, 1,
2260 PRP4, 1,
2261 DM2P, 1,
2262 IC1P, 1,
2263 IC2P, 1,
2264 IC3P, 1,
2265 IC4P, 1,
2266 IC5P, 1,
2267 IC6P, 1,
2268 IC7P, 1,
2269 , 2,
2270 ISHP, 1,
2271 Offset (0x08)
2272 }
2273 }
2274
2275 Scope (_SB.PCI0)
2276 {
2277 Device (XHC1)
2278 {
2279 Name (_ADR, 0x00140000) // _ADR: Address
2280 Name (_DDN, "Baytrail XHCI controller (CCG core/Host only)") // _DDN: DOS Device Name
2281 Name (XHD3, Zero)
2282 Name (XCD3, Zero)
2283 Name (_STR, Unicode ("Baytrail XHCI controller (CCG core/Host only)")) // _STR: Description String
2284 Name (MSET, Zero)
2285 Name (DDST, Zero)
2286 Name (XFLT, Zero)
2287 Method (MINF, 0, NotSerialized)
2288 {
2289 If ((OSID == 0x04))
2290 {
2291 Return (Package (0x03)
2292 {
2293 PSSE,
2294 0x05,
2295 MODM
2296 })
2297 }
2298 }
2299
2300 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
2301 {
2302 }
2303
2304 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
2305 {
2306 }
2307
2308 OperationRegion (XHOP, SystemMemory, 0xE00A0000, 0x40)
2309 Field (XHOP, DWordAcc, NoLock, Preserve)
2310 {
2311 Offset (0x10),
2312 XBAR, 32
2313 }
2314
2315 OperationRegion (XOP1, SystemMemory, XBAR, 0x884C)
2316 Field (XOP1, DWordAcc, NoLock, Preserve)
2317 {
2318 Offset (0x52C),
2319 CCS, 1,
2320 , 4,
2321 PLS, 4,
2322 PP, 1,
2323 Offset (0x869C),
2324 , 18,
2325 D3HE, 1,
2326 Offset (0x8808),
2327 , 30,
2328 S1PD, 1,
2329 S1PU, 1
2330 }
2331
2332 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
2333 {
2334 If ((Arg0 == ToUUID ("ac340cb7-e901-45bf-b7e6-2b34ec931e23")))
2335 {
2336 If ((Arg1 == 0x03))
2337 {
2338 XFLT = Arg1
2339 }
2340
2341 If ((Arg1 == 0x05))
2342 {
2343 If ((PSSE == One))
2344 {
2345 XCD3 = Zero
2346 If ((XHD3 == One))
2347 {
2348 XHD3 = Zero
2349 D3HE = Zero
2350 }
2351
2352 If ((((CCS == Zero) || (PP == Zero)) || ((
2353 PLS >= 0x04) && (PLS <= 0x0F))))
2354 {
2355 D3HE = Zero
2356 }
2357 Else
2358 {
2359 D3HE = One
2360 }
2361 }
2362 }
2363
2364 If ((Arg1 == 0x06))
2365 {
2366 If ((PSSE == One))
2367 {
2368 XCD3 = One
2369 If ((((CCS == Zero) || (PP == Zero)) || ((
2370 PLS >= 0x04) && (PLS <= 0x0F))))
2371 {
2372 D3HE = Zero
2373 Notify (XHC1, 0x02) // Device Wake
2374 }
2375 Else
2376 {
2377 D3HE = One
2378 }
2379 }
2380 }
2381 }
2382 }
2383
2384 Method (_S0W, 0, NotSerialized) // _S0W: S0 Device Wake State
2385 {
2386 If (((OSID == 0x02) || (OSID == 0x04)))
2387 {
2388 Return (0x03)
2389 }
2390
2391 If ((XFLT == Zero))
2392 {
2393 Return (Zero)
2394 }
2395 Else
2396 {
2397 Return (0x03)
2398 }
2399 }
2400
2401 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
2402 {
2403 Name (UBUF, ResourceTemplate ()
2404 {
2405 GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000,
2406 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
2407 )
2408 { // Pin list
2409 0x004E
2410 }
2411 GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000,
2412 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
2413 )
2414 { // Pin list
2415 0x0007
2416 }
2417 })
2418 Name (WBUF, Buffer (0x02)
2419 {
2420 0x79, 0x00 // y.
2421 })
2422 If (((BDID != One) && ((OSID == 0x02) || (OSID ==
2423 0x04))))
2424 {
2425 Return (UBUF) /* \_SB_.PCI0.XHC1._CRS.UBUF */
2426 }
2427 Else
2428 {
2429 Return (WBUF) /* \_SB_.PCI0.XHC1._CRS.WBUF */
2430 }
2431 }
2432
2433 OperationRegion (XHCR, PCI_Config, 0x75, One)
2434 Field (XHCR, ByteAcc, NoLock, WriteAsZeros)
2435 {
2436 PMEE, 1,
2437 , 6,
2438 PMES, 1
2439 }
2440
2441 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
2442 {
2443 Return (Zero)
2444 }
2445
2446 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
2447 {
2448 }
2449
2450 Name (IPRW, Package (0x02)
2451 {
2452 0x0D,
2453 0x04
2454 })
2455 Method (_PR3, 0, NotSerialized) // _PR3: Power Resources for D3hot
2456 {
2457 Return (Package (0x01)
2458 {
2459 USBC
2460 })
2461 }
2462
2463 Method (_STA, 0, NotSerialized) // _STA: Status
2464 {
2465 If ((XHCI != Zero))
2466 {
2467 Return (0x0F)
2468 }
2469 Else
2470 {
2471 Return (Zero)
2472 }
2473 }
2474
2475 OperationRegion (XPRT, PCI_Config, 0xD0, 0x10)
2476 Field (XPRT, DWordAcc, NoLock, Preserve)
2477 {
2478 PR2, 32,
2479 PR2M, 32,
2480 PR3, 32,
2481 PR3M, 32
2482 }
2483
2484 Device (RHUB)
2485 {
2486 Name (_ADR, Zero) // _ADR: Address
2487 Method (TPLD, 2, Serialized)
2488 {
2489 Name (PCKG, Package (0x01)
2490 {
2491 Buffer (0x10){}
2492 })
2493 CreateField (DerefOf (PCKG [Zero]), Zero, 0x07, REV)
2494 REV = One
2495 CreateField (DerefOf (PCKG [Zero]), 0x40, One, VISI)
2496 VISI = Arg0
2497 CreateField (DerefOf (PCKG [Zero]), 0x57, 0x08, GPOS)
2498 GPOS = Arg1
2499 CreateField (DerefOf (PCKG [Zero]), 0x4A, 0x04, SHAP)
2500 SHAP = One
2501 CreateField (DerefOf (PCKG [Zero]), 0x20, 0x10, WID)
2502 WID = 0x08
2503 CreateField (DerefOf (PCKG [Zero]), 0x30, 0x10, HGT)
2504 HGT = 0x03
2505 Return (PCKG) /* \_SB_.PCI0.XHC1.RHUB.TPLD.PCKG */
2506 }
2507
2508 Device (SSP1)
2509 {
2510 Name (_ADR, 0x08) // _ADR: Address
2511 }
2512
2513 Device (HS01)
2514 {
2515 Name (_ADR, One) // _ADR: Address
2516 }
2517
2518 Device (SSP2)
2519 {
2520 Name (_ADR, 0x09) // _ADR: Address
2521 }
2522
2523 Device (HS02)
2524 {
2525 Name (_ADR, 0x02) // _ADR: Address
2526 }
2527
2528 Device (SSP3)
2529 {
2530 Name (_ADR, 0x0A) // _ADR: Address
2531 Name (_S0W, 0x02) // _S0W: S0 Device Wake State
2532 Method (_STA, 0, NotSerialized) // _STA: Status
2533 {
2534 Return (Zero)
2535 }
2536 }
2537
2538 Device (HS03)
2539 {
2540 Name (_ADR, 0x03) // _ADR: Address
2541 Name (_S0W, 0x02) // _S0W: S0 Device Wake State
2542 Method (_STA, 0, NotSerialized) // _STA: Status
2543 {
2544 Return (0x0F)
2545 }
2546 }
2547
2548 Device (SSP4)
2549 {
2550 Name (_ADR, 0x0B) // _ADR: Address
2551 }
2552
2553 Device (HS04)
2554 {
2555 Name (_ADR, 0x04) // _ADR: Address
2556 }
2557
2558 Device (SSC2)
2559 {
2560 Name (_ADR, 0x0D) // _ADR: Address
2561 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
2562 {
2563 Name (UPCP, Package (0x04)
2564 {
2565 0xFF,
2566 0xFF,
2567 Zero,
2568 Zero
2569 })
2570 Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.SSC2._UPC.UPCP */
2571 }
2572
2573 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
2574 {
2575 Name (PLDP, Package (0x01)
2576 {
2577 Buffer (0x14)
2578 {
2579 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
2580 /* 0008 */ 0x30, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, // 0.......
2581 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
2582 }
2583 })
2584 Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.SSC2._PLD.PLDP */
2585 }
2586 }
2587
2588 Device (HSC2)
2589 {
2590 Name (_ADR, 0x07) // _ADR: Address
2591 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
2592 {
2593 Name (UPCP, Package (0x04)
2594 {
2595 0xFF,
2596 0xFF,
2597 Zero,
2598 Zero
2599 })
2600 Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HSC2._UPC.UPCP */
2601 }
2602
2603 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
2604 {
2605 Name (PLDP, Package (0x01)
2606 {
2607 Buffer (0x14)
2608 {
2609 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
2610 /* 0008 */ 0x30, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, // 0.......
2611 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
2612 }
2613 })
2614 Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HSC2._PLD.PLDP */
2615 }
2616 }
2617
2618 Device (SSCW)
2619 {
2620 Name (_ADR, 0x0C) // _ADR: Address
2621 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
2622 {
2623 Name (UPCP, Package (0x04)
2624 {
2625 0xFF,
2626 0xFF,
2627 Zero,
2628 Zero
2629 })
2630 Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.SSCW._UPC.UPCP */
2631 }
2632
2633 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
2634 {
2635 Name (PLDP, Package (0x01)
2636 {
2637 Buffer (0x14)
2638 {
2639 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
2640 /* 0008 */ 0x30, 0x08, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, // 0.......
2641 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
2642 }
2643 })
2644 Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.SSCW._PLD.PLDP */
2645 }
2646 }
2647
2648 Device (HSC3)
2649 {
2650 Name (_ADR, 0x06) // _ADR: Address
2651 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
2652 {
2653 Name (UPCP, Package (0x04)
2654 {
2655 0xFF,
2656 0xFF,
2657 Zero,
2658 Zero
2659 })
2660 Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HSC3._UPC.UPCP */
2661 }
2662
2663 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
2664 {
2665 Name (PLDP, Package (0x01)
2666 {
2667 Buffer (0x14)
2668 {
2669 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
2670 /* 0008 */ 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0.......
2671 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
2672 }
2673 })
2674 Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HSC3._PLD.PLDP */
2675 }
2676 }
2677
2678 Device (HS05)
2679 {
2680 Name (_ADR, 0x05) // _ADR: Address
2681 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
2682 {
2683 Name (UPCP, Package (0x04)
2684 {
2685 Zero,
2686 0xFF,
2687 Zero,
2688 Zero
2689 })
2690 Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HS05._UPC.UPCP */
2691 }
2692
2693 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
2694 {
2695 Name (PLDP, Package (0x01)
2696 {
2697 Buffer (0x14)
2698 {
2699 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
2700 /* 0008 */ 0x00, 0x19, 0x00, 0x04, 0x03, 0x00, 0x00, 0x00, // ........
2701 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
2702 }
2703 })
2704 Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HS05._PLD.PLDP */
2705 }
2706 }
2707 }
2708 }
2709
2710 Device (OTG1)
2711 {
2712 Name (_ADR, 0x00160000) // _ADR: Address
2713 Name (_DDN, "Baytrail XHCI controller (Synopsys core/OTG)") // _DDN: DOS Device Name
2714 Name (_STR, Unicode ("Baytrail XHCI controller (Synopsys core/OTG)")) // _STR: Description String
2715 Name (_S0W, 0x03) // _S0W: S0 Device Wake State
2716 OperationRegion (PMEB, PCI_Config, 0x84, 0x04)
2717 Field (PMEB, WordAcc, NoLock, Preserve)
2718 {
2719 Offset (0x01),
2720 PMEE, 1,
2721 , 6,
2722 PMES, 1
2723 }
2724
2725 OperationRegion (GENR, PCI_Config, 0xA0, 0x10)
2726 Field (GENR, WordAcc, NoLock, Preserve)
2727 {
2728 , 18,
2729 CPME, 1,
2730 U2EN, 1,
2731 U3EN, 1
2732 }
2733
2734 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
2735 {
2736 CPME = One
2737 U2EN = One
2738 U3EN = One
2739 }
2740
2741 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
2742 {
2743 CPME = Zero
2744 U2EN = Zero
2745 U3EN = Zero
2746 }
2747
2748 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
2749 {
2750 }
2751
2752 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
2753 {
2754 Return (Zero)
2755 }
2756
2757 Method (_PR3, 0, NotSerialized) // _PR3: Power Resources for D3hot
2758 {
2759 Return (Package (0x01)
2760 {
2761 USBC
2762 })
2763 }
2764
2765 Method (_STA, 0, NotSerialized) // _STA: Status
2766 {
2767 If ((OTGM != Zero))
2768 {
2769 Return (0x0F)
2770 }
2771 Else
2772 {
2773 Return (Zero)
2774 }
2775 }
2776
2777 Method (SMBC, 2, NotSerialized)
2778 {
2779 Name (BUFF, Buffer (0x03)
2780 {
2781 0x00, 0x01, 0x00 // ...
2782 })
2783 CreateByteField (BUFF, Zero, BYAT)
2784 CreateByteField (BUFF, 0x02, DATA)
2785 If ((Arg0 == Zero)){}
2786 Else
2787 {
2788 }
2789 }
2790
2791 Method (TIBC, 2, NotSerialized)
2792 {
2793 If ((Arg0 == Zero))
2794 {
2795 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2796 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x02)
2797 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x42)
2798 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2799 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2800 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x05)
2801 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x8A)
2802 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2803 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2804 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, Zero)
2805 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x38)
2806 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2807 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2808 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, One)
2809 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
2810 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2811 }
2812 ElseIf ((Arg0 == One))
2813 {
2814 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2815 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x02)
2816 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x42)
2817 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2818 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2819 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x05)
2820 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x8A)
2821 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2822 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2823 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, Zero)
2824 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x39)
2825 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2826 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2827 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, One)
2828 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
2829 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2830 }
2831 ElseIf ((Arg0 == 0x02))
2832 {
2833 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2834 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x02)
2835 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x42)
2836 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2837 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2838 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x05)
2839 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x8A)
2840 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2841 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2842 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, Zero)
2843 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3A)
2844 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2845 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2846 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, One)
2847 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
2848 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2849 }
2850 ElseIf ((Arg0 == 0x03))
2851 {
2852 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2853 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x02)
2854 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x42)
2855 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2856 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2857 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x05)
2858 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x8A)
2859 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2860 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2861 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, Zero)
2862 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
2863 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2864 ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
2865 ^^I2C7.PMI5.SET (One, 0x5E, 0x26, One)
2866 ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
2867 ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
2868 }
2869 }
2870
2871 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
2872 {
2873 If ((Arg0 == ToUUID ("eaa3afa9-6469-4015-9041-a83634a7fa2d")))
2874 {
2875 If ((Arg2 == Zero))
2876 {
2877 Return (Zero)
2878 }
2879
2880 If ((Arg2 == One))
2881 {
2882 Return (One)
2883 }
2884 }
2885
2886 If ((Arg0 == ToUUID ("e2528aa0-8863-48f4-aa40-865e05902449")))
2887 {
2888 If ((BDID == 0x08))
2889 {
2890 Local0 = ^^I2C7.BATC.PSRC ()
2891 }
2892 ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
2893 {
2894 Local0 = ^^I2C7.WIDR.PSRC ()
2895 }
2896 Else
2897 {
2898 Local0 = ^^I2C1.BATC.PSRC ()
2899 }
2900
2901 If ((Arg2 == Zero))
2902 {
2903 Return (Zero)
2904 }
2905
2906 If ((Arg2 == One))
2907 {
2908 If ((Local0 == One))
2909 {
2910 Return (0x03)
2911 }
2912
2913 If ((Local0 == 0x02))
2914 {
2915 Return (Zero)
2916 }
2917
2918 If ((Local0 == 0x03))
2919 {
2920 Return (0x02)
2921 }
2922
2923 If ((Local0 == 0x04))
2924 {
2925 Return (One)
2926 }
2927
2928 If ((Local0 == 0x05))
2929 {
2930 Return (0x04)
2931 }
2932
2933 If ((Local0 == Zero))
2934 {
2935 Return (0x05)
2936 }
2937 }
2938 }
2939
2940 If ((Arg0 == ToUUID ("b2090db6-9135-4ef6-bd18-d5590dda90be")))
2941 {
2942 Name (BUFF, Buffer (0x03)
2943 {
2944 0x00, 0x01, 0x00 // ...
2945 })
2946 CreateByteField (BUFF, Zero, BYAT)
2947 CreateByteField (BUFF, 0x02, DATA)
2948 If ((Arg2 == Zero))
2949 {
2950 Return (Zero)
2951 }
2952
2953 If ((Arg2 == One))
2954 {
2955 If ((BDID == 0x03))
2956 {
2957 SMBC (Zero, Zero)
2958 }
2959 ElseIf (((BDID == 0x08) || ((BDID == 0x09) || (BDID ==
2960 0x0A))))
2961 {
2962 TIBC (Zero, Zero)
2963 }
2964 }
2965
2966 If ((Arg2 == 0x02))
2967 {
2968 If ((BDID == 0x03))
2969 {
2970 SMBC (Zero, Zero)
2971 }
2972 ElseIf (((BDID == 0x08) || ((BDID == 0x09) || (BDID ==
2973 0x0A))))
2974 {
2975 TIBC (0x02, Zero)
2976 }
2977 }
2978
2979 If ((Arg2 == 0x03))
2980 {
2981 If ((BDID == 0x03))
2982 {
2983 SMBC (Zero, One)
2984 }
2985 ElseIf (((BDID == 0x08) || ((BDID == 0x09) || (BDID ==
2986 0x0A))))
2987 {
2988 TIBC (One, One)
2989 }
2990 }
2991
2992 If ((Arg2 == 0x04))
2993 {
2994 If ((BDID == 0x03))
2995 {
2996 SMBC (One, One)
2997 }
2998 ElseIf (((BDID == 0x08) || ((BDID == 0x09) || (BDID ==
2999 0x0A))))
3000 {
3001 TIBC (0x03, One)
3002 }
3003 }
3004
3005 If ((Arg2 == 0x05))
3006 {
3007 If ((BDID == 0x03)){}
3008 }
3009 }
3010 }
3011 }
3012
3013 Device (GPTC)
3014 {
3015 Name (_HID, "GPTC0001") // _HID: Hardware ID
3016 Name (_CID, "GPTC0001") // _CID: Compatible ID
3017 Method (_STA, 0, NotSerialized) // _STA: Status
3018 {
3019 If (((OSID != One) && ((BDID == 0x09) || (BDID ==
3020 0x0A))))
3021 {
3022 Return (0x0F)
3023 }
3024
3025 Return (Zero)
3026 }
3027
3028 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
3029 {
3030 Name (ABUF, ResourceTemplate ()
3031 {
3032 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
3033 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
3034 )
3035 { // Pin list
3036 0x0000
3037 }
3038 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
3039 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
3040 )
3041 { // Pin list
3042 0x0002
3043 }
3044 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
3045 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
3046 )
3047 { // Pin list
3048 0x0003
3049 }
3050 })
3051 Return (ABUF) /* \_SB_.PCI0.GPTC._CRS.ABUF */
3052 }
3053 }
3054
3055 Device (PEPD)
3056 {
3057 Name (_HID, "INT33A4") // _HID: Hardware ID
3058 Name (_CID, EisaId ("PNP0D80") /* Windows-compatible System Power Management Controller */) // _CID: Compatible ID
3059 Name (_UID, One) // _UID: Unique ID
3060 Name (CDMP, Package (0x02){})
3061 Name (DEVY, Package (0x15)
3062 {
3063 Package (0x03)
3064 {
3065 "\\_PR.CPU0",
3066 One,
3067 Package (0x02)
3068 {
3069 Zero,
3070 Package (0x02)
3071 {
3072 0xFF,
3073 Zero
3074 }
3075 }
3076 },
3077
3078 Package (0x03)
3079 {
3080 "\\_PR.CPU1",
3081 One,
3082 Package (0x02)
3083 {
3084 Zero,
3085 Package (0x02)
3086 {
3087 0xFF,
3088 Zero
3089 }
3090 }
3091 },
3092
3093 Package (0x03)
3094 {
3095 "\\_PR.CPU2",
3096 One,
3097 Package (0x02)
3098 {
3099 Zero,
3100 Package (0x02)
3101 {
3102 0xFF,
3103 Zero
3104 }
3105 }
3106 },
3107
3108 Package (0x03)
3109 {
3110 "\\_PR.CPU3",
3111 One,
3112 Package (0x02)
3113 {
3114 Zero,
3115 Package (0x02)
3116 {
3117 0xFF,
3118 Zero
3119 }
3120 }
3121 },
3122
3123 Package (0x03)
3124 {
3125 "\\_SB.PCI0.GFX0",
3126 One,
3127 Package (0x02)
3128 {
3129 Zero,
3130 Package (0x02)
3131 {
3132 0xFF,
3133 0x03
3134 }
3135 }
3136 },
3137
3138 Package (0x03)
3139 {
3140 "\\_SB.PCI0.I2C1",
3141 One,
3142 Package (0x05)
3143 {
3144 Zero,
3145 Package (0x02)
3146 {
3147 Zero,
3148 Zero
3149 },
3150
3151 Package (0x02)
3152 {
3153 One,
3154 0x03
3155 },
3156
3157 Package (0x02)
3158 {
3159 0x02,
3160 0x03
3161 },
3162
3163 Package (0x02)
3164 {
3165 0x03,
3166 0x03
3167 }
3168 }
3169 },
3170
3171 Package (0x03)
3172 {
3173 "\\_SB.PCI0.I2C2",
3174 One,
3175 Package (0x05)
3176 {
3177 Zero,
3178 Package (0x02)
3179 {
3180 Zero,
3181 Zero
3182 },
3183
3184 Package (0x02)
3185 {
3186 One,
3187 0x03
3188 },
3189
3190 Package (0x02)
3191 {
3192 0x02,
3193 0x03
3194 },
3195
3196 Package (0x02)
3197 {
3198 0x03,
3199 0x03
3200 }
3201 }
3202 },
3203
3204 Package (0x03)
3205 {
3206 "\\_SB.PCI0.I2C3",
3207 One,
3208 Package (0x05)
3209 {
3210 Zero,
3211 Package (0x02)
3212 {
3213 Zero,
3214 Zero
3215 },
3216
3217 Package (0x02)
3218 {
3219 One,
3220 0x03
3221 },
3222
3223 Package (0x02)
3224 {
3225 0x02,
3226 0x03
3227 },
3228
3229 Package (0x02)
3230 {
3231 0x03,
3232 0x03
3233 }
3234 }
3235 },
3236
3237 Package (0x03)
3238 {
3239 "\\_SB.PCI0.I2C5",
3240 One,
3241 Package (0x05)
3242 {
3243 Zero,
3244 Package (0x02)
3245 {
3246 Zero,
3247 Zero
3248 },
3249
3250 Package (0x02)
3251 {
3252 One,
3253 0x03
3254 },
3255
3256 Package (0x02)
3257 {
3258 0x02,
3259 0x03
3260 },
3261
3262 Package (0x02)
3263 {
3264 0x03,
3265 0x03
3266 }
3267 }
3268 },
3269
3270 Package (0x03)
3271 {
3272 "\\_SB.PCI0.I2C6",
3273 One,
3274 Package (0x05)
3275 {
3276 Zero,
3277 Package (0x02)
3278 {
3279 Zero,
3280 Zero
3281 },
3282
3283 Package (0x02)
3284 {
3285 One,
3286 0x03
3287 },
3288
3289 Package (0x02)
3290 {
3291 0x02,
3292 0x03
3293 },
3294
3295 Package (0x02)
3296 {
3297 0x03,
3298 0x03
3299 }
3300 }
3301 },
3302
3303 Package (0x03)
3304 {
3305 "\\_SB.PCI0.I2C7",
3306 One,
3307 Package (0x05)
3308 {
3309 Zero,
3310 Package (0x02)
3311 {
3312 Zero,
3313 Zero
3314 },
3315
3316 Package (0x02)
3317 {
3318 One,
3319 0x03
3320 },
3321
3322 Package (0x02)
3323 {
3324 0x02,
3325 0x03
3326 },
3327
3328 Package (0x02)
3329 {
3330 0x03,
3331 0x03
3332 }
3333 }
3334 },
3335
3336 Package (0x03)
3337 {
3338 "\\_SB.PCI0.XHC1",
3339 One,
3340 Package (0x05)
3341 {
3342 Zero,
3343 Package (0x02)
3344 {
3345 Zero,
3346 Zero
3347 },
3348
3349 Package (0x02)
3350 {
3351 One,
3352 0x03
3353 },
3354
3355 Package (0x02)
3356 {
3357 0x02,
3358 0x03
3359 },
3360
3361 Package (0x02)
3362 {
3363 0x03,
3364 0x03
3365 }
3366 }
3367 },
3368
3369 Package (0x03)
3370 {
3371 "\\_SB.PCI0.SEC0",
3372 One,
3373 Package (0x05)
3374 {
3375 Zero,
3376 Package (0x02)
3377 {
3378 Zero,
3379 Zero
3380 },
3381
3382 Package (0x02)
3383 {
3384 One,
3385 0x03
3386 },
3387
3388 Package (0x02)
3389 {
3390 0x02,
3391 0x03
3392 },
3393
3394 Package (0x02)
3395 {
3396 0x03,
3397 0x03
3398 }
3399 }
3400 },
3401
3402 Package (0x03)
3403 {
3404 "\\_SB.PCI0.LPEA",
3405 One,
3406 Package (0x05)
3407 {
3408 Zero,
3409 Package (0x02)
3410 {
3411 Zero,
3412 Zero
3413 },
3414
3415 Package (0x02)
3416 {
3417 One,
3418 Zero
3419 },
3420
3421 Package (0x02)
3422 {
3423 0x02,
3424 0x03
3425 },
3426
3427 Package (0x02)
3428 {
3429 0x03,
3430 0x03
3431 }
3432 }
3433 },
3434
3435 Package (0x03)
3436 {
3437 "\\_SB.PCI0.SDHA",
3438 One,
3439 Package (0x05)
3440 {
3441 Zero,
3442 Package (0x02)
3443 {
3444 Zero,
3445 Zero
3446 },
3447
3448 Package (0x02)
3449 {
3450 One,
3451 0x03
3452 },
3453
3454 Package (0x02)
3455 {
3456 0x02,
3457 0x03
3458 },
3459
3460 Package (0x02)
3461 {
3462 0x03,
3463 0x03
3464 }
3465 }
3466 },
3467
3468 Package (0x03)
3469 {
3470 "\\_SB.PCI0.SDHC",
3471 One,
3472 Package (0x05)
3473 {
3474 Zero,
3475 Package (0x02)
3476 {
3477 Zero,
3478 Zero
3479 },
3480
3481 Package (0x02)
3482 {
3483 One,
3484 0x03
3485 },
3486
3487 Package (0x02)
3488 {
3489 0x02,
3490 0x03
3491 },
3492
3493 Package (0x02)
3494 {
3495 0x03,
3496 0x03
3497 }
3498 }
3499 },
3500
3501 Package (0x03)
3502 {
3503 "\\_SB.PCI0.SPI1",
3504 One,
3505 Package (0x05)
3506 {
3507 Zero,
3508 Package (0x02)
3509 {
3510 Zero,
3511 Zero
3512 },
3513
3514 Package (0x02)
3515 {
3516 One,
3517 0x03
3518 },
3519
3520 Package (0x02)
3521 {
3522 0x02,
3523 0x03
3524 },
3525
3526 Package (0x02)
3527 {
3528 0x03,
3529 0x03
3530 }
3531 }
3532 },
3533
3534 Package (0x03)
3535 {
3536 "\\_SB.PCI0.SPI2",
3537 One,
3538 Package (0x05)
3539 {
3540 Zero,
3541 Package (0x02)
3542 {
3543 Zero,
3544 Zero
3545 },
3546
3547 Package (0x02)
3548 {
3549 One,
3550 0x03
3551 },
3552
3553 Package (0x02)
3554 {
3555 0x02,
3556 0x03
3557 },
3558
3559 Package (0x02)
3560 {
3561 0x03,
3562 0x03
3563 }
3564 }
3565 },
3566
3567 Package (0x03)
3568 {
3569 "\\_SB.PCI0.SPI3",
3570 One,
3571 Package (0x05)
3572 {
3573 Zero,
3574 Package (0x02)
3575 {
3576 Zero,
3577 Zero
3578 },
3579
3580 Package (0x02)
3581 {
3582 One,
3583 0x03
3584 },
3585
3586 Package (0x02)
3587 {
3588 0x02,
3589 0x03
3590 },
3591
3592 Package (0x02)
3593 {
3594 0x03,
3595 0x03
3596 }
3597 }
3598 },
3599
3600 Package (0x03)
3601 {
3602 "\\_SB.PCI0.URT1",
3603 One,
3604 Package (0x05)
3605 {
3606 Zero,
3607 Package (0x02)
3608 {
3609 Zero,
3610 Zero
3611 },
3612
3613 Package (0x02)
3614 {
3615 One,
3616 0x03
3617 },
3618
3619 Package (0x02)
3620 {
3621 0x02,
3622 0x03
3623 },
3624
3625 Package (0x02)
3626 {
3627 0x03,
3628 0x03
3629 }
3630 }
3631 },
3632
3633 Package (0x03)
3634 {
3635 "\\_SB.PCI0.URT2",
3636 One,
3637 Package (0x05)
3638 {
3639 Zero,
3640 Package (0x02)
3641 {
3642 Zero,
3643 Zero
3644 },
3645
3646 Package (0x02)
3647 {
3648 One,
3649 0x03
3650 },
3651
3652 Package (0x02)
3653 {
3654 0x02,
3655 0x03
3656 },
3657
3658 Package (0x02)
3659 {
3660 0x03,
3661 0x03
3662 }
3663 }
3664 }
3665 })
3666 Name (DEVL, Package (0x15)
3667 {
3668 Package (0x03)
3669 {
3670 "\\_PR.CPU0",
3671 One,
3672 Package (0x02)
3673 {
3674 Zero,
3675 Package (0x02)
3676 {
3677 0xFF,
3678 Zero
3679 }
3680 }
3681 },
3682
3683 Package (0x03)
3684 {
3685 "\\_PR.CPU1",
3686 One,
3687 Package (0x02)
3688 {
3689 Zero,
3690 Package (0x02)
3691 {
3692 0xFF,
3693 Zero
3694 }
3695 }
3696 },
3697
3698 Package (0x03)
3699 {
3700 "\\_PR.CPU2",
3701 One,
3702 Package (0x02)
3703 {
3704 Zero,
3705 Package (0x02)
3706 {
3707 0xFF,
3708 Zero
3709 }
3710 }
3711 },
3712
3713 Package (0x03)
3714 {
3715 "\\_PR.CPU3",
3716 One,
3717 Package (0x02)
3718 {
3719 Zero,
3720 Package (0x02)
3721 {
3722 0xFF,
3723 Zero
3724 }
3725 }
3726 },
3727
3728 Package (0x03)
3729 {
3730 "\\_SB.PCI0.GFX0",
3731 One,
3732 Package (0x02)
3733 {
3734 Zero,
3735 Package (0x02)
3736 {
3737 0xFF,
3738 0x03
3739 }
3740 }
3741 },
3742
3743 Package (0x03)
3744 {
3745 "\\_SB.PCI0.I2C1",
3746 One,
3747 Package (0x05)
3748 {
3749 Zero,
3750 Package (0x02)
3751 {
3752 Zero,
3753 Zero
3754 },
3755
3756 Package (0x02)
3757 {
3758 One,
3759 0x03
3760 },
3761
3762 Package (0x02)
3763 {
3764 0x02,
3765 0x03
3766 },
3767
3768 Package (0x02)
3769 {
3770 0x03,
3771 0x03
3772 }
3773 }
3774 },
3775
3776 Package (0x03)
3777 {
3778 "\\_SB.PCI0.I2C2",
3779 One,
3780 Package (0x05)
3781 {
3782 Zero,
3783 Package (0x02)
3784 {
3785 Zero,
3786 Zero
3787 },
3788
3789 Package (0x02)
3790 {
3791 One,
3792 0x03
3793 },
3794
3795 Package (0x02)
3796 {
3797 0x02,
3798 0x03
3799 },
3800
3801 Package (0x02)
3802 {
3803 0x03,
3804 0x03
3805 }
3806 }
3807 },
3808
3809 Package (0x03)
3810 {
3811 "\\_SB.PCI0.I2C3",
3812 One,
3813 Package (0x05)
3814 {
3815 Zero,
3816 Package (0x02)
3817 {
3818 Zero,
3819 Zero
3820 },
3821
3822 Package (0x02)
3823 {
3824 One,
3825 0x03
3826 },
3827
3828 Package (0x02)
3829 {
3830 0x02,
3831 0x03
3832 },
3833
3834 Package (0x02)
3835 {
3836 0x03,
3837 0x03
3838 }
3839 }
3840 },
3841
3842 Package (0x03)
3843 {
3844 "\\_SB.PCI0.I2C5",
3845 One,
3846 Package (0x05)
3847 {
3848 Zero,
3849 Package (0x02)
3850 {
3851 Zero,
3852 Zero
3853 },
3854
3855 Package (0x02)
3856 {
3857 One,
3858 0x03
3859 },
3860
3861 Package (0x02)
3862 {
3863 0x02,
3864 0x03
3865 },
3866
3867 Package (0x02)
3868 {
3869 0x03,
3870 0x03
3871 }
3872 }
3873 },
3874
3875 Package (0x03)
3876 {
3877 "\\_SB.PCI0.I2C6",
3878 One,
3879 Package (0x05)
3880 {
3881 Zero,
3882 Package (0x02)
3883 {
3884 Zero,
3885 Zero
3886 },
3887
3888 Package (0x02)
3889 {
3890 One,
3891 0x03
3892 },
3893
3894 Package (0x02)
3895 {
3896 0x02,
3897 0x03
3898 },
3899
3900 Package (0x02)
3901 {
3902 0x03,
3903 0x03
3904 }
3905 }
3906 },
3907
3908 Package (0x03)
3909 {
3910 "\\_SB.PCI0.I2C7",
3911 One,
3912 Package (0x05)
3913 {
3914 Zero,
3915 Package (0x02)
3916 {
3917 Zero,
3918 Zero
3919 },
3920
3921 Package (0x02)
3922 {
3923 One,
3924 0x03
3925 },
3926
3927 Package (0x02)
3928 {
3929 0x02,
3930 0x03
3931 },
3932
3933 Package (0x02)
3934 {
3935 0x03,
3936 0x03
3937 }
3938 }
3939 },
3940
3941 Package (0x03)
3942 {
3943 "\\_SB.PCI0.XHC1",
3944 One,
3945 Package (0x05)
3946 {
3947 Zero,
3948 Package (0x02)
3949 {
3950 Zero,
3951 Zero
3952 },
3953
3954 Package (0x02)
3955 {
3956 One,
3957 0x03
3958 },
3959
3960 Package (0x02)
3961 {
3962 0x02,
3963 0x03
3964 },
3965
3966 Package (0x02)
3967 {
3968 0x03,
3969 0x03
3970 }
3971 }
3972 },
3973
3974 Package (0x03)
3975 {
3976 "\\_SB.PCI0.SEC0",
3977 One,
3978 Package (0x05)
3979 {
3980 Zero,
3981 Package (0x02)
3982 {
3983 Zero,
3984 Zero
3985 },
3986
3987 Package (0x02)
3988 {
3989 One,
3990 0x03
3991 },
3992
3993 Package (0x02)
3994 {
3995 0x02,
3996 0x03
3997 },
3998
3999 Package (0x02)
4000 {
4001 0x03,
4002 0x03
4003 }
4004 }
4005 },
4006
4007 Package (0x03)
4008 {
4009 "\\_SB.PCI0.LPEA",
4010 One,
4011 Package (0x05)
4012 {
4013 Zero,
4014 Package (0x02)
4015 {
4016 Zero,
4017 Zero
4018 },
4019
4020 Package (0x02)
4021 {
4022 One,
4023 Zero
4024 },
4025
4026 Package (0x02)
4027 {
4028 0x02,
4029 0x03
4030 },
4031
4032 Package (0x02)
4033 {
4034 0x03,
4035 0x03
4036 }
4037 }
4038 },
4039
4040 Package (0x03)
4041 {
4042 "\\_SB.PCI0.SDHA",
4043 One,
4044 Package (0x05)
4045 {
4046 Zero,
4047 Package (0x02)
4048 {
4049 Zero,
4050 Zero
4051 },
4052
4053 Package (0x02)
4054 {
4055 One,
4056 0x03
4057 },
4058
4059 Package (0x02)
4060 {
4061 0x02,
4062 0x03
4063 },
4064
4065 Package (0x02)
4066 {
4067 0x03,
4068 0x03
4069 }
4070 }
4071 },
4072
4073 Package (0x03)
4074 {
4075 "\\_SB.PCI0.SHC1",
4076 One,
4077 Package (0x05)
4078 {
4079 Zero,
4080 Package (0x02)
4081 {
4082 Zero,
4083 Zero
4084 },
4085
4086 Package (0x02)
4087 {
4088 One,
4089 0x03
4090 },
4091
4092 Package (0x02)
4093 {
4094 0x02,
4095 0x03
4096 },
4097
4098 Package (0x02)
4099 {
4100 0x03,
4101 0x03
4102 }
4103 }
4104 },
4105
4106 Package (0x03)
4107 {
4108 "\\_SB.PCI0.SPI1",
4109 One,
4110 Package (0x05)
4111 {
4112 Zero,
4113 Package (0x02)
4114 {
4115 Zero,
4116 Zero
4117 },
4118
4119 Package (0x02)
4120 {
4121 One,
4122 0x03
4123 },
4124
4125 Package (0x02)
4126 {
4127 0x02,
4128 0x03
4129 },
4130
4131 Package (0x02)
4132 {
4133 0x03,
4134 0x03
4135 }
4136 }
4137 },
4138
4139 Package (0x03)
4140 {
4141 "\\_SB.PCI0.SPI2",
4142 One,
4143 Package (0x05)
4144 {
4145 Zero,
4146 Package (0x02)
4147 {
4148 Zero,
4149 Zero
4150 },
4151
4152 Package (0x02)
4153 {
4154 One,
4155 0x03
4156 },
4157
4158 Package (0x02)
4159 {
4160 0x02,
4161 0x03
4162 },
4163
4164 Package (0x02)
4165 {
4166 0x03,
4167 0x03
4168 }
4169 }
4170 },
4171
4172 Package (0x03)
4173 {
4174 "\\_SB.PCI0.SPI3",
4175 One,
4176 Package (0x05)
4177 {
4178 Zero,
4179 Package (0x02)
4180 {
4181 Zero,
4182 Zero
4183 },
4184
4185 Package (0x02)
4186 {
4187 One,
4188 0x03
4189 },
4190
4191 Package (0x02)
4192 {
4193 0x02,
4194 0x03
4195 },
4196
4197 Package (0x02)
4198 {
4199 0x03,
4200 0x03
4201 }
4202 }
4203 },
4204
4205 Package (0x03)
4206 {
4207 "\\_SB.PCI0.URT1",
4208 One,
4209 Package (0x05)
4210 {
4211 Zero,
4212 Package (0x02)
4213 {
4214 Zero,
4215 Zero
4216 },
4217
4218 Package (0x02)
4219 {
4220 One,
4221 0x03
4222 },
4223
4224 Package (0x02)
4225 {
4226 0x02,
4227 0x03
4228 },
4229
4230 Package (0x02)
4231 {
4232 0x03,
4233 0x03
4234 }
4235 }
4236 },
4237
4238 Package (0x03)
4239 {
4240 "\\_SB.PCI0.URT2",
4241 One,
4242 Package (0x05)
4243 {
4244 Zero,
4245 Package (0x02)
4246 {
4247 Zero,
4248 Zero
4249 },
4250
4251 Package (0x02)
4252 {
4253 One,
4254 0x03
4255 },
4256
4257 Package (0x02)
4258 {
4259 0x02,
4260 0x03
4261 },
4262
4263 Package (0x02)
4264 {
4265 0x03,
4266 0x03
4267 }
4268 }
4269 }
4270 })
4271 Name (DVL2, Package (0x14)
4272 {
4273 Package (0x03)
4274 {
4275 "\\_PR.CPU0",
4276 One,
4277 Package (0x02)
4278 {
4279 Zero,
4280 Package (0x02)
4281 {
4282 0xFF,
4283 Zero
4284 }
4285 }
4286 },
4287
4288 Package (0x03)
4289 {
4290 "\\_PR.CPU1",
4291 One,
4292 Package (0x02)
4293 {
4294 Zero,
4295 Package (0x02)
4296 {
4297 0xFF,
4298 Zero
4299 }
4300 }
4301 },
4302
4303 Package (0x03)
4304 {
4305 "\\_PR.CPU2",
4306 One,
4307 Package (0x02)
4308 {
4309 Zero,
4310 Package (0x02)
4311 {
4312 0xFF,
4313 Zero
4314 }
4315 }
4316 },
4317
4318 Package (0x03)
4319 {
4320 "\\_PR.CPU3",
4321 One,
4322 Package (0x02)
4323 {
4324 Zero,
4325 Package (0x02)
4326 {
4327 0xFF,
4328 Zero
4329 }
4330 }
4331 },
4332
4333 Package (0x03)
4334 {
4335 "\\_SB.PCI0.GFX0",
4336 One,
4337 Package (0x02)
4338 {
4339 Zero,
4340 Package (0x02)
4341 {
4342 0xFF,
4343 0x03
4344 }
4345 }
4346 },
4347
4348 Package (0x03)
4349 {
4350 "\\_SB.PCI0.I2C1",
4351 One,
4352 Package (0x05)
4353 {
4354 Zero,
4355 Package (0x02)
4356 {
4357 Zero,
4358 Zero
4359 },
4360
4361 Package (0x02)
4362 {
4363 One,
4364 0x03
4365 },
4366
4367 Package (0x02)
4368 {
4369 0x02,
4370 0x03
4371 },
4372
4373 Package (0x02)
4374 {
4375 0x03,
4376 0x03
4377 }
4378 }
4379 },
4380
4381 Package (0x03)
4382 {
4383 "\\_SB.PCI0.I2C2",
4384 One,
4385 Package (0x05)
4386 {
4387 Zero,
4388 Package (0x02)
4389 {
4390 Zero,
4391 Zero
4392 },
4393
4394 Package (0x02)
4395 {
4396 One,
4397 0x03
4398 },
4399
4400 Package (0x02)
4401 {
4402 0x02,
4403 0x03
4404 },
4405
4406 Package (0x02)
4407 {
4408 0x03,
4409 0x03
4410 }
4411 }
4412 },
4413
4414 Package (0x03)
4415 {
4416 "\\_SB.PCI0.I2C3",
4417 One,
4418 Package (0x05)
4419 {
4420 Zero,
4421 Package (0x02)
4422 {
4423 Zero,
4424 Zero
4425 },
4426
4427 Package (0x02)
4428 {
4429 One,
4430 0x03
4431 },
4432
4433 Package (0x02)
4434 {
4435 0x02,
4436 0x03
4437 },
4438
4439 Package (0x02)
4440 {
4441 0x03,
4442 0x03
4443 }
4444 }
4445 },
4446
4447 Package (0x03)
4448 {
4449 "\\_SB.PCI0.I2C5",
4450 One,
4451 Package (0x05)
4452 {
4453 Zero,
4454 Package (0x02)
4455 {
4456 Zero,
4457 Zero
4458 },
4459
4460 Package (0x02)
4461 {
4462 One,
4463 0x03
4464 },
4465
4466 Package (0x02)
4467 {
4468 0x02,
4469 0x03
4470 },
4471
4472 Package (0x02)
4473 {
4474 0x03,
4475 0x03
4476 }
4477 }
4478 },
4479
4480 Package (0x03)
4481 {
4482 "\\_SB.PCI0.I2C6",
4483 One,
4484 Package (0x05)
4485 {
4486 Zero,
4487 Package (0x02)
4488 {
4489 Zero,
4490 Zero
4491 },
4492
4493 Package (0x02)
4494 {
4495 One,
4496 0x03
4497 },
4498
4499 Package (0x02)
4500 {
4501 0x02,
4502 0x03
4503 },
4504
4505 Package (0x02)
4506 {
4507 0x03,
4508 0x03
4509 }
4510 }
4511 },
4512
4513 Package (0x03)
4514 {
4515 "\\_SB.PCI0.I2C7",
4516 One,
4517 Package (0x05)
4518 {
4519 Zero,
4520 Package (0x02)
4521 {
4522 Zero,
4523 Zero
4524 },
4525
4526 Package (0x02)
4527 {
4528 One,
4529 0x03
4530 },
4531
4532 Package (0x02)
4533 {
4534 0x02,
4535 0x03
4536 },
4537
4538 Package (0x02)
4539 {
4540 0x03,
4541 0x03
4542 }
4543 }
4544 },
4545
4546 Package (0x03)
4547 {
4548 "\\_SB.PCI0.XHC1",
4549 One,
4550 Package (0x05)
4551 {
4552 Zero,
4553 Package (0x02)
4554 {
4555 Zero,
4556 Zero
4557 },
4558
4559 Package (0x02)
4560 {
4561 One,
4562 0x03
4563 },
4564
4565 Package (0x02)
4566 {
4567 0x02,
4568 0x03
4569 },
4570
4571 Package (0x02)
4572 {
4573 0x03,
4574 0x03
4575 }
4576 }
4577 },
4578
4579 Package (0x03)
4580 {
4581 "\\_SB.PCI0.SEC0",
4582 One,
4583 Package (0x05)
4584 {
4585 Zero,
4586 Package (0x02)
4587 {
4588 Zero,
4589 Zero
4590 },
4591
4592 Package (0x02)
4593 {
4594 One,
4595 0x03
4596 },
4597
4598 Package (0x02)
4599 {
4600 0x02,
4601 0x03
4602 },
4603
4604 Package (0x02)
4605 {
4606 0x03,
4607 0x03
4608 }
4609 }
4610 },
4611
4612 Package (0x03)
4613 {
4614 "\\_SB.PCI0.LPEA",
4615 One,
4616 Package (0x05)
4617 {
4618 Zero,
4619 Package (0x02)
4620 {
4621 Zero,
4622 Zero
4623 },
4624
4625 Package (0x02)
4626 {
4627 One,
4628 Zero
4629 },
4630
4631 Package (0x02)
4632 {
4633 0x02,
4634 0x03
4635 },
4636
4637 Package (0x02)
4638 {
4639 0x03,
4640 0x03
4641 }
4642 }
4643 },
4644
4645 Package (0x03)
4646 {
4647 "\\_SB.PCI0.SDHA",
4648 One,
4649 Package (0x05)
4650 {
4651 Zero,
4652 Package (0x02)
4653 {
4654 Zero,
4655 Zero
4656 },
4657
4658 Package (0x02)
4659 {
4660 One,
4661 0x03
4662 },
4663
4664 Package (0x02)
4665 {
4666 0x02,
4667 0x03
4668 },
4669
4670 Package (0x02)
4671 {
4672 0x03,
4673 0x03
4674 }
4675 }
4676 },
4677
4678 Package (0x03)
4679 {
4680 "\\_SB.PCI0.SPI1",
4681 One,
4682 Package (0x05)
4683 {
4684 Zero,
4685 Package (0x02)
4686 {
4687 Zero,
4688 Zero
4689 },
4690
4691 Package (0x02)
4692 {
4693 One,
4694 0x03
4695 },
4696
4697 Package (0x02)
4698 {
4699 0x02,
4700 0x03
4701 },
4702
4703 Package (0x02)
4704 {
4705 0x03,
4706 0x03
4707 }
4708 }
4709 },
4710
4711 Package (0x03)
4712 {
4713 "\\_SB.PCI0.SPI2",
4714 One,
4715 Package (0x05)
4716 {
4717 Zero,
4718 Package (0x02)
4719 {
4720 Zero,
4721 Zero
4722 },
4723
4724 Package (0x02)
4725 {
4726 One,
4727 0x03
4728 },
4729
4730 Package (0x02)
4731 {
4732 0x02,
4733 0x03
4734 },
4735
4736 Package (0x02)
4737 {
4738 0x03,
4739 0x03
4740 }
4741 }
4742 },
4743
4744 Package (0x03)
4745 {
4746 "\\_SB.PCI0.SPI3",
4747 One,
4748 Package (0x05)
4749 {
4750 Zero,
4751 Package (0x02)
4752 {
4753 Zero,
4754 Zero
4755 },
4756
4757 Package (0x02)
4758 {
4759 One,
4760 0x03
4761 },
4762
4763 Package (0x02)
4764 {
4765 0x02,
4766 0x03
4767 },
4768
4769 Package (0x02)
4770 {
4771 0x03,
4772 0x03
4773 }
4774 }
4775 },
4776
4777 Package (0x03)
4778 {
4779 "\\_SB.PCI0.URT1",
4780 One,
4781 Package (0x05)
4782 {
4783 Zero,
4784 Package (0x02)
4785 {
4786 Zero,
4787 Zero
4788 },
4789
4790 Package (0x02)
4791 {
4792 One,
4793 0x03
4794 },
4795
4796 Package (0x02)
4797 {
4798 0x02,
4799 0x03
4800 },
4801
4802 Package (0x02)
4803 {
4804 0x03,
4805 0x03
4806 }
4807 }
4808 },
4809
4810 Package (0x03)
4811 {
4812 "\\_SB.PCI0.URT2",
4813 One,
4814 Package (0x05)
4815 {
4816 Zero,
4817 Package (0x02)
4818 {
4819 Zero,
4820 Zero
4821 },
4822
4823 Package (0x02)
4824 {
4825 One,
4826 0x03
4827 },
4828
4829 Package (0x02)
4830 {
4831 0x02,
4832 0x03
4833 },
4834
4835 Package (0x02)
4836 {
4837 0x03,
4838 0x03
4839 }
4840 }
4841 }
4842 })
4843 Name (BUF0, Package (0x16)
4844 {
4845 Package (0x03)
4846 {
4847 "\\_PR.CPU0",
4848 One,
4849 Package (0x02)
4850 {
4851 Zero,
4852 Package (0x02)
4853 {
4854 0xFF,
4855 Zero
4856 }
4857 }
4858 },
4859
4860 Package (0x03)
4861 {
4862 "\\_PR.CPU1",
4863 One,
4864 Package (0x02)
4865 {
4866 Zero,
4867 Package (0x02)
4868 {
4869 0xFF,
4870 Zero
4871 }
4872 }
4873 },
4874
4875 Package (0x03)
4876 {
4877 "\\_PR.CPU2",
4878 One,
4879 Package (0x02)
4880 {
4881 Zero,
4882 Package (0x02)
4883 {
4884 0xFF,
4885 Zero
4886 }
4887 }
4888 },
4889
4890 Package (0x03)
4891 {
4892 "\\_PR.CPU3",
4893 One,
4894 Package (0x02)
4895 {
4896 Zero,
4897 Package (0x02)
4898 {
4899 0xFF,
4900 Zero
4901 }
4902 }
4903 },
4904
4905 Package (0x03)
4906 {
4907 "\\_SB.PCI0.GFX0",
4908 One,
4909 Package (0x02)
4910 {
4911 Zero,
4912 Package (0x02)
4913 {
4914 0xFF,
4915 0x03
4916 }
4917 }
4918 },
4919
4920 Package (0x03)
4921 {
4922 "\\_SB.PCI0.I2C1",
4923 One,
4924 Package (0x05)
4925 {
4926 Zero,
4927 Package (0x02)
4928 {
4929 Zero,
4930 Zero
4931 },
4932
4933 Package (0x02)
4934 {
4935 One,
4936 0x03
4937 },
4938
4939 Package (0x02)
4940 {
4941 0x02,
4942 0x03
4943 },
4944
4945 Package (0x02)
4946 {
4947 0x03,
4948 0x03
4949 }
4950 }
4951 },
4952
4953 Package (0x03)
4954 {
4955 "\\_SB.PCI0.I2C2",
4956 One,
4957 Package (0x05)
4958 {
4959 Zero,
4960 Package (0x02)
4961 {
4962 Zero,
4963 Zero
4964 },
4965
4966 Package (0x02)
4967 {
4968 One,
4969 0x03
4970 },
4971
4972 Package (0x02)
4973 {
4974 0x02,
4975 0x03
4976 },
4977
4978 Package (0x02)
4979 {
4980 0x03,
4981 0x03
4982 }
4983 }
4984 },
4985
4986 Package (0x03)
4987 {
4988 "\\_SB.PCI0.I2C3",
4989 One,
4990 Package (0x05)
4991 {
4992 Zero,
4993 Package (0x02)
4994 {
4995 Zero,
4996 Zero
4997 },
4998
4999 Package (0x02)
5000 {
5001 One,
5002 0x03
5003 },
5004
5005 Package (0x02)
5006 {
5007 0x02,
5008 0x03
5009 },
5010
5011 Package (0x02)
5012 {
5013 0x03,
5014 0x03
5015 }
5016 }
5017 },
5018
5019 Package (0x03)
5020 {
5021 "\\_SB.PCI0.I2C5",
5022 One,
5023 Package (0x05)
5024 {
5025 Zero,
5026 Package (0x02)
5027 {
5028 Zero,
5029 Zero
5030 },
5031
5032 Package (0x02)
5033 {
5034 One,
5035 0x03
5036 },
5037
5038 Package (0x02)
5039 {
5040 0x02,
5041 0x03
5042 },
5043
5044 Package (0x02)
5045 {
5046 0x03,
5047 0x03
5048 }
5049 }
5050 },
5051
5052 Package (0x03)
5053 {
5054 "\\_SB.PCI0.I2C6",
5055 One,
5056 Package (0x05)
5057 {
5058 Zero,
5059 Package (0x02)
5060 {
5061 Zero,
5062 Zero
5063 },
5064
5065 Package (0x02)
5066 {
5067 One,
5068 0x03
5069 },
5070
5071 Package (0x02)
5072 {
5073 0x02,
5074 0x03
5075 },
5076
5077 Package (0x02)
5078 {
5079 0x03,
5080 0x03
5081 }
5082 }
5083 },
5084
5085 Package (0x03)
5086 {
5087 "\\_SB.PCI0.I2C7",
5088 One,
5089 Package (0x05)
5090 {
5091 Zero,
5092 Package (0x02)
5093 {
5094 Zero,
5095 Zero
5096 },
5097
5098 Package (0x02)
5099 {
5100 One,
5101 0x03
5102 },
5103
5104 Package (0x02)
5105 {
5106 0x02,
5107 0x03
5108 },
5109
5110 Package (0x02)
5111 {
5112 0x03,
5113 0x03
5114 }
5115 }
5116 },
5117
5118 Package (0x03)
5119 {
5120 "\\_SB.PCI0.XHC1",
5121 One,
5122 Package (0x05)
5123 {
5124 Zero,
5125 Package (0x02)
5126 {
5127 Zero,
5128 Zero
5129 },
5130
5131 Package (0x02)
5132 {
5133 One,
5134 0x03
5135 },
5136
5137 Package (0x02)
5138 {
5139 0x02,
5140 0x03
5141 },
5142
5143 Package (0x02)
5144 {
5145 0x03,
5146 0x03
5147 }
5148 }
5149 },
5150
5151 Package (0x03)
5152 {
5153 "\\_SB.PCI0.SEC0",
5154 One,
5155 Package (0x05)
5156 {
5157 Zero,
5158 Package (0x02)
5159 {
5160 Zero,
5161 Zero
5162 },
5163
5164 Package (0x02)
5165 {
5166 One,
5167 0x03
5168 },
5169
5170 Package (0x02)
5171 {
5172 0x02,
5173 0x03
5174 },
5175
5176 Package (0x02)
5177 {
5178 0x03,
5179 0x03
5180 }
5181 }
5182 },
5183
5184 Package (0x03)
5185 {
5186 "\\_SB.PCI0.LPEA",
5187 One,
5188 Package (0x05)
5189 {
5190 Zero,
5191 Package (0x02)
5192 {
5193 Zero,
5194 Zero
5195 },
5196
5197 Package (0x02)
5198 {
5199 One,
5200 Zero
5201 },
5202
5203 Package (0x02)
5204 {
5205 0x02,
5206 0x03
5207 },
5208
5209 Package (0x02)
5210 {
5211 0x03,
5212 0x03
5213 }
5214 }
5215 },
5216
5217 Package (0x03)
5218 {
5219 "\\_SB.PCI0.SDHA",
5220 One,
5221 Package (0x05)
5222 {
5223 Zero,
5224 Package (0x02)
5225 {
5226 Zero,
5227 Zero
5228 },
5229
5230 Package (0x02)
5231 {
5232 One,
5233 0x03
5234 },
5235
5236 Package (0x02)
5237 {
5238 0x02,
5239 0x03
5240 },
5241
5242 Package (0x02)
5243 {
5244 0x03,
5245 0x03
5246 }
5247 }
5248 },
5249
5250 Package (0x03)
5251 {
5252 "\\_SB.PCI0.SHC1",
5253 One,
5254 Package (0x05)
5255 {
5256 Zero,
5257 Package (0x02)
5258 {
5259 Zero,
5260 Zero
5261 },
5262
5263 Package (0x02)
5264 {
5265 One,
5266 0x03
5267 },
5268
5269 Package (0x02)
5270 {
5271 0x02,
5272 0x03
5273 },
5274
5275 Package (0x02)
5276 {
5277 0x03,
5278 0x03
5279 }
5280 }
5281 },
5282
5283 Package (0x03)
5284 {
5285 "\\_SB.PCI0.SPI1",
5286 One,
5287 Package (0x05)
5288 {
5289 Zero,
5290 Package (0x02)
5291 {
5292 Zero,
5293 Zero
5294 },
5295
5296 Package (0x02)
5297 {
5298 One,
5299 0x03
5300 },
5301
5302 Package (0x02)
5303 {
5304 0x02,
5305 0x03
5306 },
5307
5308 Package (0x02)
5309 {
5310 0x03,
5311 0x03
5312 }
5313 }
5314 },
5315
5316 Package (0x03)
5317 {
5318 "\\_SB.PCI0.SPI2",
5319 One,
5320 Package (0x05)
5321 {
5322 Zero,
5323 Package (0x02)
5324 {
5325 Zero,
5326 Zero
5327 },
5328
5329 Package (0x02)
5330 {
5331 One,
5332 0x03
5333 },
5334
5335 Package (0x02)
5336 {
5337 0x02,
5338 0x03
5339 },
5340
5341 Package (0x02)
5342 {
5343 0x03,
5344 0x03
5345 }
5346 }
5347 },
5348
5349 Package (0x03)
5350 {
5351 "\\_SB.PCI0.SPI3",
5352 One,
5353 Package (0x05)
5354 {
5355 Zero,
5356 Package (0x02)
5357 {
5358 Zero,
5359 Zero
5360 },
5361
5362 Package (0x02)
5363 {
5364 One,
5365 0x03
5366 },
5367
5368 Package (0x02)
5369 {
5370 0x02,
5371 0x03
5372 },
5373
5374 Package (0x02)
5375 {
5376 0x03,
5377 0x03
5378 }
5379 }
5380 },
5381
5382 Package (0x03)
5383 {
5384 "\\_SB.PCI0.URT1",
5385 One,
5386 Package (0x05)
5387 {
5388 Zero,
5389 Package (0x02)
5390 {
5391 Zero,
5392 Zero
5393 },
5394
5395 Package (0x02)
5396 {
5397 One,
5398 0x03
5399 },
5400
5401 Package (0x02)
5402 {
5403 0x02,
5404 0x03
5405 },
5406
5407 Package (0x02)
5408 {
5409 0x03,
5410 0x03
5411 }
5412 }
5413 },
5414
5415 Package (0x03)
5416 {
5417 "\\_SB.PCI0.URT2",
5418 One,
5419 Package (0x05)
5420 {
5421 Zero,
5422 Package (0x02)
5423 {
5424 Zero,
5425 Zero
5426 },
5427
5428 Package (0x02)
5429 {
5430 One,
5431 0x03
5432 },
5433
5434 Package (0x02)
5435 {
5436 0x02,
5437 0x03
5438 },
5439
5440 Package (0x02)
5441 {
5442 0x03,
5443 0x03
5444 }
5445 }
5446 },
5447
5448 Package (0x03)
5449 {
5450 "\\_SB.PCI0.I2C2.RTKC",
5451 One,
5452 Package (0x05)
5453 {
5454 Zero,
5455 Package (0x02)
5456 {
5457 Zero,
5458 Zero
5459 },
5460
5461 Package (0x02)
5462 {
5463 One,
5464 Zero
5465 },
5466
5467 Package (0x02)
5468 {
5469 0x02,
5470 0x03
5471 },
5472
5473 Package (0x02)
5474 {
5475 0x03,
5476 0x03
5477 }
5478 }
5479 }
5480 })
5481 Name (BUF2, Package (0x16)
5482 {
5483 Package (0x03)
5484 {
5485 "\\_PR.CPU0",
5486 One,
5487 Package (0x02)
5488 {
5489 Zero,
5490 Package (0x02)
5491 {
5492 0xFF,
5493 Zero
5494 }
5495 }
5496 },
5497
5498 Package (0x03)
5499 {
5500 "\\_PR.CPU1",
5501 One,
5502 Package (0x02)
5503 {
5504 Zero,
5505 Package (0x02)
5506 {
5507 0xFF,
5508 Zero
5509 }
5510 }
5511 },
5512
5513 Package (0x03)
5514 {
5515 "\\_PR.CPU2",
5516 One,
5517 Package (0x02)
5518 {
5519 Zero,
5520 Package (0x02)
5521 {
5522 0xFF,
5523 Zero
5524 }
5525 }
5526 },
5527
5528 Package (0x03)
5529 {
5530 "\\_PR.CPU3",
5531 One,
5532 Package (0x02)
5533 {
5534 Zero,
5535 Package (0x02)
5536 {
5537 0xFF,
5538 Zero
5539 }
5540 }
5541 },
5542
5543 Package (0x03)
5544 {
5545 "\\_SB.PCI0.GFX0",
5546 One,
5547 Package (0x02)
5548 {
5549 Zero,
5550 Package (0x02)
5551 {
5552 0xFF,
5553 0x03
5554 }
5555 }
5556 },
5557
5558 Package (0x03)
5559 {
5560 "\\_SB.PCI0.I2C1",
5561 One,
5562 Package (0x05)
5563 {
5564 Zero,
5565 Package (0x02)
5566 {
5567 Zero,
5568 Zero
5569 },
5570
5571 Package (0x02)
5572 {
5573 One,
5574 0x03
5575 },
5576
5577 Package (0x02)
5578 {
5579 0x02,
5580 0x03
5581 },
5582
5583 Package (0x02)
5584 {
5585 0x03,
5586 0x03
5587 }
5588 }
5589 },
5590
5591 Package (0x03)
5592 {
5593 "\\_SB.PCI0.I2C2",
5594 One,
5595 Package (0x05)
5596 {
5597 Zero,
5598 Package (0x02)
5599 {
5600 Zero,
5601 Zero
5602 },
5603
5604 Package (0x02)
5605 {
5606 One,
5607 0x03
5608 },
5609
5610 Package (0x02)
5611 {
5612 0x02,
5613 0x03
5614 },
5615
5616 Package (0x02)
5617 {
5618 0x03,
5619 0x03
5620 }
5621 }
5622 },
5623
5624 Package (0x03)
5625 {
5626 "\\_SB.PCI0.I2C3",
5627 One,
5628 Package (0x05)
5629 {
5630 Zero,
5631 Package (0x02)
5632 {
5633 Zero,
5634 Zero
5635 },
5636
5637 Package (0x02)
5638 {
5639 One,
5640 0x03
5641 },
5642
5643 Package (0x02)
5644 {
5645 0x02,
5646 0x03
5647 },
5648
5649 Package (0x02)
5650 {
5651 0x03,
5652 0x03
5653 }
5654 }
5655 },
5656
5657 Package (0x03)
5658 {
5659 "\\_SB.PCI0.I2C5",
5660 One,
5661 Package (0x05)
5662 {
5663 Zero,
5664 Package (0x02)
5665 {
5666 Zero,
5667 Zero
5668 },
5669
5670 Package (0x02)
5671 {
5672 One,
5673 0x03
5674 },
5675
5676 Package (0x02)
5677 {
5678 0x02,
5679 0x03
5680 },
5681
5682 Package (0x02)
5683 {
5684 0x03,
5685 0x03
5686 }
5687 }
5688 },
5689
5690 Package (0x03)
5691 {
5692 "\\_SB.PCI0.I2C6",
5693 One,
5694 Package (0x05)
5695 {
5696 Zero,
5697 Package (0x02)
5698 {
5699 Zero,
5700 Zero
5701 },
5702
5703 Package (0x02)
5704 {
5705 One,
5706 0x03
5707 },
5708
5709 Package (0x02)
5710 {
5711 0x02,
5712 0x03
5713 },
5714
5715 Package (0x02)
5716 {
5717 0x03,
5718 0x03
5719 }
5720 }
5721 },
5722
5723 Package (0x03)
5724 {
5725 "\\_SB.PCI0.I2C7",
5726 One,
5727 Package (0x05)
5728 {
5729 Zero,
5730 Package (0x02)
5731 {
5732 Zero,
5733 Zero
5734 },
5735
5736 Package (0x02)
5737 {
5738 One,
5739 0x03
5740 },
5741
5742 Package (0x02)
5743 {
5744 0x02,
5745 0x03
5746 },
5747
5748 Package (0x02)
5749 {
5750 0x03,
5751 0x03
5752 }
5753 }
5754 },
5755
5756 Package (0x03)
5757 {
5758 "\\_SB.PCI0.XHC1",
5759 One,
5760 Package (0x05)
5761 {
5762 Zero,
5763 Package (0x02)
5764 {
5765 Zero,
5766 Zero
5767 },
5768
5769 Package (0x02)
5770 {
5771 One,
5772 0x03
5773 },
5774
5775 Package (0x02)
5776 {
5777 0x02,
5778 0x03
5779 },
5780
5781 Package (0x02)
5782 {
5783 0x03,
5784 0x03
5785 }
5786 }
5787 },
5788
5789 Package (0x03)
5790 {
5791 "\\_SB.PCI0.SEC0",
5792 One,
5793 Package (0x05)
5794 {
5795 Zero,
5796 Package (0x02)
5797 {
5798 Zero,
5799 Zero
5800 },
5801
5802 Package (0x02)
5803 {
5804 One,
5805 0x03
5806 },
5807
5808 Package (0x02)
5809 {
5810 0x02,
5811 0x03
5812 },
5813
5814 Package (0x02)
5815 {
5816 0x03,
5817 0x03
5818 }
5819 }
5820 },
5821
5822 Package (0x03)
5823 {
5824 "\\_SB.PCI0.LPEA",
5825 One,
5826 Package (0x05)
5827 {
5828 Zero,
5829 Package (0x02)
5830 {
5831 Zero,
5832 Zero
5833 },
5834
5835 Package (0x02)
5836 {
5837 One,
5838 Zero
5839 },
5840
5841 Package (0x02)
5842 {
5843 0x02,
5844 0x03
5845 },
5846
5847 Package (0x02)
5848 {
5849 0x03,
5850 0x03
5851 }
5852 }
5853 },
5854
5855 Package (0x03)
5856 {
5857 "\\_SB.PCI0.SDHA",
5858 One,
5859 Package (0x05)
5860 {
5861 Zero,
5862 Package (0x02)
5863 {
5864 Zero,
5865 Zero
5866 },
5867
5868 Package (0x02)
5869 {
5870 One,
5871 0x03
5872 },
5873
5874 Package (0x02)
5875 {
5876 0x02,
5877 0x03
5878 },
5879
5880 Package (0x02)
5881 {
5882 0x03,
5883 0x03
5884 }
5885 }
5886 },
5887
5888 Package (0x03)
5889 {
5890 "\\_SB.PCI0.SHC1",
5891 One,
5892 Package (0x05)
5893 {
5894 Zero,
5895 Package (0x02)
5896 {
5897 Zero,
5898 Zero
5899 },
5900
5901 Package (0x02)
5902 {
5903 One,
5904 0x03
5905 },
5906
5907 Package (0x02)
5908 {
5909 0x02,
5910 0x03
5911 },
5912
5913 Package (0x02)
5914 {
5915 0x03,
5916 0x03
5917 }
5918 }
5919 },
5920
5921 Package (0x03)
5922 {
5923 "\\_SB.PCI0.SPI1",
5924 One,
5925 Package (0x05)
5926 {
5927 Zero,
5928 Package (0x02)
5929 {
5930 Zero,
5931 Zero
5932 },
5933
5934 Package (0x02)
5935 {
5936 One,
5937 0x03
5938 },
5939
5940 Package (0x02)
5941 {
5942 0x02,
5943 0x03
5944 },
5945
5946 Package (0x02)
5947 {
5948 0x03,
5949 0x03
5950 }
5951 }
5952 },
5953
5954 Package (0x03)
5955 {
5956 "\\_SB.PCI0.SPI2",
5957 One,
5958 Package (0x05)
5959 {
5960 Zero,
5961 Package (0x02)
5962 {
5963 Zero,
5964 Zero
5965 },
5966
5967 Package (0x02)
5968 {
5969 One,
5970 0x03
5971 },
5972
5973 Package (0x02)
5974 {
5975 0x02,
5976 0x03
5977 },
5978
5979 Package (0x02)
5980 {
5981 0x03,
5982 0x03
5983 }
5984 }
5985 },
5986
5987 Package (0x03)
5988 {
5989 "\\_SB.PCI0.SPI3",
5990 One,
5991 Package (0x05)
5992 {
5993 Zero,
5994 Package (0x02)
5995 {
5996 Zero,
5997 Zero
5998 },
5999
6000 Package (0x02)
6001 {
6002 One,
6003 0x03
6004 },
6005
6006 Package (0x02)
6007 {
6008 0x02,
6009 0x03
6010 },
6011
6012 Package (0x02)
6013 {
6014 0x03,
6015 0x03
6016 }
6017 }
6018 },
6019
6020 Package (0x03)
6021 {
6022 "\\_SB.PCI0.URT1",
6023 One,
6024 Package (0x05)
6025 {
6026 Zero,
6027 Package (0x02)
6028 {
6029 Zero,
6030 Zero
6031 },
6032
6033 Package (0x02)
6034 {
6035 One,
6036 0x03
6037 },
6038
6039 Package (0x02)
6040 {
6041 0x02,
6042 0x03
6043 },
6044
6045 Package (0x02)
6046 {
6047 0x03,
6048 0x03
6049 }
6050 }
6051 },
6052
6053 Package (0x03)
6054 {
6055 "\\_SB.PCI0.URT2",
6056 One,
6057 Package (0x05)
6058 {
6059 Zero,
6060 Package (0x02)
6061 {
6062 Zero,
6063 Zero
6064 },
6065
6066 Package (0x02)
6067 {
6068 One,
6069 0x03
6070 },
6071
6072 Package (0x02)
6073 {
6074 0x02,
6075 0x03
6076 },
6077
6078 Package (0x02)
6079 {
6080 0x03,
6081 0x03
6082 }
6083 }
6084 },
6085
6086 Package (0x03)
6087 {
6088 "\\_SB.PCI0.RP01.PXSX",
6089 One,
6090 Package (0x02)
6091 {
6092 Zero,
6093 Package (0x02)
6094 {
6095 0xFF,
6096 0x03
6097 }
6098 }
6099 }
6100 })
6101 Name (BU22, Package (0x15)
6102 {
6103 Package (0x03)
6104 {
6105 "\\_PR.CPU0",
6106 One,
6107 Package (0x02)
6108 {
6109 Zero,
6110 Package (0x02)
6111 {
6112 0xFF,
6113 Zero
6114 }
6115 }
6116 },
6117
6118 Package (0x03)
6119 {
6120 "\\_PR.CPU1",
6121 One,
6122 Package (0x02)
6123 {
6124 Zero,
6125 Package (0x02)
6126 {
6127 0xFF,
6128 Zero
6129 }
6130 }
6131 },
6132
6133 Package (0x03)
6134 {
6135 "\\_PR.CPU2",
6136 One,
6137 Package (0x02)
6138 {
6139 Zero,
6140 Package (0x02)
6141 {
6142 0xFF,
6143 Zero
6144 }
6145 }
6146 },
6147
6148 Package (0x03)
6149 {
6150 "\\_PR.CPU3",
6151 One,
6152 Package (0x02)
6153 {
6154 Zero,
6155 Package (0x02)
6156 {
6157 0xFF,
6158 Zero
6159 }
6160 }
6161 },
6162
6163 Package (0x03)
6164 {
6165 "\\_SB.PCI0.GFX0",
6166 One,
6167 Package (0x02)
6168 {
6169 Zero,
6170 Package (0x02)
6171 {
6172 0xFF,
6173 0x03
6174 }
6175 }
6176 },
6177
6178 Package (0x03)
6179 {
6180 "\\_SB.PCI0.I2C1",
6181 One,
6182 Package (0x05)
6183 {
6184 Zero,
6185 Package (0x02)
6186 {
6187 Zero,
6188 Zero
6189 },
6190
6191 Package (0x02)
6192 {
6193 One,
6194 0x03
6195 },
6196
6197 Package (0x02)
6198 {
6199 0x02,
6200 0x03
6201 },
6202
6203 Package (0x02)
6204 {
6205 0x03,
6206 0x03
6207 }
6208 }
6209 },
6210
6211 Package (0x03)
6212 {
6213 "\\_SB.PCI0.I2C2",
6214 One,
6215 Package (0x05)
6216 {
6217 Zero,
6218 Package (0x02)
6219 {
6220 Zero,
6221 Zero
6222 },
6223
6224 Package (0x02)
6225 {
6226 One,
6227 0x03
6228 },
6229
6230 Package (0x02)
6231 {
6232 0x02,
6233 0x03
6234 },
6235
6236 Package (0x02)
6237 {
6238 0x03,
6239 0x03
6240 }
6241 }
6242 },
6243
6244 Package (0x03)
6245 {
6246 "\\_SB.PCI0.I2C3",
6247 One,
6248 Package (0x05)
6249 {
6250 Zero,
6251 Package (0x02)
6252 {
6253 Zero,
6254 Zero
6255 },
6256
6257 Package (0x02)
6258 {
6259 One,
6260 0x03
6261 },
6262
6263 Package (0x02)
6264 {
6265 0x02,
6266 0x03
6267 },
6268
6269 Package (0x02)
6270 {
6271 0x03,
6272 0x03
6273 }
6274 }
6275 },
6276
6277 Package (0x03)
6278 {
6279 "\\_SB.PCI0.I2C5",
6280 One,
6281 Package (0x05)
6282 {
6283 Zero,
6284 Package (0x02)
6285 {
6286 Zero,
6287 Zero
6288 },
6289
6290 Package (0x02)
6291 {
6292 One,
6293 0x03
6294 },
6295
6296 Package (0x02)
6297 {
6298 0x02,
6299 0x03
6300 },
6301
6302 Package (0x02)
6303 {
6304 0x03,
6305 0x03
6306 }
6307 }
6308 },
6309
6310 Package (0x03)
6311 {
6312 "\\_SB.PCI0.I2C6",
6313 One,
6314 Package (0x05)
6315 {
6316 Zero,
6317 Package (0x02)
6318 {
6319 Zero,
6320 Zero
6321 },
6322
6323 Package (0x02)
6324 {
6325 One,
6326 0x03
6327 },
6328
6329 Package (0x02)
6330 {
6331 0x02,
6332 0x03
6333 },
6334
6335 Package (0x02)
6336 {
6337 0x03,
6338 0x03
6339 }
6340 }
6341 },
6342
6343 Package (0x03)
6344 {
6345 "\\_SB.PCI0.I2C7",
6346 One,
6347 Package (0x05)
6348 {
6349 Zero,
6350 Package (0x02)
6351 {
6352 Zero,
6353 Zero
6354 },
6355
6356 Package (0x02)
6357 {
6358 One,
6359 0x03
6360 },
6361
6362 Package (0x02)
6363 {
6364 0x02,
6365 0x03
6366 },
6367
6368 Package (0x02)
6369 {
6370 0x03,
6371 0x03
6372 }
6373 }
6374 },
6375
6376 Package (0x03)
6377 {
6378 "\\_SB.PCI0.XHC1",
6379 One,
6380 Package (0x05)
6381 {
6382 Zero,
6383 Package (0x02)
6384 {
6385 Zero,
6386 Zero
6387 },
6388
6389 Package (0x02)
6390 {
6391 One,
6392 0x03
6393 },
6394
6395 Package (0x02)
6396 {
6397 0x02,
6398 0x03
6399 },
6400
6401 Package (0x02)
6402 {
6403 0x03,
6404 0x03
6405 }
6406 }
6407 },
6408
6409 Package (0x03)
6410 {
6411 "\\_SB.PCI0.SEC0",
6412 One,
6413 Package (0x05)
6414 {
6415 Zero,
6416 Package (0x02)
6417 {
6418 Zero,
6419 Zero
6420 },
6421
6422 Package (0x02)
6423 {
6424 One,
6425 0x03
6426 },
6427
6428 Package (0x02)
6429 {
6430 0x02,
6431 0x03
6432 },
6433
6434 Package (0x02)
6435 {
6436 0x03,
6437 0x03
6438 }
6439 }
6440 },
6441
6442 Package (0x03)
6443 {
6444 "\\_SB.PCI0.LPEA",
6445 One,
6446 Package (0x05)
6447 {
6448 Zero,
6449 Package (0x02)
6450 {
6451 Zero,
6452 Zero
6453 },
6454
6455 Package (0x02)
6456 {
6457 One,
6458 Zero
6459 },
6460
6461 Package (0x02)
6462 {
6463 0x02,
6464 0x03
6465 },
6466
6467 Package (0x02)
6468 {
6469 0x03,
6470 0x03
6471 }
6472 }
6473 },
6474
6475 Package (0x03)
6476 {
6477 "\\_SB.PCI0.SDHA",
6478 One,
6479 Package (0x05)
6480 {
6481 Zero,
6482 Package (0x02)
6483 {
6484 Zero,
6485 Zero
6486 },
6487
6488 Package (0x02)
6489 {
6490 One,
6491 0x03
6492 },
6493
6494 Package (0x02)
6495 {
6496 0x02,
6497 0x03
6498 },
6499
6500 Package (0x02)
6501 {
6502 0x03,
6503 0x03
6504 }
6505 }
6506 },
6507
6508 Package (0x03)
6509 {
6510 "\\_SB.PCI0.SPI1",
6511 One,
6512 Package (0x05)
6513 {
6514 Zero,
6515 Package (0x02)
6516 {
6517 Zero,
6518 Zero
6519 },
6520
6521 Package (0x02)
6522 {
6523 One,
6524 0x03
6525 },
6526
6527 Package (0x02)
6528 {
6529 0x02,
6530 0x03
6531 },
6532
6533 Package (0x02)
6534 {
6535 0x03,
6536 0x03
6537 }
6538 }
6539 },
6540
6541 Package (0x03)
6542 {
6543 "\\_SB.PCI0.SPI2",
6544 One,
6545 Package (0x05)
6546 {
6547 Zero,
6548 Package (0x02)
6549 {
6550 Zero,
6551 Zero
6552 },
6553
6554 Package (0x02)
6555 {
6556 One,
6557 0x03
6558 },
6559
6560 Package (0x02)
6561 {
6562 0x02,
6563 0x03
6564 },
6565
6566 Package (0x02)
6567 {
6568 0x03,
6569 0x03
6570 }
6571 }
6572 },
6573
6574 Package (0x03)
6575 {
6576 "\\_SB.PCI0.SPI3",
6577 One,
6578 Package (0x05)
6579 {
6580 Zero,
6581 Package (0x02)
6582 {
6583 Zero,
6584 Zero
6585 },
6586
6587 Package (0x02)
6588 {
6589 One,
6590 0x03
6591 },
6592
6593 Package (0x02)
6594 {
6595 0x02,
6596 0x03
6597 },
6598
6599 Package (0x02)
6600 {
6601 0x03,
6602 0x03
6603 }
6604 }
6605 },
6606
6607 Package (0x03)
6608 {
6609 "\\_SB.PCI0.URT1",
6610 One,
6611 Package (0x05)
6612 {
6613 Zero,
6614 Package (0x02)
6615 {
6616 Zero,
6617 Zero
6618 },
6619
6620 Package (0x02)
6621 {
6622 One,
6623 0x03
6624 },
6625
6626 Package (0x02)
6627 {
6628 0x02,
6629 0x03
6630 },
6631
6632 Package (0x02)
6633 {
6634 0x03,
6635 0x03
6636 }
6637 }
6638 },
6639
6640 Package (0x03)
6641 {
6642 "\\_SB.PCI0.URT2",
6643 One,
6644 Package (0x05)
6645 {
6646 Zero,
6647 Package (0x02)
6648 {
6649 Zero,
6650 Zero
6651 },
6652
6653 Package (0x02)
6654 {
6655 One,
6656 0x03
6657 },
6658
6659 Package (0x02)
6660 {
6661 0x02,
6662 0x03
6663 },
6664
6665 Package (0x02)
6666 {
6667 0x03,
6668 0x03
6669 }
6670 }
6671 },
6672
6673 Package (0x03)
6674 {
6675 "\\_SB.PCI0.RP01.PXSX",
6676 One,
6677 Package (0x02)
6678 {
6679 Zero,
6680 Package (0x02)
6681 {
6682 0xFF,
6683 0x03
6684 }
6685 }
6686 }
6687 })
6688 Name (DEHY, Package (0x15)
6689 {
6690 Package (0x03)
6691 {
6692 "\\_PR.CPU0",
6693 One,
6694 Package (0x02)
6695 {
6696 Zero,
6697 Package (0x02)
6698 {
6699 0xFF,
6700 Zero
6701 }
6702 }
6703 },
6704
6705 Package (0x03)
6706 {
6707 "\\_PR.CPU1",
6708 One,
6709 Package (0x02)
6710 {
6711 Zero,
6712 Package (0x02)
6713 {
6714 0xFF,
6715 Zero
6716 }
6717 }
6718 },
6719
6720 Package (0x03)
6721 {
6722 "\\_PR.CPU2",
6723 One,
6724 Package (0x02)
6725 {
6726 Zero,
6727 Package (0x02)
6728 {
6729 0xFF,
6730 Zero
6731 }
6732 }
6733 },
6734
6735 Package (0x03)
6736 {
6737 "\\_PR.CPU3",
6738 One,
6739 Package (0x02)
6740 {
6741 Zero,
6742 Package (0x02)
6743 {
6744 0xFF,
6745 Zero
6746 }
6747 }
6748 },
6749
6750 Package (0x03)
6751 {
6752 "\\_SB.PCI0.GFX0",
6753 One,
6754 Package (0x02)
6755 {
6756 Zero,
6757 Package (0x02)
6758 {
6759 0xFF,
6760 0x03
6761 }
6762 }
6763 },
6764
6765 Package (0x03)
6766 {
6767 "\\_SB.PCI0.I2C1",
6768 One,
6769 Package (0x05)
6770 {
6771 Zero,
6772 Package (0x02)
6773 {
6774 Zero,
6775 Zero
6776 },
6777
6778 Package (0x02)
6779 {
6780 One,
6781 0x03
6782 },
6783
6784 Package (0x02)
6785 {
6786 0x02,
6787 0x03
6788 },
6789
6790 Package (0x02)
6791 {
6792 0x03,
6793 0x03
6794 }
6795 }
6796 },
6797
6798 Package (0x03)
6799 {
6800 "\\_SB.PCI0.I2C2",
6801 One,
6802 Package (0x05)
6803 {
6804 Zero,
6805 Package (0x02)
6806 {
6807 Zero,
6808 Zero
6809 },
6810
6811 Package (0x02)
6812 {
6813 One,
6814 0x03
6815 },
6816
6817 Package (0x02)
6818 {
6819 0x02,
6820 0x03
6821 },
6822
6823 Package (0x02)
6824 {
6825 0x03,
6826 0x03
6827 }
6828 }
6829 },
6830
6831 Package (0x03)
6832 {
6833 "\\_SB.PCI0.I2C3",
6834 One,
6835 Package (0x05)
6836 {
6837 Zero,
6838 Package (0x02)
6839 {
6840 Zero,
6841 Zero
6842 },
6843
6844 Package (0x02)
6845 {
6846 One,
6847 0x03
6848 },
6849
6850 Package (0x02)
6851 {
6852 0x02,
6853 0x03
6854 },
6855
6856 Package (0x02)
6857 {
6858 0x03,
6859 0x03
6860 }
6861 }
6862 },
6863
6864 Package (0x03)
6865 {
6866 "\\_SB.PCI0.I2C5",
6867 One,
6868 Package (0x05)
6869 {
6870 Zero,
6871 Package (0x02)
6872 {
6873 Zero,
6874 Zero
6875 },
6876
6877 Package (0x02)
6878 {
6879 One,
6880 0x03
6881 },
6882
6883 Package (0x02)
6884 {
6885 0x02,
6886 0x03
6887 },
6888
6889 Package (0x02)
6890 {
6891 0x03,
6892 0x03
6893 }
6894 }
6895 },
6896
6897 Package (0x03)
6898 {
6899 "\\_SB.PCI0.I2C6",
6900 One,
6901 Package (0x05)
6902 {
6903 Zero,
6904 Package (0x02)
6905 {
6906 Zero,
6907 Zero
6908 },
6909
6910 Package (0x02)
6911 {
6912 One,
6913 0x03
6914 },
6915
6916 Package (0x02)
6917 {
6918 0x02,
6919 0x03
6920 },
6921
6922 Package (0x02)
6923 {
6924 0x03,
6925 0x03
6926 }
6927 }
6928 },
6929
6930 Package (0x03)
6931 {
6932 "\\_SB.PCI0.I2C7",
6933 One,
6934 Package (0x05)
6935 {
6936 Zero,
6937 Package (0x02)
6938 {
6939 Zero,
6940 Zero
6941 },
6942
6943 Package (0x02)
6944 {
6945 One,
6946 0x03
6947 },
6948
6949 Package (0x02)
6950 {
6951 0x02,
6952 0x03
6953 },
6954
6955 Package (0x02)
6956 {
6957 0x03,
6958 0x03
6959 }
6960 }
6961 },
6962
6963 Package (0x03)
6964 {
6965 "\\_SB.PCI0.XHC1",
6966 One,
6967 Package (0x05)
6968 {
6969 Zero,
6970 Package (0x02)
6971 {
6972 Zero,
6973 Zero
6974 },
6975
6976 Package (0x02)
6977 {
6978 One,
6979 0x03
6980 },
6981
6982 Package (0x02)
6983 {
6984 0x02,
6985 0x03
6986 },
6987
6988 Package (0x02)
6989 {
6990 0x03,
6991 0x03
6992 }
6993 }
6994 },
6995
6996 Package (0x03)
6997 {
6998 "\\_SB.PCI0.SEC0",
6999 One,
7000 Package (0x05)
7001 {
7002 Zero,
7003 Package (0x02)
7004 {
7005 Zero,
7006 Zero
7007 },
7008
7009 Package (0x02)
7010 {
7011 One,
7012 0x03
7013 },
7014
7015 Package (0x02)
7016 {
7017 0x02,
7018 0x03
7019 },
7020
7021 Package (0x02)
7022 {
7023 0x03,
7024 0x03
7025 }
7026 }
7027 },
7028
7029 Package (0x03)
7030 {
7031 "\\_SB.PCI0.LPEA",
7032 One,
7033 Package (0x05)
7034 {
7035 Zero,
7036 Package (0x02)
7037 {
7038 Zero,
7039 Zero
7040 },
7041
7042 Package (0x02)
7043 {
7044 One,
7045 Zero
7046 },
7047
7048 Package (0x02)
7049 {
7050 0x02,
7051 0x03
7052 },
7053
7054 Package (0x02)
7055 {
7056 0x03,
7057 0x03
7058 }
7059 }
7060 },
7061
7062 Package (0x03)
7063 {
7064 "\\_SB.PCI0.SDHA",
7065 One,
7066 Package (0x05)
7067 {
7068 Zero,
7069 Package (0x02)
7070 {
7071 Zero,
7072 Zero
7073 },
7074
7075 Package (0x02)
7076 {
7077 One,
7078 0x03
7079 },
7080
7081 Package (0x02)
7082 {
7083 0x02,
7084 0x03
7085 },
7086
7087 Package (0x02)
7088 {
7089 0x03,
7090 0x03
7091 }
7092 }
7093 },
7094
7095 Package (0x03)
7096 {
7097 "\\_SB.PCI0.SDHC",
7098 One,
7099 Package (0x05)
7100 {
7101 Zero,
7102 Package (0x02)
7103 {
7104 Zero,
7105 Zero
7106 },
7107
7108 Package (0x02)
7109 {
7110 One,
7111 0x03
7112 },
7113
7114 Package (0x02)
7115 {
7116 0x02,
7117 0x03
7118 },
7119
7120 Package (0x02)
7121 {
7122 0x03,
7123 0x03
7124 }
7125 }
7126 },
7127
7128 Package (0x03)
7129 {
7130 "\\_SB.PCI0.SPI1",
7131 One,
7132 Package (0x05)
7133 {
7134 Zero,
7135 Package (0x02)
7136 {
7137 Zero,
7138 Zero
7139 },
7140
7141 Package (0x02)
7142 {
7143 One,
7144 0x03
7145 },
7146
7147 Package (0x02)
7148 {
7149 0x02,
7150 0x03
7151 },
7152
7153 Package (0x02)
7154 {
7155 0x03,
7156 0x03
7157 }
7158 }
7159 },
7160
7161 Package (0x03)
7162 {
7163 "\\_SB.PCI0.SPI2",
7164 One,
7165 Package (0x05)
7166 {
7167 Zero,
7168 Package (0x02)
7169 {
7170 Zero,
7171 Zero
7172 },
7173
7174 Package (0x02)
7175 {
7176 One,
7177 0x03
7178 },
7179
7180 Package (0x02)
7181 {
7182 0x02,
7183 0x03
7184 },
7185
7186 Package (0x02)
7187 {
7188 0x03,
7189 0x03
7190 }
7191 }
7192 },
7193
7194 Package (0x03)
7195 {
7196 "\\_SB.PCI0.SPI3",
7197 One,
7198 Package (0x05)
7199 {
7200 Zero,
7201 Package (0x02)
7202 {
7203 Zero,
7204 Zero
7205 },
7206
7207 Package (0x02)
7208 {
7209 One,
7210 0x03
7211 },
7212
7213 Package (0x02)
7214 {
7215 0x02,
7216 0x03
7217 },
7218
7219 Package (0x02)
7220 {
7221 0x03,
7222 0x03
7223 }
7224 }
7225 },
7226
7227 Package (0x03)
7228 {
7229 "\\_SB.PCI0.URT1",
7230 One,
7231 Package (0x05)
7232 {
7233 Zero,
7234 Package (0x02)
7235 {
7236 Zero,
7237 Zero
7238 },
7239
7240 Package (0x02)
7241 {
7242 One,
7243 0x03
7244 },
7245
7246 Package (0x02)
7247 {
7248 0x02,
7249 0x03
7250 },
7251
7252 Package (0x02)
7253 {
7254 0x03,
7255 0x03
7256 }
7257 }
7258 },
7259
7260 Package (0x03)
7261 {
7262 "\\_SB.PCI0.URT2",
7263 One,
7264 Package (0x05)
7265 {
7266 Zero,
7267 Package (0x02)
7268 {
7269 Zero,
7270 Zero
7271 },
7272
7273 Package (0x02)
7274 {
7275 One,
7276 0x03
7277 },
7278
7279 Package (0x02)
7280 {
7281 0x02,
7282 0x03
7283 },
7284
7285 Package (0x02)
7286 {
7287 0x03,
7288 0x03
7289 }
7290 }
7291 }
7292 })
7293 Name (DEHL, Package (0x15)
7294 {
7295 Package (0x03)
7296 {
7297 "\\_PR.CPU0",
7298 One,
7299 Package (0x02)
7300 {
7301 Zero,
7302 Package (0x02)
7303 {
7304 0xFF,
7305 Zero
7306 }
7307 }
7308 },
7309
7310 Package (0x03)
7311 {
7312 "\\_PR.CPU1",
7313 One,
7314 Package (0x02)
7315 {
7316 Zero,
7317 Package (0x02)
7318 {
7319 0xFF,
7320 Zero
7321 }
7322 }
7323 },
7324
7325 Package (0x03)
7326 {
7327 "\\_PR.CPU2",
7328 One,
7329 Package (0x02)
7330 {
7331 Zero,
7332 Package (0x02)
7333 {
7334 0xFF,
7335 Zero
7336 }
7337 }
7338 },
7339
7340 Package (0x03)
7341 {
7342 "\\_PR.CPU3",
7343 One,
7344 Package (0x02)
7345 {
7346 Zero,
7347 Package (0x02)
7348 {
7349 0xFF,
7350 Zero
7351 }
7352 }
7353 },
7354
7355 Package (0x03)
7356 {
7357 "\\_SB.PCI0.GFX0",
7358 One,
7359 Package (0x02)
7360 {
7361 Zero,
7362 Package (0x02)
7363 {
7364 0xFF,
7365 0x03
7366 }
7367 }
7368 },
7369
7370 Package (0x03)
7371 {
7372 "\\_SB.PCI0.I2C1",
7373 One,
7374 Package (0x05)
7375 {
7376 Zero,
7377 Package (0x02)
7378 {
7379 Zero,
7380 Zero
7381 },
7382
7383 Package (0x02)
7384 {
7385 One,
7386 0x03
7387 },
7388
7389 Package (0x02)
7390 {
7391 0x02,
7392 0x03
7393 },
7394
7395 Package (0x02)
7396 {
7397 0x03,
7398 0x03
7399 }
7400 }
7401 },
7402
7403 Package (0x03)
7404 {
7405 "\\_SB.PCI0.I2C2",
7406 One,
7407 Package (0x05)
7408 {
7409 Zero,
7410 Package (0x02)
7411 {
7412 Zero,
7413 Zero
7414 },
7415
7416 Package (0x02)
7417 {
7418 One,
7419 0x03
7420 },
7421
7422 Package (0x02)
7423 {
7424 0x02,
7425 0x03
7426 },
7427
7428 Package (0x02)
7429 {
7430 0x03,
7431 0x03
7432 }
7433 }
7434 },
7435
7436 Package (0x03)
7437 {
7438 "\\_SB.PCI0.I2C3",
7439 One,
7440 Package (0x05)
7441 {
7442 Zero,
7443 Package (0x02)
7444 {
7445 Zero,
7446 Zero
7447 },
7448
7449 Package (0x02)
7450 {
7451 One,
7452 0x03
7453 },
7454
7455 Package (0x02)
7456 {
7457 0x02,
7458 0x03
7459 },
7460
7461 Package (0x02)
7462 {
7463 0x03,
7464 0x03
7465 }
7466 }
7467 },
7468
7469 Package (0x03)
7470 {
7471 "\\_SB.PCI0.I2C5",
7472 One,
7473 Package (0x05)
7474 {
7475 Zero,
7476 Package (0x02)
7477 {
7478 Zero,
7479 Zero
7480 },
7481
7482 Package (0x02)
7483 {
7484 One,
7485 0x03
7486 },
7487
7488 Package (0x02)
7489 {
7490 0x02,
7491 0x03
7492 },
7493
7494 Package (0x02)
7495 {
7496 0x03,
7497 0x03
7498 }
7499 }
7500 },
7501
7502 Package (0x03)
7503 {
7504 "\\_SB.PCI0.I2C6",
7505 One,
7506 Package (0x05)
7507 {
7508 Zero,
7509 Package (0x02)
7510 {
7511 Zero,
7512 Zero
7513 },
7514
7515 Package (0x02)
7516 {
7517 One,
7518 0x03
7519 },
7520
7521 Package (0x02)
7522 {
7523 0x02,
7524 0x03
7525 },
7526
7527 Package (0x02)
7528 {
7529 0x03,
7530 0x03
7531 }
7532 }
7533 },
7534
7535 Package (0x03)
7536 {
7537 "\\_SB.PCI0.I2C7",
7538 One,
7539 Package (0x05)
7540 {
7541 Zero,
7542 Package (0x02)
7543 {
7544 Zero,
7545 Zero
7546 },
7547
7548 Package (0x02)
7549 {
7550 One,
7551 0x03
7552 },
7553
7554 Package (0x02)
7555 {
7556 0x02,
7557 0x03
7558 },
7559
7560 Package (0x02)
7561 {
7562 0x03,
7563 0x03
7564 }
7565 }
7566 },
7567
7568 Package (0x03)
7569 {
7570 "\\_SB.PCI0.XHC1",
7571 One,
7572 Package (0x05)
7573 {
7574 Zero,
7575 Package (0x02)
7576 {
7577 Zero,
7578 Zero
7579 },
7580
7581 Package (0x02)
7582 {
7583 One,
7584 0x03
7585 },
7586
7587 Package (0x02)
7588 {
7589 0x02,
7590 0x03
7591 },
7592
7593 Package (0x02)
7594 {
7595 0x03,
7596 0x03
7597 }
7598 }
7599 },
7600
7601 Package (0x03)
7602 {
7603 "\\_SB.PCI0.SEC0",
7604 One,
7605 Package (0x05)
7606 {
7607 Zero,
7608 Package (0x02)
7609 {
7610 Zero,
7611 Zero
7612 },
7613
7614 Package (0x02)
7615 {
7616 One,
7617 0x03
7618 },
7619
7620 Package (0x02)
7621 {
7622 0x02,
7623 0x03
7624 },
7625
7626 Package (0x02)
7627 {
7628 0x03,
7629 0x03
7630 }
7631 }
7632 },
7633
7634 Package (0x03)
7635 {
7636 "\\_SB.PCI0.LPEA",
7637 One,
7638 Package (0x05)
7639 {
7640 Zero,
7641 Package (0x02)
7642 {
7643 Zero,
7644 Zero
7645 },
7646
7647 Package (0x02)
7648 {
7649 One,
7650 Zero
7651 },
7652
7653 Package (0x02)
7654 {
7655 0x02,
7656 0x03
7657 },
7658
7659 Package (0x02)
7660 {
7661 0x03,
7662 0x03
7663 }
7664 }
7665 },
7666
7667 Package (0x03)
7668 {
7669 "\\_SB.PCI0.SDHA",
7670 One,
7671 Package (0x05)
7672 {
7673 Zero,
7674 Package (0x02)
7675 {
7676 Zero,
7677 Zero
7678 },
7679
7680 Package (0x02)
7681 {
7682 One,
7683 0x03
7684 },
7685
7686 Package (0x02)
7687 {
7688 0x02,
7689 0x03
7690 },
7691
7692 Package (0x02)
7693 {
7694 0x03,
7695 0x03
7696 }
7697 }
7698 },
7699
7700 Package (0x03)
7701 {
7702 "\\_SB.PCI0.SHC1",
7703 One,
7704 Package (0x05)
7705 {
7706 Zero,
7707 Package (0x02)
7708 {
7709 Zero,
7710 Zero
7711 },
7712
7713 Package (0x02)
7714 {
7715 One,
7716 0x03
7717 },
7718
7719 Package (0x02)
7720 {
7721 0x02,
7722 0x03
7723 },
7724
7725 Package (0x02)
7726 {
7727 0x03,
7728 0x03
7729 }
7730 }
7731 },
7732
7733 Package (0x03)
7734 {
7735 "\\_SB.PCI0.SPI1",
7736 One,
7737 Package (0x05)
7738 {
7739 Zero,
7740 Package (0x02)
7741 {
7742 Zero,
7743 Zero
7744 },
7745
7746 Package (0x02)
7747 {
7748 One,
7749 0x03
7750 },
7751
7752 Package (0x02)
7753 {
7754 0x02,
7755 0x03
7756 },
7757
7758 Package (0x02)
7759 {
7760 0x03,
7761 0x03
7762 }
7763 }
7764 },
7765
7766 Package (0x03)
7767 {
7768 "\\_SB.PCI0.SPI2",
7769 One,
7770 Package (0x05)
7771 {
7772 Zero,
7773 Package (0x02)
7774 {
7775 Zero,
7776 Zero
7777 },
7778
7779 Package (0x02)
7780 {
7781 One,
7782 0x03
7783 },
7784
7785 Package (0x02)
7786 {
7787 0x02,
7788 0x03
7789 },
7790
7791 Package (0x02)
7792 {
7793 0x03,
7794 0x03
7795 }
7796 }
7797 },
7798
7799 Package (0x03)
7800 {
7801 "\\_SB.PCI0.SPI3",
7802 One,
7803 Package (0x05)
7804 {
7805 Zero,
7806 Package (0x02)
7807 {
7808 Zero,
7809 Zero
7810 },
7811
7812 Package (0x02)
7813 {
7814 One,
7815 0x03
7816 },
7817
7818 Package (0x02)
7819 {
7820 0x02,
7821 0x03
7822 },
7823
7824 Package (0x02)
7825 {
7826 0x03,
7827 0x03
7828 }
7829 }
7830 },
7831
7832 Package (0x03)
7833 {
7834 "\\_SB.PCI0.URT1",
7835 One,
7836 Package (0x05)
7837 {
7838 Zero,
7839 Package (0x02)
7840 {
7841 Zero,
7842 Zero
7843 },
7844
7845 Package (0x02)
7846 {
7847 One,
7848 0x03
7849 },
7850
7851 Package (0x02)
7852 {
7853 0x02,
7854 0x03
7855 },
7856
7857 Package (0x02)
7858 {
7859 0x03,
7860 0x03
7861 }
7862 }
7863 },
7864
7865 Package (0x03)
7866 {
7867 "\\_SB.PCI0.URT2",
7868 One,
7869 Package (0x05)
7870 {
7871 Zero,
7872 Package (0x02)
7873 {
7874 Zero,
7875 Zero
7876 },
7877
7878 Package (0x02)
7879 {
7880 One,
7881 0x03
7882 },
7883
7884 Package (0x02)
7885 {
7886 0x02,
7887 0x03
7888 },
7889
7890 Package (0x02)
7891 {
7892 0x03,
7893 0x03
7894 }
7895 }
7896 }
7897 })
7898 Name (BUF1, Package (0x17)
7899 {
7900 Package (0x03)
7901 {
7902 "\\_PR.CPU0",
7903 One,
7904 Package (0x02)
7905 {
7906 Zero,
7907 Package (0x02)
7908 {
7909 0xFF,
7910 Zero
7911 }
7912 }
7913 },
7914
7915 Package (0x03)
7916 {
7917 "\\_PR.CPU1",
7918 One,
7919 Package (0x02)
7920 {
7921 Zero,
7922 Package (0x02)
7923 {
7924 0xFF,
7925 Zero
7926 }
7927 }
7928 },
7929
7930 Package (0x03)
7931 {
7932 "\\_PR.CPU2",
7933 One,
7934 Package (0x02)
7935 {
7936 Zero,
7937 Package (0x02)
7938 {
7939 0xFF,
7940 Zero
7941 }
7942 }
7943 },
7944
7945 Package (0x03)
7946 {
7947 "\\_PR.CPU3",
7948 One,
7949 Package (0x02)
7950 {
7951 Zero,
7952 Package (0x02)
7953 {
7954 0xFF,
7955 Zero
7956 }
7957 }
7958 },
7959
7960 Package (0x03)
7961 {
7962 "\\_SB.PCI0.GFX0",
7963 One,
7964 Package (0x02)
7965 {
7966 Zero,
7967 Package (0x02)
7968 {
7969 0xFF,
7970 0x03
7971 }
7972 }
7973 },
7974
7975 Package (0x03)
7976 {
7977 "\\_SB.PCI0.I2C1",
7978 One,
7979 Package (0x05)
7980 {
7981 Zero,
7982 Package (0x02)
7983 {
7984 Zero,
7985 Zero
7986 },
7987
7988 Package (0x02)
7989 {
7990 One,
7991 0x03
7992 },
7993
7994 Package (0x02)
7995 {
7996 0x02,
7997 0x03
7998 },
7999
8000 Package (0x02)
8001 {
8002 0x03,
8003 0x03
8004 }
8005 }
8006 },
8007
8008 Package (0x03)
8009 {
8010 "\\_SB.PCI0.I2C2",
8011 One,
8012 Package (0x05)
8013 {
8014 Zero,
8015 Package (0x02)
8016 {
8017 Zero,
8018 Zero
8019 },
8020
8021 Package (0x02)
8022 {
8023 One,
8024 0x03
8025 },
8026
8027 Package (0x02)
8028 {
8029 0x02,
8030 0x03
8031 },
8032
8033 Package (0x02)
8034 {
8035 0x03,
8036 0x03
8037 }
8038 }
8039 },
8040
8041 Package (0x03)
8042 {
8043 "\\_SB.PCI0.I2C3",
8044 One,
8045 Package (0x05)
8046 {
8047 Zero,
8048 Package (0x02)
8049 {
8050 Zero,
8051 Zero
8052 },
8053
8054 Package (0x02)
8055 {
8056 One,
8057 0x03
8058 },
8059
8060 Package (0x02)
8061 {
8062 0x02,
8063 0x03
8064 },
8065
8066 Package (0x02)
8067 {
8068 0x03,
8069 0x03
8070 }
8071 }
8072 },
8073
8074 Package (0x03)
8075 {
8076 "\\_SB.PCI0.I2C5",
8077 One,
8078 Package (0x05)
8079 {
8080 Zero,
8081 Package (0x02)
8082 {
8083 Zero,
8084 Zero
8085 },
8086
8087 Package (0x02)
8088 {
8089 One,
8090 0x03
8091 },
8092
8093 Package (0x02)
8094 {
8095 0x02,
8096 0x03
8097 },
8098
8099 Package (0x02)
8100 {
8101 0x03,
8102 0x03
8103 }
8104 }
8105 },
8106
8107 Package (0x03)
8108 {
8109 "\\_SB.PCI0.I2C6",
8110 One,
8111 Package (0x05)
8112 {
8113 Zero,
8114 Package (0x02)
8115 {
8116 Zero,
8117 Zero
8118 },
8119
8120 Package (0x02)
8121 {
8122 One,
8123 0x03
8124 },
8125
8126 Package (0x02)
8127 {
8128 0x02,
8129 0x03
8130 },
8131
8132 Package (0x02)
8133 {
8134 0x03,
8135 0x03
8136 }
8137 }
8138 },
8139
8140 Package (0x03)
8141 {
8142 "\\_SB.PCI0.I2C7",
8143 One,
8144 Package (0x05)
8145 {
8146 Zero,
8147 Package (0x02)
8148 {
8149 Zero,
8150 Zero
8151 },
8152
8153 Package (0x02)
8154 {
8155 One,
8156 0x03
8157 },
8158
8159 Package (0x02)
8160 {
8161 0x02,
8162 0x03
8163 },
8164
8165 Package (0x02)
8166 {
8167 0x03,
8168 0x03
8169 }
8170 }
8171 },
8172
8173 Package (0x03)
8174 {
8175 "\\_SB.PCI0.XHC1",
8176 One,
8177 Package (0x05)
8178 {
8179 Zero,
8180 Package (0x02)
8181 {
8182 Zero,
8183 Zero
8184 },
8185
8186 Package (0x02)
8187 {
8188 One,
8189 0x03
8190 },
8191
8192 Package (0x02)
8193 {
8194 0x02,
8195 0x03
8196 },
8197
8198 Package (0x02)
8199 {
8200 0x03,
8201 0x03
8202 }
8203 }
8204 },
8205
8206 Package (0x03)
8207 {
8208 "\\_SB.PCI0.SEC0",
8209 One,
8210 Package (0x05)
8211 {
8212 Zero,
8213 Package (0x02)
8214 {
8215 Zero,
8216 Zero
8217 },
8218
8219 Package (0x02)
8220 {
8221 One,
8222 0x03
8223 },
8224
8225 Package (0x02)
8226 {
8227 0x02,
8228 0x03
8229 },
8230
8231 Package (0x02)
8232 {
8233 0x03,
8234 0x03
8235 }
8236 }
8237 },
8238
8239 Package (0x03)
8240 {
8241 "\\_SB.PCI0.LPEA",
8242 One,
8243 Package (0x05)
8244 {
8245 Zero,
8246 Package (0x02)
8247 {
8248 Zero,
8249 Zero
8250 },
8251
8252 Package (0x02)
8253 {
8254 One,
8255 Zero
8256 },
8257
8258 Package (0x02)
8259 {
8260 0x02,
8261 0x03
8262 },
8263
8264 Package (0x02)
8265 {
8266 0x03,
8267 0x03
8268 }
8269 }
8270 },
8271
8272 Package (0x03)
8273 {
8274 "\\_SB.PCI0.SDHA",
8275 One,
8276 Package (0x05)
8277 {
8278 Zero,
8279 Package (0x02)
8280 {
8281 Zero,
8282 Zero
8283 },
8284
8285 Package (0x02)
8286 {
8287 One,
8288 0x03
8289 },
8290
8291 Package (0x02)
8292 {
8293 0x02,
8294 0x03
8295 },
8296
8297 Package (0x02)
8298 {
8299 0x03,
8300 0x03
8301 }
8302 }
8303 },
8304
8305 Package (0x03)
8306 {
8307 "\\_SB.PCI0.SHC1",
8308 One,
8309 Package (0x05)
8310 {
8311 Zero,
8312 Package (0x02)
8313 {
8314 Zero,
8315 Zero
8316 },
8317
8318 Package (0x02)
8319 {
8320 One,
8321 0x03
8322 },
8323
8324 Package (0x02)
8325 {
8326 0x02,
8327 0x03
8328 },
8329
8330 Package (0x02)
8331 {
8332 0x03,
8333 0x03
8334 }
8335 }
8336 },
8337
8338 Package (0x03)
8339 {
8340 "\\_SB.PCI0.SPI1",
8341 One,
8342 Package (0x05)
8343 {
8344 Zero,
8345 Package (0x02)
8346 {
8347 Zero,
8348 Zero
8349 },
8350
8351 Package (0x02)
8352 {
8353 One,
8354 0x03
8355 },
8356
8357 Package (0x02)
8358 {
8359 0x02,
8360 0x03
8361 },
8362
8363 Package (0x02)
8364 {
8365 0x03,
8366 0x03
8367 }
8368 }
8369 },
8370
8371 Package (0x03)
8372 {
8373 "\\_SB.PCI0.SPI2",
8374 One,
8375 Package (0x05)
8376 {
8377 Zero,
8378 Package (0x02)
8379 {
8380 Zero,
8381 Zero
8382 },
8383
8384 Package (0x02)
8385 {
8386 One,
8387 0x03
8388 },
8389
8390 Package (0x02)
8391 {
8392 0x02,
8393 0x03
8394 },
8395
8396 Package (0x02)
8397 {
8398 0x03,
8399 0x03
8400 }
8401 }
8402 },
8403
8404 Package (0x03)
8405 {
8406 "\\_SB.PCI0.SPI3",
8407 One,
8408 Package (0x05)
8409 {
8410 Zero,
8411 Package (0x02)
8412 {
8413 Zero,
8414 Zero
8415 },
8416
8417 Package (0x02)
8418 {
8419 One,
8420 0x03
8421 },
8422
8423 Package (0x02)
8424 {
8425 0x02,
8426 0x03
8427 },
8428
8429 Package (0x02)
8430 {
8431 0x03,
8432 0x03
8433 }
8434 }
8435 },
8436
8437 Package (0x03)
8438 {
8439 "\\_SB.PCI0.URT1",
8440 One,
8441 Package (0x05)
8442 {
8443 Zero,
8444 Package (0x02)
8445 {
8446 Zero,
8447 Zero
8448 },
8449
8450 Package (0x02)
8451 {
8452 One,
8453 0x03
8454 },
8455
8456 Package (0x02)
8457 {
8458 0x02,
8459 0x03
8460 },
8461
8462 Package (0x02)
8463 {
8464 0x03,
8465 0x03
8466 }
8467 }
8468 },
8469
8470 Package (0x03)
8471 {
8472 "\\_SB.PCI0.URT2",
8473 One,
8474 Package (0x05)
8475 {
8476 Zero,
8477 Package (0x02)
8478 {
8479 Zero,
8480 Zero
8481 },
8482
8483 Package (0x02)
8484 {
8485 One,
8486 0x03
8487 },
8488
8489 Package (0x02)
8490 {
8491 0x02,
8492 0x03
8493 },
8494
8495 Package (0x02)
8496 {
8497 0x03,
8498 0x03
8499 }
8500 }
8501 },
8502
8503 Package (0x03)
8504 {
8505 "\\_SB.PCI0.RP01.PXSX",
8506 One,
8507 Package (0x02)
8508 {
8509 Zero,
8510 Package (0x02)
8511 {
8512 0xFF,
8513 0x03
8514 }
8515 }
8516 },
8517
8518 Package (0x03)
8519 {
8520 "\\_SB.PCI0.I2C2.RTEK",
8521 One,
8522 Package (0x05)
8523 {
8524 Zero,
8525 Package (0x02)
8526 {
8527 Zero,
8528 Zero
8529 },
8530
8531 Package (0x02)
8532 {
8533 One,
8534 Zero
8535 },
8536
8537 Package (0x02)
8538 {
8539 0x02,
8540 0x03
8541 },
8542
8543 Package (0x02)
8544 {
8545 0x03,
8546 0x03
8547 }
8548 }
8549 }
8550 })
8551 Name (BCCD, Package (0x01)
8552 {
8553 Package (0x02)
8554 {
8555 "\\_SB.PCI0.SDHA",
8556 Package (0x01)
8557 {
8558 Package (0x03)
8559 {
8560 Package (0x05)
8561 {
8562 Zero,
8563 0x20,
8564 Zero,
8565 0x03,
8566 Ones
8567 },
8568
8569 Package (0x03)
8570 {
8571 0xFFFFFFFC,
8572 Zero,
8573 0x04
8574 },
8575
8576 Zero
8577 }
8578 }
8579 }
8580 })
8581 Method (_STA, 0, NotSerialized) // _STA: Status
8582 {
8583 Return (0x0F)
8584 }
8585
8586 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
8587 {
8588 If ((Arg0 == ToUUID ("c4eb40a0-6cd2-11e2-bcfd-0800200c9a66")))
8589 {
8590 If ((Arg2 == Zero))
8591 {
8592 Return (Buffer (One)
8593 {
8594 0x07 // .
8595 })
8596 }
8597
8598 If ((Arg2 == One))
8599 {
8600 If ((MLSD == One))
8601 {
8602 If ((((BDID == 0x09) || (BDID == 0x0A)) || (BDID == 0x08)))
8603 {
8604 If ((OSYS == 0x07DF))
8605 {
8606 Return (BUF1) /* \_SB_.PCI0.PEPD.BUF1 */
8607 }
8608 Else
8609 {
8610 Return (DEHL) /* \_SB_.PCI0.PEPD.DEHL */
8611 }
8612 }
8613 ElseIf ((OSYS == 0x07DF))
8614 {
8615 If ((BDID == One))
8616 {
8617 Return (BUF0) /* \_SB_.PCI0.PEPD.BUF0 */
8618 }
8619
8620 If (((SD0A == Zero) || (SD3D == One)))
8621 {
8622 Return (BU22) /* \_SB_.PCI0.PEPD.BU22 */
8623 }
8624 Else
8625 {
8626 Return (BUF2) /* \_SB_.PCI0.PEPD.BUF2 */
8627 }
8628 }
8629 ElseIf (((SD0A == Zero) || (SD3D == One)))
8630 {
8631 Return (DVL2) /* \_SB_.PCI0.PEPD.DVL2 */
8632 }
8633 Else
8634 {
8635 Return (DEVL) /* \_SB_.PCI0.PEPD.DEVL */
8636 }
8637 }
8638 ElseIf ((((BDID == 0x09) || (BDID == 0x0A)) || (BDID ==
8639 0x08)))
8640 {
8641 Return (DEHY) /* \_SB_.PCI0.PEPD.DEHY */
8642 }
8643 Else
8644 {
8645 Return (DEVY) /* \_SB_.PCI0.PEPD.DEVY */
8646 }
8647 }
8648
8649 If ((Arg2 == 0x02))
8650 {
8651 Local0 = EM1A /* \EM1A */
8652 Local0 += 0x84
8653 DerefOf (DerefOf (DerefOf (DerefOf (BCCD [Zero]
8654 ) [One]) [Zero]) [Zero]) [0x04] = Local0
8655 Return (BCCD) /* \_SB_.PCI0.PEPD.BCCD */
8656 }
8657 }
8658
8659 Return (One)
8660 }
8661 }
8662
8663 Device (SDHA)
8664 {
8665 Name (_HID, "80860F14" /* Intel Baytrail SDIO/MMC Host Controller */) // _HID: Hardware ID
8666 Name (_CID, "PNP0D40" /* SDA Standard Compliant SD Host Controller */) // _CID: Compatible ID
8667 Name (_DDN, "Intel(R) eMMC Controller - 80862294") // _DDN: DOS Device Name
8668 Name (_UID, One) // _UID: Unique ID
8669 Name (_HRV, One) // _HRV: Hardware Revision
8670 Name (_DEP, Package (0x01) // _DEP: Dependencies
8671 {
8672 PEPD
8673 })
8674 Name (RBUF, ResourceTemplate ()
8675 {
8676 Memory32Fixed (ReadWrite,
8677 0x00000000, // Address Base
8678 0x00001000, // Address Length
8679 _Y04)
8680 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
8681 {
8682 0x0000002D,
8683 }
8684 })
8685 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
8686 {
8687 CreateDWordField (RBUF, \_SB.PCI0.SDHA._Y04._BAS, B0BA) // _BAS: Base Address
8688 CreateDWordField (RBUF, \_SB.PCI0.SDHA._Y04._LEN, B0LN) // _LEN: Length
8689 B0BA = EM0A /* \EM0A */
8690 B0LN = EM0L /* \EM0L */
8691 Return (RBUF) /* \_SB_.PCI0.SDHA.RBUF */
8692 }
8693
8694 Method (_STA, 0, NotSerialized) // _STA: Status
8695 {
8696 If (((EM0A == Zero) || (SD1D == One)))
8697 {
8698 Return (Zero)
8699 }
8700
8701 Return (0x0F)
8702 }
8703
8704 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
8705 {
8706 If ((EMMP == Zero))
8707 {
8708 Return (Zero)
8709 }
8710 Else
8711 {
8712 Return (0x03)
8713 }
8714 }
8715
8716 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
8717 {
8718 PSAT |= 0x03
8719 PSAT |= Zero
8720 }
8721
8722 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
8723 {
8724 PSAT &= 0xFFFFFFFC
8725 PSAT |= Zero
8726 }
8727
8728 OperationRegion (KEYS, SystemMemory, EM1A, 0x0100)
8729 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
8730 {
8731 Offset (0x84),
8732 PSAT, 32
8733 }
8734
8735 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
8736 {
8737 }
8738
8739 Device (EMMD)
8740 {
8741 Name (_ADR, 0x08) // _ADR: Address
8742 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
8743 {
8744 Return (Zero)
8745 }
8746 }
8747 }
8748
8749 Device (PEMC)
8750 {
8751 Name (_ADR, 0x00100000) // _ADR: Address
8752 OperationRegion (SDIO, PCI_Config, 0x84, 0x04)
8753 Field (SDIO, WordAcc, NoLock, Preserve)
8754 {
8755 Offset (0x01),
8756 PMEE, 1,
8757 , 6,
8758 PMES, 1
8759 }
8760
8761 Method (_STA, 0, NotSerialized) // _STA: Status
8762 {
8763 If (((EM0A == Zero) && (SD1D == Zero)))
8764 {
8765 Return (0x0F)
8766 }
8767 Else
8768 {
8769 Return (Zero)
8770 }
8771 }
8772
8773 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
8774 {
8775 }
8776
8777 Device (CARD)
8778 {
8779 Name (_ADR, 0x08) // _ADR: Address
8780 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
8781 {
8782 Return (Zero)
8783 }
8784 }
8785 }
8786
8787 Device (SDHB)
8788 {
8789 Name (_ADR, Zero) // _ADR: Address
8790 Name (_HID, "80860F14" /* Intel Baytrail SDIO/MMC Host Controller */) // _HID: Hardware ID
8791 Name (AHID, "INT33BB")
8792 Name (_CID, "PNP0D40" /* SDA Standard Compliant SD Host Controller */) // _CID: Compatible ID
8793 Name (_DDN, "Intel(R) SDIO Controller - 80862295") // _DDN: DOS Device Name
8794 Name (_UID, 0x02) // _UID: Unique ID
8795 Name (_HRV, One) // _HRV: Hardware Revision
8796 Name (AHRV, 0x02)
8797 Name (_DEP, Package (0x03) // _DEP: Dependencies
8798 {
8799 PEPD,
8800 GPO1,
8801 GPO3
8802 })
8803 Name (PSTS, Zero)
8804 Name (SBUF, ResourceTemplate ()
8805 {
8806 Memory32Fixed (ReadWrite,
8807 0x00000000, // Address Base
8808 0x00001000, // Address Length
8809 _Y05)
8810 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
8811 {
8812 0x0000002E,
8813 }
8814 })
8815 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
8816 {
8817 CreateDWordField (SBUF, \_SB.PCI0.SDHB._Y05._BAS, B0BA) // _BAS: Base Address
8818 CreateDWordField (SBUF, \_SB.PCI0.SDHB._Y05._LEN, B0LN) // _LEN: Length
8819 B0BA = SI0A /* \SI0A */
8820 B0LN = SI0L /* \SI0L */
8821 Return (SBUF) /* \_SB_.PCI0.SDHB.SBUF */
8822 }
8823
8824 Method (_STA, 0, NotSerialized) // _STA: Status
8825 {
8826 If (((SI0A == Zero) || (SD2D == One)))
8827 {
8828 Return (Zero)
8829 }
8830
8831 Return (0x0F)
8832 }
8833
8834 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
8835 {
8836 }
8837
8838 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
8839 {
8840 PSAT |= 0x03
8841 PSAT |= Zero
8842 }
8843
8844 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
8845 {
8846 PSAT &= 0xFFFFFFFC
8847 PSAT |= Zero
8848 If ((OSID == One))
8849 {
8850 If ((PSTS == Zero))
8851 {
8852 If (((BDID != One) && (^^^GPO3.AVBL == One)))
8853 {
8854 P8XH (Zero, 0x58)
8855 If (((BDID != 0x09) && (BDID != 0x0A)))
8856 {
8857 ^^^GPO3.WFD3 = One
8858 }
8859
8860 PSTS = One
8861 }
8862 ElseIf ((^^^GPO1.AVBL == One))
8863 {
8864 If (((BDID != 0x09) && (BDID != 0x0A)))
8865 {
8866 ^^^GPO1.WLD3 = One
8867 }
8868
8869 PSTS = One
8870 }
8871 }
8872 }
8873 }
8874
8875 OperationRegion (KEYS, SystemMemory, SI1A, 0x0100)
8876 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
8877 {
8878 Offset (0x84),
8879 PSAT, 32
8880 }
8881
8882 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
8883 {
8884 If ((SDI1 == Zero))
8885 {
8886 Return (Zero)
8887 }
8888 Else
8889 {
8890 Return (0x03)
8891 }
8892 }
8893
8894 Device (BRCM)
8895 {
8896 Name (_ADR, One) // _ADR: Address
8897 Name (_DEP, Package (0x02) // _DEP: Dependencies
8898 {
8899 GPO2,
8900 GPO3
8901 })
8902 Name (_HID, "BCM43241") // _HID: Hardware ID
8903 Name (_CID, "BCM43241") // _CID: Compatible ID
8904 Method (_STA, 0, NotSerialized) // _STA: Status
8905 {
8906 If (((BDID == One) || (BDID == 0x09)))
8907 {
8908 Return (Zero)
8909 }
8910
8911 If (((BDID == 0x08) || (BDID == 0x0A)))
8912 {
8913 Return (Zero)
8914 }
8915
8916 If (((OSID == 0x02) || (OSID == 0x04)))
8917 {
8918 Return (0x0F)
8919 }
8920
8921 Return (Zero)
8922 }
8923
8924 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
8925 {
8926 Return (Zero)
8927 }
8928
8929 Name (_S4W, 0x02) // _S4W: S4 Device Wake State
8930 Name (_S0W, 0x02) // _S0W: S0 Device Wake State
8931 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
8932 {
8933 Name (RBUF, ResourceTemplate ()
8934 {
8935 Interrupt (ResourceConsumer, Edge, ActiveHigh, ExclusiveAndWake, ,, )
8936 {
8937 0x00000044,
8938 }
8939 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
8940 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
8941 )
8942 { // Pin list
8943 0x000A
8944 }
8945 GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
8946 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
8947 )
8948 { // Pin list
8949 0x004B
8950 }
8951 })
8952 Return (RBUF) /* \_SB_.PCI0.SDHB.BRCM._CRS.RBUF */
8953 }
8954
8955 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
8956 {
8957 If ((^^^^GPO3.AVBL == One))
8958 {
8959 ^^^^GPO3.WFD3 = Zero
8960 }
8961 }
8962
8963 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
8964 {
8965 If ((^^^^GPO3.AVBL == One))
8966 {
8967 ^^^^GPO3.WFD3 = One
8968 }
8969 }
8970 }
8971
8972 Device (BRC1)
8973 {
8974 Name (_ADR, One) // _ADR: Address
8975 Name (_DEP, Package (0x01) // _DEP: Dependencies
8976 {
8977 GPO3
8978 })
8979 Method (_STA, 0, NotSerialized) // _STA: Status
8980 {
8981 If ((BDID == One))
8982 {
8983 Return (Zero)
8984 }
8985
8986 If ((OSID == One))
8987 {
8988 Return (0x0F)
8989 }
8990
8991 Return (Zero)
8992 }
8993
8994 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
8995 {
8996 Return (Zero)
8997 }
8998
8999 Name (_S4W, 0x02) // _S4W: S4 Device Wake State
9000 Name (_S0W, 0x02) // _S0W: S0 Device Wake State
9001 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
9002 {
9003 Name (RBUF, ResourceTemplate ()
9004 {
9005 Interrupt (ResourceConsumer, Edge, ActiveHigh, ExclusiveAndWake, ,, )
9006 {
9007 0x00000044,
9008 }
9009 })
9010 Return (RBUF) /* \_SB_.PCI0.SDHB.BRC1._CRS.RBUF */
9011 }
9012
9013 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
9014 {
9015 If ((^^^^GPO3.AVBL == One))
9016 {
9017 ^^^^GPO3.WFD3 = Zero
9018 PSTS = Zero
9019 }
9020 }
9021
9022 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
9023 {
9024 If ((PSTS == Zero))
9025 {
9026 If ((^^^^GPO3.AVBL == One))
9027 {
9028 ^^^^GPO3.WFD3 = One
9029 PSTS = One
9030 }
9031 }
9032 }
9033 }
9034
9035 Device (BRC2)
9036 {
9037 Name (_ADR, 0x02) // _ADR: Address
9038 Method (_STA, 0, NotSerialized) // _STA: Status
9039 {
9040 If ((BDID == One))
9041 {
9042 Return (Zero)
9043 }
9044
9045 Return (0x0F)
9046 }
9047
9048 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
9049 {
9050 Return (Zero)
9051 }
9052
9053 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
9054 {
9055 Name (NAM, Buffer (0x14)
9056 {
9057 "\\_SB.PCI0.SDHB.BRC1"
9058 })
9059 Name (SPB, Buffer (0x0C)
9060 {
9061 /* 0000 */ 0x8E, 0x1D, 0x00, 0x01, 0x00, 0xC0, 0x02, 0x00, // ........
9062 /* 0008 */ 0x00, 0x01, 0x00, 0x00 // ....
9063 })
9064 Name (END, Buffer (0x02)
9065 {
9066 0x79, 0x00 // y.
9067 })
9068 Concatenate (SPB, NAM, Local0)
9069 Concatenate (Local0, END, Local1)
9070 Return (Local1)
9071 }
9072 }
9073
9074 Device (RTLW)
9075 {
9076 Name (AHID, "RTL8723")
9077 Name (ACID, "RTL8723")
9078 Name (_ADR, One) // _ADR: Address
9079 Name (_DEP, Package (0x02) // _DEP: Dependencies
9080 {
9081 GPO1,
9082 GPO2
9083 })
9084 Method (_STA, 0, NotSerialized) // _STA: Status
9085 {
9086 If ((BDID == One))
9087 {
9088 Return (0x0F)
9089 }
9090
9091 Return (Zero)
9092 }
9093
9094 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
9095 {
9096 Return (Zero)
9097 }
9098
9099 Name (_S4W, 0x02) // _S4W: S4 Device Wake State
9100 Name (_S0W, 0x02) // _S0W: S0 Device Wake State
9101 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
9102 {
9103 Name (RBUF, ResourceTemplate ()
9104 {
9105 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
9106 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
9107 )
9108 { // Pin list
9109 0x000A
9110 }
9111 GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
9112 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
9113 )
9114 { // Pin list
9115 0x0017
9116 }
9117 })
9118 Return (RBUF) /* \_SB_.PCI0.SDHB.RTLW._CRS.RBUF */
9119 }
9120
9121 Method (APS3, 0, NotSerialized)
9122 {
9123 If ((^^^^GPO1.AVBL == One))
9124 {
9125 ^^^^GPO1.WLD3 = Zero
9126 }
9127 }
9128
9129 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
9130 {
9131 If ((^^^^GPO1.AVBL == One))
9132 {
9133 PSTS = Zero
9134 }
9135 }
9136
9137 Method (_PS2, 0, NotSerialized) // _PS2: Power State 2
9138 {
9139 }
9140
9141 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
9142 {
9143 If ((PSTS == Zero))
9144 {
9145 If ((^^^^GPO1.AVBL == One))
9146 {
9147 ^^^^GPO1.WLD3 = One
9148 PSTS = One
9149 }
9150 }
9151 }
9152
9153 Method (APS0, 0, NotSerialized)
9154 {
9155 If ((^^^^GPO1.AVBL == One))
9156 {
9157 ^^^^GPO1.WLD3 = One
9158 }
9159 }
9160 }
9161
9162 Device (RTL2)
9163 {
9164 Name (_ADR, 0x02) // _ADR: Address
9165 Method (_STA, 0, NotSerialized) // _STA: Status
9166 {
9167 If (((BDID == One) && (OSID == One)))
9168 {
9169 Return (0x0F)
9170 }
9171
9172 Return (Zero)
9173 }
9174
9175 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
9176 {
9177 Return (Zero)
9178 }
9179
9180 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
9181 {
9182 Name (NAM, Buffer (0x14)
9183 {
9184 "\\_SB.PCI0.SDHB.RTLW"
9185 })
9186 Name (SPB, Buffer (0x0C)
9187 {
9188 /* 0000 */ 0x8E, 0x1D, 0x00, 0x01, 0x00, 0xC0, 0x02, 0x00, // ........
9189 /* 0008 */ 0x00, 0x01, 0x00, 0x00 // ....
9190 })
9191 Name (END, Buffer (0x02)
9192 {
9193 0x79, 0x00 // y.
9194 })
9195 Concatenate (SPB, NAM, Local0)
9196 Concatenate (Local0, END, Local1)
9197 Return (Local1)
9198 }
9199 }
9200 }
9201
9202 Device (SDHC)
9203 {
9204 Name (_HID, "INT33BB" /* Intel Baytrail SD Host Controller */) // _HID: Hardware ID
9205 Name (_CID, "PNP0D40" /* SDA Standard Compliant SD Host Controller */) // _CID: Compatible ID
9206 Name (_DDN, "Intel(R) SD Card Controller - 80862296") // _DDN: DOS Device Name
9207 Name (_UID, 0x03) // _UID: Unique ID
9208 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
9209 {
9210 P33X
9211 })
9212 Name (WPR0, Package (0x01)
9213 {
9214 P33W
9215 })
9216 Name (_DEP, Package (0x02) // _DEP: Dependencies
9217 {
9218 I2C7,
9219 ^I2C7.PMIC
9220 })
9221 Name (WDEP, Package (0x02)
9222 {
9223 I2C7,
9224 ^I2C7.PMI5
9225 })
9226 Name (ABUF, ResourceTemplate ()
9227 {
9228 Memory32Fixed (ReadWrite,
9229 0x00000000, // Address Base
9230 0x00001000, // Address Length
9231 _Y06)
9232 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
9233 {
9234 0x0000002F,
9235 }
9236 GpioInt (Edge, ActiveBoth, SharedAndWake, PullNone, 0x2710,
9237 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9238 )
9239 { // Pin list
9240 0x0051
9241 }
9242 GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
9243 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9244 )
9245 { // Pin list
9246 0x0051
9247 }
9248 GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
9249 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9250 )
9251 { // Pin list
9252 0x0055
9253 }
9254 GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
9255 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9256 )
9257 { // Pin list
9258 0x004E
9259 }
9260 })
9261 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
9262 {
9263 CreateDWordField (ABUF, \_SB.PCI0.SDHC._Y06._BAS, B0BA) // _BAS: Base Address
9264 CreateDWordField (ABUF, \_SB.PCI0.SDHC._Y06._LEN, B0LN) // _LEN: Length
9265 B0BA = SD0A /* \SD0A */
9266 B0LN = SD0L /* \SD0L */
9267 Return (ABUF) /* \_SB_.PCI0.SDHC.ABUF */
9268 }
9269
9270 Method (_STA, 0, NotSerialized) // _STA: Status
9271 {
9272 If (((SD0A == Zero) || (SD3D == One)))
9273 {
9274 Return (Zero)
9275 }
9276
9277 If ((OSID == 0x04))
9278 {
9279 Return (0x0F)
9280 }
9281
9282 Return (Zero)
9283 }
9284
9285 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
9286 {
9287 If ((SCDD == One))
9288 {
9289 Local0 = (^^CHVC.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) | One)
9290 ^^CHVC.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
9291 }
9292
9293 PSAT |= 0x03
9294 PSAT |= Zero
9295 }
9296
9297 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
9298 {
9299 If ((SCDD == One))
9300 {
9301 Local0 = (^^CHVC.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) & 0xFFFFFFFC)
9302 ^^CHVC.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
9303 }
9304
9305 PSAT &= 0xFFFFFFFC
9306 PSAT |= Zero
9307 }
9308
9309 OperationRegion (KEYS, SystemMemory, SD1A, 0x0100)
9310 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
9311 {
9312 Offset (0x84),
9313 PSAT, 32
9314 }
9315
9316 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
9317 {
9318 If ((SDI2 == Zero))
9319 {
9320 Return (Zero)
9321 }
9322 Else
9323 {
9324 Return (0x03)
9325 }
9326 }
9327 }
9328
9329 Device (SHC1)
9330 {
9331 Name (_HID, "80860F14" /* Intel Baytrail SDIO/MMC Host Controller */) // _HID: Hardware ID
9332 Name (_CID, "PNP0D40" /* SDA Standard Compliant SD Host Controller */) // _CID: Compatible ID
9333 Name (_DDN, "Intel(R) SD Card Controller - 80862296") // _DDN: DOS Device Name
9334 Name (_UID, 0x03) // _UID: Unique ID
9335 Name (_HRV, One) // _HRV: Hardware Revision
9336 Name (_DEP, Package (0x02) // _DEP: Dependencies
9337 {
9338 MBID,
9339 I2C7
9340 })
9341 Name (XDEP, Package (0x03)
9342 {
9343 MBID,
9344 I2C7,
9345 ^I2C7.PMI1
9346 })
9347 Name (TDEP, Package (0x03)
9348 {
9349 MBID,
9350 I2C7,
9351 ^I2C7.PMI2
9352 })
9353 Name (WDEP, Package (0x03)
9354 {
9355 MBID,
9356 I2C7,
9357 ^I2C7.PMI5
9358 })
9359 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
9360 {
9361 P33X
9362 })
9363 Name (WPR0, Package (0x01)
9364 {
9365 P18W
9366 })
9367 Name (ABUF, ResourceTemplate ()
9368 {
9369 Memory32Fixed (ReadWrite,
9370 0x00000000, // Address Base
9371 0x00001000, // Address Length
9372 )
9373 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
9374 {
9375 0x0000002F,
9376 }
9377 GpioInt (Edge, ActiveBoth, SharedAndWake, PullNone, 0x2710,
9378 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9379 )
9380 { // Pin list
9381 0x0051
9382 }
9383 GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
9384 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9385 )
9386 { // Pin list
9387 0x0051
9388 }
9389 GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
9390 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9391 )
9392 { // Pin list
9393 0x0055
9394 }
9395 GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
9396 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9397 )
9398 { // Pin list
9399 0x004E
9400 }
9401 })
9402 Name (WBUF, ResourceTemplate ()
9403 {
9404 Memory32Fixed (ReadWrite,
9405 0x00000000, // Address Base
9406 0x00001000, // Address Length
9407 _Y07)
9408 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
9409 {
9410 0x0000002F,
9411 }
9412 GpioInt (Edge, ActiveBoth, SharedAndWake, PullNone, 0x2710,
9413 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9414 )
9415 { // Pin list
9416 0x0051
9417 }
9418 GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
9419 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
9420 )
9421 { // Pin list
9422 0x0051
9423 }
9424 })
9425 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
9426 {
9427 CreateDWordField (WBUF, \_SB.PCI0.SHC1._Y07._BAS, B01A) // _BAS: Base Address
9428 CreateDWordField (WBUF, \_SB.PCI0.SHC1._Y07._LEN, B01N) // _LEN: Length
9429 B01A = SD0A /* \SD0A */
9430 B01N = SD0L /* \SD0L */
9431 Return (WBUF) /* \_SB_.PCI0.SHC1.WBUF */
9432 }
9433
9434 Method (_STA, 0, NotSerialized) // _STA: Status
9435 {
9436 If (((SD0A == Zero) || (SD3D == One)))
9437 {
9438 Return (Zero)
9439 }
9440
9441 If ((OSID == 0x04))
9442 {
9443 Return (Zero)
9444 }
9445
9446 If ((MLSD == One))
9447 {
9448 Return (0x0F)
9449 }
9450 Else
9451 {
9452 Return (Zero)
9453 }
9454 }
9455
9456 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
9457 {
9458 If ((SCDD == One))
9459 {
9460 Local0 = (^^^MBID.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) | One)
9461 ^^^MBID.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
9462 }
9463
9464 If ((^^I2C7.AVBL == One))
9465 {
9466 If ((PMID == One))
9467 {
9468 BUFF = ^^I2C7.DL02 /* \_SB_.PCI0.I2C7.DL02 */
9469 DATA &= 0xFE
9470 ^^I2C7.DL02 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9471 Sleep (0x0A)
9472 BUFF = ^^I2C7.DL03 /* \_SB_.PCI0.I2C7.DL03 */
9473 DATA &= 0xFE
9474 ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9475 }
9476 ElseIf ((PMID == 0x02))
9477 {
9478 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9479 If ((STAT == Zero))
9480 {
9481 DATA &= 0xEF
9482 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9483 Sleep (0x0A)
9484 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9485 If ((STAT == Zero))
9486 {
9487 DATA &= 0xDF
9488 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9489 }
9490 }
9491 }
9492 ElseIf ((PMID == 0x03))
9493 {
9494 ADBG ("PS3")
9495 Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
9496 Sleep (0x0A)
9497 Local0 &= 0xF8
9498 ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
9499 }
9500 }
9501
9502 PSAT |= 0x03
9503 PSAT |= Zero
9504 }
9505
9506 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
9507 {
9508 If ((SCDD == One))
9509 {
9510 Local0 = (^^^MBID.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) & 0xFFFFFFFC)
9511 ^^^MBID.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
9512 }
9513
9514 If ((SDVL == Zero))
9515 {
9516 If ((^^I2C7.AVBL == One))
9517 {
9518 If ((PMID == One))
9519 {
9520 DATA = 0x1D
9521 ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9522 Sleep (0x0A)
9523 ^^I2C7.DL02 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9524 }
9525 ElseIf ((PMID == 0x02))
9526 {
9527 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9528 If ((STAT == Zero))
9529 {
9530 DATA |= 0x10
9531 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9532 }
9533
9534 BUFF = ^^I2C7.XD32 /* \_SB_.PCI0.I2C7.XD32 */
9535 If ((STAT == Zero))
9536 {
9537 DATA |= 0x1A
9538 DATA &= 0xFA
9539 ^^I2C7.XD32 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9540 }
9541
9542 Sleep (0x0A)
9543 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9544 If ((STAT == Zero))
9545 {
9546 DATA |= 0x20
9547 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9548 }
9549 }
9550 ElseIf ((PMID == 0x03))
9551 {
9552 ADBG ("PS0 3p3")
9553 Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
9554 Sleep (0x0A)
9555 Local0 |= One
9556 Local0 &= 0xF9
9557 ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
9558 Sleep (0x0A)
9559 ^^I2C7.PMI5.SET (One, 0x6E, 0xC6, 0x3D)
9560 Sleep (0x0A)
9561 }
9562 }
9563 }
9564 ElseIf ((SDVL == One))
9565 {
9566 If ((^^I2C7.AVBL == One))
9567 {
9568 If ((PMID == One))
9569 {
9570 DATA = 0x59
9571 ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9572 Sleep (0x05)
9573 }
9574 ElseIf ((PMID == 0x02))
9575 {
9576 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9577 If ((STAT == Zero))
9578 {
9579 DATA |= 0x10
9580 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9581 }
9582
9583 BUFF = ^^I2C7.XD32 /* \_SB_.PCI0.I2C7.XD32 */
9584 If ((STAT == Zero))
9585 {
9586 DATA |= 0x0B
9587 DATA &= 0xEB
9588 ^^I2C7.XD32 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9589 }
9590
9591 Sleep (0x0A)
9592 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9593 If ((STAT == Zero))
9594 {
9595 DATA |= 0x20
9596 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9597 }
9598 }
9599 ElseIf ((PMID == 0x03))
9600 {
9601 ADBG ("PS0 1p8")
9602 Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
9603 Sleep (0x0A)
9604 Local0 |= One
9605 Local0 &= 0xF9
9606 ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
9607 Sleep (0x0A)
9608 ^^I2C7.PMI5.SET (One, 0x6E, 0xC6, 0x1F)
9609 Sleep (0x0A)
9610 }
9611 }
9612 }
9613
9614 PSAT &= 0xFFFFFFFC
9615 PSAT |= Zero
9616 If ((OSID == One))
9617 {
9618 Sleep (0x03E8)
9619 }
9620 }
9621
9622 OperationRegion (KEYS, SystemMemory, SD1A, 0x0100)
9623 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
9624 {
9625 Offset (0x84),
9626 PSAT, 32
9627 }
9628
9629 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
9630 {
9631 If ((SDI2 == Zero))
9632 {
9633 Return (Zero)
9634 }
9635 Else
9636 {
9637 Return (0x03)
9638 }
9639 }
9640
9641 Name (BUFF, Buffer (0x03){})
9642 CreateByteField (BUFF, Zero, STAT)
9643 CreateByteField (BUFF, 0x02, DATA)
9644 Method (CDSM, 4, NotSerialized)
9645 {
9646 If ((SCDD == One))
9647 {
9648 Local0 = (^^^MBID.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) & 0xFFFFFFFC)
9649 ^^^MBID.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
9650 }
9651
9652 If ((Arg0 == ToUUID ("f6c13ea5-65cd-461f-ab7a-29f7e8d5bd61")))
9653 {
9654 If ((Arg1 == Zero))
9655 {
9656 If ((Arg2 == Zero))
9657 {
9658 Return (Buffer (0x04)
9659 {
9660 0x1F, 0x00, 0x00, 0x00 // ....
9661 })
9662 }
9663
9664 If ((Arg2 == One))
9665 {
9666 Return (One)
9667 }
9668
9669 If ((Arg2 == 0x02))
9670 {
9671 Return (0x02)
9672 }
9673
9674 If ((Arg2 == 0x03))
9675 {
9676 ADBG ("DSM 1p8")
9677 If ((^^I2C7.AVBL == One))
9678 {
9679 If ((PMID == One))
9680 {
9681 DATA = 0x59
9682 ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9683 }
9684 ElseIf ((PMID == 0x02))
9685 {
9686 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9687 If ((STAT == Zero))
9688 {
9689 DATA |= 0x10
9690 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9691 }
9692
9693 BUFF = ^^I2C7.XD32 /* \_SB_.PCI0.I2C7.XD32 */
9694 If ((STAT == Zero))
9695 {
9696 DATA |= 0x0B
9697 DATA &= 0xEB
9698 ^^I2C7.XD32 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9699 }
9700
9701 Sleep (0x0A)
9702 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9703 If ((STAT == Zero))
9704 {
9705 DATA |= 0x20
9706 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9707 }
9708 }
9709 ElseIf ((PMID == 0x03))
9710 {
9711 Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
9712 Sleep (0x0A)
9713 Local0 &= 0xF8
9714 ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
9715 Sleep (0x64)
9716 Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
9717 Sleep (0x0A)
9718 Local0 |= One
9719 Local0 &= 0xF9
9720 ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
9721 Sleep (0x0A)
9722 ^^I2C7.PMI5.SET (One, 0x6E, 0xC6, 0x1F)
9723 Sleep (0x0A)
9724 }
9725 }
9726
9727 SDVL = One
9728 Return (0x03)
9729 }
9730
9731 If ((Arg2 == 0x04))
9732 {
9733 ADBG ("DSM 3p3")
9734 If ((^^I2C7.AVBL == One))
9735 {
9736 If ((PMID == One))
9737 {
9738 BUFF = ^^I2C7.DL02 /* \_SB_.PCI0.I2C7.DL02 */
9739 DATA &= 0xFE
9740 ^^I2C7.DL02 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9741 Sleep (0x0A)
9742 BUFF = ^^I2C7.DL03 /* \_SB_.PCI0.I2C7.DL03 */
9743 DATA &= 0xFE
9744 ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9745 Sleep (0x32)
9746 DATA = 0x1D
9747 ^^I2C7.DL02 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9748 Sleep (0x0A)
9749 DATA = 0x1D
9750 ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9751 }
9752 ElseIf ((PMID == 0x02))
9753 {
9754 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9755 If ((STAT == Zero))
9756 {
9757 DATA &= 0xEF
9758 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9759 }
9760
9761 Sleep (0x0A)
9762 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9763 If ((STAT == Zero))
9764 {
9765 DATA &= 0xDF
9766 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9767 }
9768
9769 Sleep (0x32)
9770 BUFF = ^^I2C7.XD32 /* \_SB_.PCI0.I2C7.XD32 */
9771 If ((STAT == Zero))
9772 {
9773 DATA |= 0x1A
9774 DATA &= 0xFA
9775 ^^I2C7.XD32 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9776 }
9777
9778 BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
9779 If ((STAT == Zero))
9780 {
9781 DATA |= 0x10
9782 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9783 Sleep (0x05)
9784 DATA |= 0x20
9785 ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
9786 Sleep (0x0A)
9787 }
9788 }
9789 ElseIf ((PMID == 0x03))
9790 {
9791 Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x5F)
9792 Sleep (0x0A)
9793 Local0 &= 0xF8
9794 ^^I2C7.PMI5.SET (One, 0x6E, 0x5F, Local0)
9795 Sleep (0x0A)
9796 Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
9797 Sleep (0x0A)
9798 Local0 &= 0xF8
9799 ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
9800 Sleep (0x03E8)
9801 Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
9802 Sleep (0x0A)
9803 Local0 |= One
9804 Local0 &= 0xF9
9805 ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
9806 Sleep (0x0A)
9807 ^^I2C7.PMI5.SET (One, 0x6E, 0xC6, 0x3D)
9808 Sleep (0x0A)
9809 Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x5F)
9810 Sleep (0x0A)
9811 Local0 |= One
9812 Local0 &= 0xF9
9813 ^^I2C7.PMI5.SET (One, 0x6E, 0x5F, Local0)
9814 Sleep (0x0A)
9815 }
9816 }
9817
9818 Sleep (0x32)
9819 SDVL = Zero
9820 Return (0x04)
9821 }
9822 }
9823 Else
9824 {
9825 Return (Zero)
9826 }
9827
9828 Return (Zero)
9829 }
9830 }
9831 }
9832
9833 Device (GDM1)
9834 {
9835 Name (_HID, "INTL9C60" /* Intel Baytrail SOC DMA Controller */) // _HID: Hardware ID
9836 Name (_DDN, "Intel(R) DMA Controller #1 - INTL9C60") // _DDN: DOS Device Name
9837 Name (_UID, One) // _UID: Unique ID
9838 Name (RBUF, ResourceTemplate ()
9839 {
9840 Memory32Fixed (ReadWrite,
9841 0x00000000, // Address Base
9842 0x00004000, // Address Length
9843 _Y08)
9844 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
9845 {
9846 0x0000002A,
9847 }
9848 })
9849 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
9850 {
9851 CreateDWordField (RBUF, \_SB.PCI0.GDM1._Y08._BAS, B0BA) // _BAS: Base Address
9852 CreateDWordField (RBUF, \_SB.PCI0.GDM1._Y08._LEN, B0LN) // _LEN: Length
9853 B0BA = D10A /* \D10A */
9854 B0LN = D10L /* \D10L */
9855 Return (RBUF) /* \_SB_.PCI0.GDM1.RBUF */
9856 }
9857
9858 Method (_STA, 0, NotSerialized) // _STA: Status
9859 {
9860 If (((D10A == Zero) || (L10D == One)))
9861 {
9862 Return (Zero)
9863 }
9864
9865 If ((OSID == One))
9866 {
9867 Return (0x0F)
9868 }
9869
9870 Return (Zero)
9871 }
9872
9873 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
9874 {
9875 If ((DM1P == Zero))
9876 {
9877 Return (Zero)
9878 }
9879 Else
9880 {
9881 Return (0x03)
9882 }
9883 }
9884 }
9885
9886 Device (GDM2)
9887 {
9888 Name (_HID, "80862286") // _HID: Hardware ID
9889 Name (_CID, "80862286") // _CID: Compatible ID
9890 Name (_DDN, "Intel(R) DMA Controller #1 - 80862286") // _DDN: DOS Device Name
9891 Name (_UID, One) // _UID: Unique ID
9892 Name (RBUF, ResourceTemplate ()
9893 {
9894 Memory32Fixed (ReadWrite,
9895 0x00000000, // Address Base
9896 0x00004000, // Address Length
9897 _Y09)
9898 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
9899 {
9900 0x0000002A,
9901 }
9902 })
9903 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
9904 {
9905 CreateDWordField (RBUF, \_SB.PCI0.GDM2._Y09._BAS, B0BA) // _BAS: Base Address
9906 CreateDWordField (RBUF, \_SB.PCI0.GDM2._Y09._LEN, B0LN) // _LEN: Length
9907 B0BA = D10A /* \D10A */
9908 B0LN = D10L /* \D10L */
9909 Return (RBUF) /* \_SB_.PCI0.GDM2.RBUF */
9910 }
9911
9912 Method (_STA, 0, NotSerialized) // _STA: Status
9913 {
9914 If (((D10A == Zero) || (L10D == One)))
9915 {
9916 Return (Zero)
9917 }
9918
9919 If ((OSID != One))
9920 {
9921 Return (0x0F)
9922 }
9923
9924 Return (Zero)
9925 }
9926
9927 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
9928 {
9929 If ((DM1P == Zero))
9930 {
9931 Return (Zero)
9932 }
9933 Else
9934 {
9935 Return (0x03)
9936 }
9937 }
9938 }
9939
9940 Device (GDM3)
9941 {
9942 Name (_HID, "INTL9C60" /* Intel Baytrail SOC DMA Controller */) // _HID: Hardware ID
9943 Name (_DDN, "Intel(R) DMA Controller #2 - INTL9C60") // _DDN: DOS Device Name
9944 Name (_UID, 0x02) // _UID: Unique ID
9945 Name (RBUF, ResourceTemplate ()
9946 {
9947 Memory32Fixed (ReadWrite,
9948 0x00000000, // Address Base
9949 0x00004000, // Address Length
9950 _Y0A)
9951 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
9952 {
9953 0x0000002B,
9954 }
9955 })
9956 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
9957 {
9958 CreateDWordField (RBUF, \_SB.PCI0.GDM3._Y0A._BAS, B0BA) // _BAS: Base Address
9959 CreateDWordField (RBUF, \_SB.PCI0.GDM3._Y0A._LEN, B0LN) // _LEN: Length
9960 B0BA = D20A /* \D20A */
9961 B0LN = D20L /* \D20L */
9962 Return (RBUF) /* \_SB_.PCI0.GDM3.RBUF */
9963 }
9964
9965 Method (_STA, 0, NotSerialized) // _STA: Status
9966 {
9967 If (((D20A == Zero) || (L20D == One)))
9968 {
9969 Return (Zero)
9970 }
9971
9972 If ((OSID == One))
9973 {
9974 Return (0x0F)
9975 }
9976
9977 Return (Zero)
9978 }
9979
9980 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
9981 {
9982 If ((DM2P == Zero))
9983 {
9984 Return (Zero)
9985 }
9986 Else
9987 {
9988 Return (0x03)
9989 }
9990 }
9991 }
9992
9993 Device (GDM4)
9994 {
9995 Name (_HID, "808622C0") // _HID: Hardware ID
9996 Name (_CID, "808622C0") // _CID: Compatible ID
9997 Name (_DDN, "Intel(R) DMA Controller #2 - 808622C0") // _DDN: DOS Device Name
9998 Name (_UID, 0x02) // _UID: Unique ID
9999 Name (RBUF, ResourceTemplate ()
10000 {
10001 Memory32Fixed (ReadWrite,
10002 0x00000000, // Address Base
10003 0x00004000, // Address Length
10004 _Y0B)
10005 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
10006 {
10007 0x0000002B,
10008 }
10009 })
10010 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10011 {
10012 CreateDWordField (RBUF, \_SB.PCI0.GDM4._Y0B._BAS, B0BA) // _BAS: Base Address
10013 CreateDWordField (RBUF, \_SB.PCI0.GDM4._Y0B._LEN, B0LN) // _LEN: Length
10014 B0BA = D20A /* \D20A */
10015 B0LN = D20L /* \D20L */
10016 Return (RBUF) /* \_SB_.PCI0.GDM4.RBUF */
10017 }
10018
10019 Method (_STA, 0, NotSerialized) // _STA: Status
10020 {
10021 If (((D20A == Zero) || (L20D == One)))
10022 {
10023 Return (Zero)
10024 }
10025
10026 If ((OSID != One))
10027 {
10028 Return (0x0F)
10029 }
10030
10031 Return (Zero)
10032 }
10033
10034 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
10035 {
10036 If ((DM2P == Zero))
10037 {
10038 Return (Zero)
10039 }
10040 Else
10041 {
10042 Return (0x03)
10043 }
10044 }
10045 }
10046
10047 Device (PWM1)
10048 {
10049 Name (_HID, "80862288") // _HID: Hardware ID
10050 Name (_CID, "80862288") // _CID: Compatible ID
10051 Name (_DDN, "Intel(R) PWM Controller #1 - 80862288") // _DDN: DOS Device Name
10052 Name (_UID, One) // _UID: Unique ID
10053 Name (RBUF, ResourceTemplate ()
10054 {
10055 Memory32Fixed (ReadWrite,
10056 0x00000000, // Address Base
10057 0x00001000, // Address Length
10058 _Y0C)
10059 })
10060 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10061 {
10062 CreateDWordField (RBUF, \_SB.PCI0.PWM1._Y0C._BAS, B0BA) // _BAS: Base Address
10063 CreateDWordField (RBUF, \_SB.PCI0.PWM1._Y0C._LEN, B0LN) // _LEN: Length
10064 B0BA = P10A /* \P10A */
10065 B0LN = P10L /* \P10L */
10066 Return (RBUF) /* \_SB_.PCI0.PWM1.RBUF */
10067 }
10068
10069 Method (_STA, 0, NotSerialized) // _STA: Status
10070 {
10071 If (((P10A == Zero) || (L11D == One)))
10072 {
10073 Return (Zero)
10074 }
10075
10076 If ((OSID == One))
10077 {
10078 Return (Zero)
10079 }
10080
10081 Return (0x0F)
10082 }
10083
10084 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
10085 {
10086 PSAT |= 0x03
10087 PSAT |= Zero
10088 }
10089
10090 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
10091 {
10092 PSAT &= 0xFFFFFFFC
10093 PSAT |= Zero
10094 }
10095
10096 OperationRegion (KEYS, SystemMemory, P11A, 0x0100)
10097 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
10098 {
10099 Offset (0x84),
10100 PSAT, 32
10101 }
10102
10103 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
10104 {
10105 If ((PW1P == Zero))
10106 {
10107 Return (Zero)
10108 }
10109 Else
10110 {
10111 Return (0x03)
10112 }
10113 }
10114 }
10115
10116 Device (PWM2)
10117 {
10118 Name (_HID, "80862289") // _HID: Hardware ID
10119 Name (_CID, "80862289") // _CID: Compatible ID
10120 Name (_DDN, "Intel(R) PWM Controller #2 - 80862289") // _DDN: DOS Device Name
10121 Name (_UID, 0x02) // _UID: Unique ID
10122 Name (RBUF, ResourceTemplate ()
10123 {
10124 Memory32Fixed (ReadWrite,
10125 0x00000000, // Address Base
10126 0x00001000, // Address Length
10127 _Y0D)
10128 })
10129 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10130 {
10131 CreateDWordField (RBUF, \_SB.PCI0.PWM2._Y0D._BAS, B0BA) // _BAS: Base Address
10132 CreateDWordField (RBUF, \_SB.PCI0.PWM2._Y0D._LEN, B0LN) // _LEN: Length
10133 B0BA = P20A /* \P20A */
10134 B0LN = P20L /* \P20L */
10135 Return (RBUF) /* \_SB_.PCI0.PWM2.RBUF */
10136 }
10137
10138 Method (_STA, 0, NotSerialized) // _STA: Status
10139 {
10140 If (((P20A == Zero) || (L12D == One)))
10141 {
10142 Return (Zero)
10143 }
10144
10145 If ((((BDID == 0x08) || (BDID == 0x0A)) || (OSID == One)))
10146 {
10147 Return (Zero)
10148 }
10149
10150 Return (0x0F)
10151 }
10152
10153 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
10154 {
10155 PSAT |= 0x03
10156 PSAT |= Zero
10157 }
10158
10159 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
10160 {
10161 PSAT &= 0xFFFFFFFC
10162 PSAT |= Zero
10163 }
10164
10165 OperationRegion (KEYS, SystemMemory, P21A, 0x0100)
10166 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
10167 {
10168 Offset (0x84),
10169 PSAT, 32
10170 }
10171
10172 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
10173 {
10174 If ((PW2P == Zero))
10175 {
10176 Return (Zero)
10177 }
10178 Else
10179 {
10180 Return (0x03)
10181 }
10182 }
10183 }
10184
10185 Device (URT1)
10186 {
10187 Name (_HID, "8086228A") // _HID: Hardware ID
10188 Name (_CID, "8086228A") // _CID: Compatible ID
10189 Name (_DDN, "Intel(R) HS-UART Controller #1 - 8086228A") // _DDN: DOS Device Name
10190 Name (_UID, One) // _UID: Unique ID
10191 Name (_DEP, Package (0x01) // _DEP: Dependencies
10192 {
10193 PEPD
10194 })
10195 Name (RBUF, ResourceTemplate ()
10196 {
10197 Memory32Fixed (ReadWrite,
10198 0x00000000, // Address Base
10199 0x00001000, // Address Length
10200 _Y0E)
10201 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
10202 {
10203 0x00000027,
10204 }
10205 FixedDMA (0x0002, 0x0002, Width32bit, )
10206 FixedDMA (0x0003, 0x0003, Width32bit, )
10207 })
10208 Name (ABUF, ResourceTemplate ()
10209 {
10210 Memory32Fixed (ReadWrite,
10211 0x00000000, // Address Base
10212 0x00001000, // Address Length
10213 _Y0F)
10214 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
10215 {
10216 0x00000027,
10217 }
10218 FixedDMA (0x0002, 0x0002, Width32bit, )
10219 FixedDMA (0x0003, 0x0003, Width32bit, )
10220 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10221 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10222 )
10223 { // Pin list
10224 0x0010
10225 }
10226 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10227 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10228 )
10229 { // Pin list
10230 0x0014
10231 }
10232 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10233 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10234 )
10235 { // Pin list
10236 0x000F
10237 }
10238 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10239 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10240 )
10241 { // Pin list
10242 0x0012
10243 }
10244 })
10245 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10246 {
10247 If ((OSID == One))
10248 {
10249 CreateDWordField (RBUF, \_SB.PCI0.URT1._Y0E._BAS, B0BA) // _BAS: Base Address
10250 CreateDWordField (RBUF, \_SB.PCI0.URT1._Y0E._LEN, B0LN) // _LEN: Length
10251 B0BA = U10A /* \U10A */
10252 B0LN = U10L /* \U10L */
10253 Return (RBUF) /* \_SB_.PCI0.URT1.RBUF */
10254 }
10255 Else
10256 {
10257 CreateDWordField (ABUF, \_SB.PCI0.URT1._Y0F._BAS, ABBA) // _BAS: Base Address
10258 CreateDWordField (ABUF, \_SB.PCI0.URT1._Y0F._LEN, ABLN) // _LEN: Length
10259 ABBA = U10A /* \U10A */
10260 ABLN = U10L /* \U10L */
10261 Return (ABUF) /* \_SB_.PCI0.URT1.ABUF */
10262 }
10263 }
10264
10265 Method (_STA, 0, NotSerialized) // _STA: Status
10266 {
10267 If (((U10A == Zero) || (L13D == One)))
10268 {
10269 Return (Zero)
10270 }
10271
10272 Return (0x0F)
10273 }
10274
10275 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
10276 {
10277 PSAT |= 0x03
10278 PSAT |= Zero
10279 }
10280
10281 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
10282 {
10283 PSAT &= 0xFFFFFFFC
10284 PSAT |= Zero
10285 }
10286
10287 OperationRegion (KEYS, SystemMemory, U11A, 0x0100)
10288 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
10289 {
10290 Offset (0x84),
10291 PSAT, 32
10292 }
10293
10294 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
10295 {
10296 If ((UR1P == Zero))
10297 {
10298 Return (Zero)
10299 }
10300 Else
10301 {
10302 Return (0x03)
10303 }
10304 }
10305
10306 Device (BTH0)
10307 {
10308 Name (_HID, "BCM2E1A") // _HID: Hardware ID
10309 Method (_STA, 0, NotSerialized) // _STA: Status
10310 {
10311 If (((OSID == 0x04) && (BTHM == One)))
10312 {
10313 If (((BDID == 0x03) || (BDID == 0x08)))
10314 {
10315 Return (0x0F)
10316 }
10317 }
10318
10319 Return (Zero)
10320 }
10321
10322 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10323 {
10324 Name (UBUF, ResourceTemplate ()
10325 {
10326 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
10327 0xFC, LittleEndian, ParityTypeNone, FlowControlNone,
10328 0x0020, 0x0020, "\\_SB.PCIO.URT1",
10329 0x00, ResourceConsumer, , Exclusive,
10330 )
10331 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10332 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10333 )
10334 { // Pin list
10335 0x0001
10336 }
10337 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10338 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10339 )
10340 { // Pin list
10341 0x0003
10342 }
10343 GpioInt (Level, ActiveHigh, Exclusive, PullNone, 0x0000,
10344 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10345 )
10346 { // Pin list
10347 0x004C
10348 }
10349 })
10350 Return (UBUF) /* \_SB_.PCI0.URT1.BTH0._CRS.UBUF */
10351 }
10352 }
10353
10354 Device (BTH1)
10355 {
10356 Name (_HID, "BCM2E3A") // _HID: Hardware ID
10357 Method (_STA, 0, NotSerialized) // _STA: Status
10358 {
10359 If ((BDID == One))
10360 {
10361 Return (Zero)
10362 }
10363
10364 If (((BTHM == One) && (BTHS == One)))
10365 {
10366 Return (0x0F)
10367 }
10368
10369 Return (Zero)
10370 }
10371
10372 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10373 {
10374 Name (BBUF, ResourceTemplate ()
10375 {
10376 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
10377 0xFC, LittleEndian, ParityTypeNone, FlowControlNone,
10378 0x0020, 0x0020, "\\_SB.PCI0.URT1",
10379 0x00, ResourceConsumer, , Exclusive,
10380 )
10381 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
10382 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10383 )
10384 { // Pin list
10385 0x004C
10386 }
10387 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10388 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10389 )
10390 { // Pin list
10391 0x0001
10392 }
10393 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10394 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10395 )
10396 { // Pin list
10397 0x0003
10398 }
10399 })
10400 Return (BBUF) /* \_SB_.PCI0.URT1.BTH1._CRS.BBUF */
10401 }
10402 }
10403
10404 Device (BTH2)
10405 {
10406 Name (_HID, "BCM2E64") // _HID: Hardware ID
10407 Method (_STA, 0, NotSerialized) // _STA: Status
10408 {
10409 Return (Zero)
10410 }
10411
10412 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10413 {
10414 Name (BBUF, ResourceTemplate ()
10415 {
10416 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
10417 0xFC, LittleEndian, ParityTypeNone, FlowControlNone,
10418 0x0020, 0x0020, "\\_SB.PCI0.URT1",
10419 0x00, ResourceConsumer, , Exclusive,
10420 )
10421 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
10422 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10423 )
10424 { // Pin list
10425 0x004C
10426 }
10427 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10428 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10429 )
10430 { // Pin list
10431 0x0001
10432 }
10433 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10434 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10435 )
10436 { // Pin list
10437 0x0003
10438 }
10439 })
10440 Return (BBUF) /* \_SB_.PCI0.URT1.BTH2._CRS.BBUF */
10441 }
10442 }
10443
10444 Device (BTH4)
10445 {
10446 Name (_HID, "BCM2E7B") // _HID: Hardware ID
10447 Method (_STA, 0, NotSerialized) // _STA: Status
10448 {
10449 If (((BTHM == 0x02) || (BDID == One)))
10450 {
10451 Return (Zero)
10452 }
10453
10454 If (((BDID == 0x09) || (BDID == 0x0A)))
10455 {
10456 Return (Zero)
10457 }
10458
10459 If (((BTHM == One) && (BTHS == 0x04)))
10460 {
10461 Return (0x0F)
10462 }
10463
10464 Return (Zero)
10465 }
10466
10467 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10468 {
10469 Name (BBUF, ResourceTemplate ()
10470 {
10471 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
10472 0xFC, LittleEndian, ParityTypeNone, FlowControlNone,
10473 0x0020, 0x0020, "\\_SB.PCI0.URT1",
10474 0x00, ResourceConsumer, , Exclusive,
10475 )
10476 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
10477 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10478 )
10479 { // Pin list
10480 0x004C
10481 }
10482 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10483 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10484 )
10485 { // Pin list
10486 0x0001
10487 }
10488 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10489 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10490 )
10491 { // Pin list
10492 0x0003
10493 }
10494 })
10495 Return (BBUF) /* \_SB_.PCI0.URT1.BTH4._CRS.BBUF */
10496 }
10497 }
10498
10499 Device (BTH5)
10500 {
10501 Name (_HID, "INT33E1") // _HID: Hardware ID
10502 Name (UART, Zero)
10503 Name (_S0W, 0x02) // _S0W: S0 Device Wake State
10504 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10505 {
10506 Name (UBUF, ResourceTemplate ()
10507 {
10508 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
10509 0xFC, LittleEndian, ParityTypeNone, FlowControlHardware,
10510 0x0020, 0x0020, "\\_SB.PCI0.URT1",
10511 0x00, ResourceConsumer, , Exclusive,
10512 )
10513 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
10514 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10515 )
10516 { // Pin list
10517 0x004C
10518 }
10519 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10520 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10521 )
10522 { // Pin list
10523 0x0003
10524 }
10525 })
10526 Return (UBUF) /* \_SB_.PCI0.URT1.BTH5._CRS.UBUF */
10527 }
10528
10529 Method (_STA, 0, NotSerialized) // _STA: Status
10530 {
10531 If (((BTHM == 0x02) || (BDID == One)))
10532 {
10533 Return (Zero)
10534 }
10535
10536 If (((BTHM == 0x03) || ((BDID == 0x09) || (BDID == 0x0A))))
10537 {
10538 Return (0x0F)
10539 }
10540
10541 Return (Zero)
10542 }
10543 }
10544 }
10545
10546 Device (URT2)
10547 {
10548 Name (_HID, "8086228A") // _HID: Hardware ID
10549 Name (_CID, "8086228A") // _CID: Compatible ID
10550 Name (_DDN, "Intel(R) HS-UART Controller #2 - 8086228C") // _DDN: DOS Device Name
10551 Name (_UID, 0x02) // _UID: Unique ID
10552 Name (_DEP, Package (0x01) // _DEP: Dependencies
10553 {
10554 PEPD
10555 })
10556 Name (RBUF, ResourceTemplate ()
10557 {
10558 Memory32Fixed (ReadWrite,
10559 0x00000000, // Address Base
10560 0x00001000, // Address Length
10561 _Y10)
10562 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
10563 {
10564 0x00000028,
10565 }
10566 FixedDMA (0x0004, 0x0004, Width32bit, )
10567 FixedDMA (0x0005, 0x0005, Width32bit, )
10568 })
10569 Name (ABUF, ResourceTemplate ()
10570 {
10571 Memory32Fixed (ReadWrite,
10572 0x00000000, // Address Base
10573 0x00001000, // Address Length
10574 _Y11)
10575 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
10576 {
10577 0x00000028,
10578 }
10579 FixedDMA (0x0004, 0x0004, Width32bit, )
10580 FixedDMA (0x0005, 0x0005, Width32bit, )
10581 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10582 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10583 )
10584 { // Pin list
10585 0x0011
10586 }
10587 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10588 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10589 )
10590 { // Pin list
10591 0x0015
10592 }
10593 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10594 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10595 )
10596 { // Pin list
10597 0x0013
10598 }
10599 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10600 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10601 )
10602 { // Pin list
10603 0x0016
10604 }
10605 })
10606 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10607 {
10608 If ((OSID == One))
10609 {
10610 CreateDWordField (RBUF, \_SB.PCI0.URT2._Y10._BAS, B0BA) // _BAS: Base Address
10611 CreateDWordField (RBUF, \_SB.PCI0.URT2._Y10._LEN, B0LN) // _LEN: Length
10612 B0BA = U20A /* \U20A */
10613 B0LN = U20L /* \U20L */
10614 Return (RBUF) /* \_SB_.PCI0.URT2.RBUF */
10615 }
10616 Else
10617 {
10618 CreateDWordField (ABUF, \_SB.PCI0.URT2._Y11._BAS, ABBA) // _BAS: Base Address
10619 CreateDWordField (ABUF, \_SB.PCI0.URT2._Y11._LEN, ABLN) // _LEN: Length
10620 ABBA = U20A /* \U20A */
10621 ABLN = U20L /* \U20L */
10622 Return (ABUF) /* \_SB_.PCI0.URT2.ABUF */
10623 }
10624 }
10625
10626 Method (_STA, 0, NotSerialized) // _STA: Status
10627 {
10628 If (((U20A == Zero) || (L14D == One)))
10629 {
10630 Return (Zero)
10631 }
10632
10633 Return (0x0F)
10634 }
10635
10636 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
10637 {
10638 PSAT |= 0x03
10639 PSAT |= Zero
10640 }
10641
10642 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
10643 {
10644 PSAT &= 0xFFFFFFFC
10645 PSAT |= Zero
10646 If ((^^^GPO1.AMMR == One))
10647 {
10648 ^^^GPO1.GPSC = Zero
10649 ^^^GPO1.GPSE = Zero
10650 }
10651 }
10652
10653 OperationRegion (KEYS, SystemMemory, U21A, 0x0100)
10654 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
10655 {
10656 Offset (0x84),
10657 PSAT, 32
10658 }
10659
10660 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
10661 {
10662 If ((UR2P == Zero))
10663 {
10664 Return (Zero)
10665 }
10666 Else
10667 {
10668 Return (0x03)
10669 }
10670 }
10671
10672 Device (GPS0)
10673 {
10674 Name (_HID, "BCM47521") // _HID: Hardware ID
10675 Name (ZHID, "INT33A2")
10676 Name (_HRV, Zero) // _HRV: Hardware Revision
10677 Name (UART, One)
10678 Name (ENAB, One)
10679 Name (HSTW, Zero)
10680 Method (_STA, 0, NotSerialized) // _STA: Status
10681 {
10682 Return (Zero)
10683 }
10684
10685 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10686 {
10687 Name (UBUF, ResourceTemplate ()
10688 {
10689 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
10690 0xFC, LittleEndian, ParityTypeNone, FlowControlHardware,
10691 0x0020, 0x0020, "\\_SB.PCI0.URT2",
10692 0x00, ResourceConsumer, , Exclusive,
10693 )
10694 GpioInt (Level, ActiveHigh, Exclusive, PullNone, 0x0000,
10695 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10696 )
10697 { // Pin list
10698 0x004B
10699 }
10700 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10701 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10702 )
10703 { // Pin list
10704 0x0018
10705 }
10706 })
10707 Return (UBUF) /* \_SB_.PCI0.URT2.GPS0._CRS.UBUF */
10708 }
10709 }
10710
10711 Device (GPS1)
10712 {
10713 Name (_HID, "FUJ4752") // _HID: Hardware ID
10714 Name (_HRV, Zero) // _HRV: Hardware Revision
10715 Method (_STA, 0, NotSerialized) // _STA: Status
10716 {
10717 If ((GPSD == Zero))
10718 {
10719 Return (Zero)
10720 }
10721 Else
10722 {
10723 Return (0x0F)
10724 }
10725 }
10726
10727 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10728 {
10729 Name (BBUF, ResourceTemplate ()
10730 {
10731 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
10732 0xFC, LittleEndian, ParityTypeNone, FlowControlHardware,
10733 0x0020, 0x0020, "\\_SB.PCI0.URT2",
10734 0x00, ResourceConsumer, , Exclusive,
10735 )
10736 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10737 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10738 )
10739 { // Pin list
10740 0x0018
10741 }
10742 })
10743 Return (BBUF) /* \_SB_.PCI0.URT2.GPS1._CRS.BBUF */
10744 }
10745 }
10746
10747 Device (GPS2)
10748 {
10749 Name (_HID, "INT33A2") // _HID: Hardware ID
10750 Name (_HRV, Zero) // _HRV: Hardware Revision
10751 Name (UART, One)
10752 Name (ENAB, One)
10753 Name (HSTW, Zero)
10754 Method (_STA, 0, NotSerialized) // _STA: Status
10755 {
10756 If ((BDID == One))
10757 {
10758 Return (Zero)
10759 }
10760
10761 If ((MODM == Zero))
10762 {
10763 Return (Zero)
10764 }
10765
10766 If (((BDID == 0x09) || (BDID == 0x0A)))
10767 {
10768 Return (0x0F)
10769 }
10770
10771 Return (Zero)
10772 }
10773
10774 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10775 {
10776 Name (ABUF, ResourceTemplate ()
10777 {
10778 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
10779 0xFC, LittleEndian, ParityTypeNone, FlowControlHardware,
10780 0x0020, 0x0020, "\\_SB.PCI0.URT2",
10781 0x00, ResourceConsumer, , Exclusive,
10782 )
10783 GpioInt (Level, ActiveHigh, Exclusive, PullNone, 0x0000,
10784 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10785 )
10786 { // Pin list
10787 0x004B
10788 }
10789 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10790 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10791 )
10792 { // Pin list
10793 0x0018
10794 }
10795 })
10796 Name (WBUF, ResourceTemplate ()
10797 {
10798 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
10799 0xFC, LittleEndian, ParityTypeNone, FlowControlHardware,
10800 0x0020, 0x0020, "\\_SB.PCI0.URT2",
10801 0x00, ResourceConsumer, , Exclusive,
10802 )
10803 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10804 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10805 )
10806 { // Pin list
10807 0x0018
10808 }
10809 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
10810 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10811 )
10812 { // Pin list
10813 0x004B
10814 }
10815 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
10816 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
10817 )
10818 { // Pin list
10819 0x004B
10820 }
10821 })
10822 If ((OSID == One))
10823 {
10824 Return (WBUF) /* \_SB_.PCI0.URT2.GPS2._CRS.WBUF */
10825 }
10826
10827 Return (ABUF) /* \_SB_.PCI0.URT2.GPS2._CRS.ABUF */
10828 }
10829 }
10830 }
10831
10832 Device (SPI1)
10833 {
10834 Name (_HID, "8086228E") // _HID: Hardware ID
10835 Name (_CID, "8086228E") // _CID: Compatible ID
10836 Name (_DEP, Package (0x01) // _DEP: Dependencies
10837 {
10838 PEPD
10839 })
10840 Name (_DDN, "Intel(R) SPI Controller #1 - 8086228E") // _DDN: DOS Device Name
10841 Name (_UID, One) // _UID: Unique ID
10842 Name (RBUF, ResourceTemplate ()
10843 {
10844 Memory32Fixed (ReadWrite,
10845 0x00000000, // Address Base
10846 0x00001000, // Address Length
10847 _Y12)
10848 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
10849 {
10850 0x00000029,
10851 }
10852 FixedDMA (0x0000, 0x0000, Width32bit, )
10853 FixedDMA (0x0001, 0x0001, Width32bit, )
10854 })
10855 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10856 {
10857 CreateDWordField (RBUF, \_SB.PCI0.SPI1._Y12._BAS, B0BA) // _BAS: Base Address
10858 CreateDWordField (RBUF, \_SB.PCI0.SPI1._Y12._LEN, B0LN) // _LEN: Length
10859 B0BA = SP0A /* \SP0A */
10860 B0LN = SP0L /* \SP0L */
10861 Return (RBUF) /* \_SB_.PCI0.SPI1.RBUF */
10862 }
10863
10864 Method (_STA, 0, NotSerialized) // _STA: Status
10865 {
10866 If (((SP0A == Zero) || (L15D == One)))
10867 {
10868 Return (Zero)
10869 }
10870
10871 Return (0x0F)
10872 }
10873
10874 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
10875 {
10876 PSAT |= 0x03
10877 PSAT |= Zero
10878 }
10879
10880 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
10881 {
10882 PSAT &= 0xFFFFFFFC
10883 PSAT |= Zero
10884 }
10885
10886 OperationRegion (KEYS, SystemMemory, SP1A, 0x0100)
10887 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
10888 {
10889 Offset (0x84),
10890 PSAT, 32
10891 }
10892
10893 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
10894 {
10895 If ((SP1P == Zero))
10896 {
10897 Return (Zero)
10898 }
10899 Else
10900 {
10901 Return (0x03)
10902 }
10903 }
10904
10905 Device (FPNT)
10906 {
10907 Name (_ADR, Zero) // _ADR: Address
10908 Name (_HID, "VFSI6101") // _HID: Hardware ID
10909 Name (_DDN, "Validity Fingerprint Sensor VFS6101") // _DDN: DOS Device Name
10910 Name (_UID, One) // _UID: Unique ID
10911 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10912 {
10913 Name (UBUF, ResourceTemplate ()
10914 {
10915 SpiSerialBusV2 (0x0001, PolarityLow, FourWireMode, 0x08,
10916 ControllerInitiated, 0x007A1200, ClockPolarityLow,
10917 ClockPhaseFirst, "\\_SB.PCI0.SPI1",
10918 0x00, ResourceConsumer, , Exclusive,
10919 )
10920 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
10921 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
10922 )
10923 { // Pin list
10924 0x0017
10925 }
10926 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionNone,
10927 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10928 )
10929 { // Pin list
10930 0x0013
10931 }
10932 GpioInt (Edge, ActiveLow, Exclusive, PullNone, 0x0000,
10933 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
10934 )
10935 { // Pin list
10936 0x0013
10937 }
10938 })
10939 Return (UBUF) /* \_SB_.PCI0.SPI1.FPNT._CRS.UBUF */
10940 }
10941
10942 Method (_STA, 0, NotSerialized) // _STA: Status
10943 {
10944 Return (Zero)
10945 }
10946 }
10947 }
10948
10949 Device (SPI2)
10950 {
10951 Name (_HID, "8086228E") // _HID: Hardware ID
10952 Name (_CID, "8086228E") // _CID: Compatible ID
10953 Name (_DDN, "Intel(R) SPI Controller #2 - 80862290") // _DDN: DOS Device Name
10954 Name (_UID, 0x02) // _UID: Unique ID
10955 Name (RBUF, ResourceTemplate ()
10956 {
10957 Memory32Fixed (ReadWrite,
10958 0x00000000, // Address Base
10959 0x00001000, // Address Length
10960 _Y13)
10961 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
10962 {
10963 0x00000059,
10964 }
10965 FixedDMA (0x0006, 0x0006, Width32bit, )
10966 FixedDMA (0x0007, 0x0007, Width32bit, )
10967 })
10968 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
10969 {
10970 CreateDWordField (RBUF, \_SB.PCI0.SPI2._Y13._BAS, B0BA) // _BAS: Base Address
10971 CreateDWordField (RBUF, \_SB.PCI0.SPI2._Y13._LEN, B0LN) // _LEN: Length
10972 B0BA = S20A /* \S20A */
10973 B0LN = S20L /* \S20L */
10974 Return (RBUF) /* \_SB_.PCI0.SPI2.RBUF */
10975 }
10976
10977 Method (_STA, 0, NotSerialized) // _STA: Status
10978 {
10979 If (((S20A == Zero) || (L16D == One)))
10980 {
10981 Return (Zero)
10982 }
10983
10984 Return (0x0F)
10985 }
10986
10987 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
10988 {
10989 PSAT |= 0x03
10990 PSAT |= Zero
10991 }
10992
10993 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
10994 {
10995 PSAT &= 0xFFFFFFFC
10996 PSAT |= Zero
10997 }
10998
10999 OperationRegion (KEYS, SystemMemory, S21A, 0x0100)
11000 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
11001 {
11002 Offset (0x84),
11003 PSAT, 32
11004 }
11005
11006 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
11007 {
11008 If ((SP2P == Zero))
11009 {
11010 Return (Zero)
11011 }
11012 Else
11013 {
11014 Return (0x03)
11015 }
11016 }
11017 }
11018
11019 Device (SPI3)
11020 {
11021 Name (_HID, "8086228E") // _HID: Hardware ID
11022 Name (_CID, "8086228E") // _CID: Compatible ID
11023 Name (_DDN, "Intel(R) SPI Controller #3 - 808622AC") // _DDN: DOS Device Name
11024 Name (_UID, 0x03) // _UID: Unique ID
11025 Name (RBUF, ResourceTemplate ()
11026 {
11027 Memory32Fixed (ReadWrite,
11028 0x00000000, // Address Base
11029 0x00001000, // Address Length
11030 _Y14)
11031 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
11032 {
11033 0x0000005A,
11034 }
11035 FixedDMA (0x0008, 0x0008, Width32bit, )
11036 FixedDMA (0x0009, 0x0009, Width32bit, )
11037 })
11038 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
11039 {
11040 CreateDWordField (RBUF, \_SB.PCI0.SPI3._Y14._BAS, B0BA) // _BAS: Base Address
11041 CreateDWordField (RBUF, \_SB.PCI0.SPI3._Y14._LEN, B0LN) // _LEN: Length
11042 B0BA = S30A /* \S30A */
11043 B0LN = S30L /* \S30L */
11044 Return (RBUF) /* \_SB_.PCI0.SPI3.RBUF */
11045 }
11046
11047 Method (_STA, 0, NotSerialized) // _STA: Status
11048 {
11049 If (((S30A == Zero) || (L16D == One)))
11050 {
11051 Return (Zero)
11052 }
11053
11054 Return (0x0F)
11055 }
11056
11057 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
11058 {
11059 PSAT |= 0x03
11060 PSAT |= Zero
11061 }
11062
11063 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
11064 {
11065 PSAT &= 0xFFFFFFFC
11066 PSAT |= Zero
11067 }
11068
11069 OperationRegion (KEYS, SystemMemory, S31A, 0x0100)
11070 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
11071 {
11072 Offset (0x84),
11073 PSAT, 32
11074 }
11075
11076 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
11077 {
11078 If ((SP3P == Zero))
11079 {
11080 Return (Zero)
11081 }
11082 Else
11083 {
11084 Return (0x03)
11085 }
11086 }
11087 }
11088
11089 Device (I2C1)
11090 {
11091 Name (_HID, "808622C1") // _HID: Hardware ID
11092 Name (_CID, "808622C1") // _CID: Compatible ID
11093 Name (_DEP, Package (0x01) // _DEP: Dependencies
11094 {
11095 PEPD
11096 })
11097 Name (_DDN, "Intel(R) I2C Controller #1 - 808622C1") // _DDN: DOS Device Name
11098 Name (_UID, One) // _UID: Unique ID
11099 Name (RBUF, ResourceTemplate ()
11100 {
11101 Memory32Fixed (ReadWrite,
11102 0x00000000, // Address Base
11103 0x00001000, // Address Length
11104 _Y15)
11105 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
11106 {
11107 0x00000020,
11108 }
11109 FixedDMA (0x0010, 0x0000, Width32bit, )
11110 FixedDMA (0x0011, 0x0001, Width32bit, )
11111 })
11112 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
11113 {
11114 CreateDWordField (RBUF, \_SB.PCI0.I2C1._Y15._BAS, B0BA) // _BAS: Base Address
11115 CreateDWordField (RBUF, \_SB.PCI0.I2C1._Y15._LEN, B0LN) // _LEN: Length
11116 B0BA = I10A /* \I10A */
11117 B0LN = I10L /* \I10L */
11118 Return (RBUF) /* \_SB_.PCI0.I2C1.RBUF */
11119 }
11120
11121 Method (_STA, 0, NotSerialized) // _STA: Status
11122 {
11123 If (((I10A == Zero) || (L21D == One)))
11124 {
11125 Return (Zero)
11126 }
11127
11128 Return (0x0F)
11129 }
11130
11131 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
11132 {
11133 PSAT |= 0x03
11134 PSAT |= Zero
11135 }
11136
11137 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
11138 {
11139 PSAT &= 0xFFFFFFFC
11140 PSAT |= Zero
11141 }
11142
11143 OperationRegion (KEYS, SystemMemory, I11A, 0x0100)
11144 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
11145 {
11146 Offset (0x84),
11147 PSAT, 32
11148 }
11149
11150 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
11151 {
11152 If ((IC1P == Zero))
11153 {
11154 Return (Zero)
11155 }
11156 Else
11157 {
11158 Return (0x03)
11159 }
11160 }
11161
11162 OperationRegion (LAVR, GenericSerialBus, Zero, 0xD2)
11163 Field (LAVR, BufferAcc, NoLock, Preserve)
11164 {
11165 Connection (
11166 I2cSerialBusV2 (0x0033, ControllerInitiated, 0x000186A0,
11167 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
11168 0x00, ResourceConsumer, , Exclusive,
11169 )
11170 ),
11171 Offset (0x74),
11172 AccessAs (BufferAcc, AttribBytes (0x02)),
11173 LFVN, 8,
11174 AccessAs (BufferAcc, AttribBytes (0x02)),
11175 LFVS, 8,
11176 AccessAs (BufferAcc, AttribBytes (0x02)),
11177 SFVN, 8,
11178 AccessAs (BufferAcc, AttribBytes (0x02)),
11179 SFVS, 8,
11180 Offset (0x8F),
11181 AccessAs (BufferAcc, AttribBytes (0x02)),
11182 LFRY, 8,
11183 AccessAs (BufferAcc, AttribBytes (0x02)),
11184 LFRD, 8,
11185 AccessAs (BufferAcc, AttribBytes (0x02)),
11186 SFRY, 8,
11187 AccessAs (BufferAcc, AttribBytes (0x02)),
11188 SFRD, 8,
11189 Offset (0xA6),
11190 AccessAs (BufferAcc, AttribBytes (0x02)),
11191 C2FV, 8,
11192 AccessAs (BufferAcc, AttribBytes (0x02)),
11193 CC2F, 8,
11194 Offset (0xB4),
11195 AccessAs (BufferAcc, AttribBytes (0x02)),
11196 S2FV, 8,
11197 AccessAs (BufferAcc, AttribBytes (0x02)),
11198 S2FS, 8,
11199 Offset (0xB8),
11200 AccessAs (BufferAcc, AttribBytes (0x02)),
11201 S2RY, 8,
11202 AccessAs (BufferAcc, AttribBytes (0x02)),
11203 S2RD, 8,
11204 Offset (0xC6),
11205 AccessAs (BufferAcc, AttribBytes (0x02)),
11206 WCTB, 8,
11207 Offset (0xCA),
11208 AccessAs (BufferAcc, AttribBytes (0x02)),
11209 SNP1, 8,
11210 AccessAs (BufferAcc, AttribBytes (0x02)),
11211 SNP2, 8,
11212 AccessAs (BufferAcc, AttribBytes (0x02)),
11213 SNP3, 8,
11214 AccessAs (BufferAcc, AttribBytes (0x02)),
11215 SNP4, 8,
11216 AccessAs (BufferAcc, AttribBytes (0x02)),
11217 SNP5, 8,
11218 AccessAs (BufferAcc, AttribBytes (0x02)),
11219 SNP6, 8
11220 }
11221
11222 Device (STRA)
11223 {
11224 Name (_ADR, Zero) // _ADR: Address
11225 Name (_HID, "INTCF1C") // _HID: Hardware ID
11226 Name (_CID, "INTCF1C") // _CID: Compatible ID
11227 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
11228 Name (_DDN, "Flash LM3554") // _DDN: DOS Device Name
11229 Name (_UID, One) // _UID: Unique ID
11230 Method (_STA, 0, NotSerialized) // _STA: Status
11231 {
11232 If ((OCME == One))
11233 {
11234 Return (0x0F)
11235 }
11236 Else
11237 {
11238 Return (Zero)
11239 }
11240 }
11241
11242 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
11243 {
11244 Name (SBUF, ResourceTemplate ()
11245 {
11246 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
11247 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
11248 )
11249 { // Pin list
11250 0x0038
11251 }
11252 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
11253 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
11254 )
11255 { // Pin list
11256 0x002D
11257 }
11258 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
11259 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
11260 )
11261 { // Pin list
11262 0x0035
11263 }
11264 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
11265 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
11266 )
11267 { // Pin list
11268 0x002E
11269 }
11270 I2cSerialBusV2 (0x0053, ControllerInitiated, 0x00061A80,
11271 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
11272 0x00, ResourceConsumer, , Exclusive,
11273 )
11274 })
11275 Return (SBUF) /* \_SB_.PCI0.I2C1.STRA._CRS.SBUF */
11276 }
11277
11278 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
11279 {
11280 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
11281 {
11282 Return ("INTCF1C")
11283 }
11284
11285 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
11286 {
11287 Return ("LM3554")
11288 }
11289
11290 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
11291 {
11292 Return ("CHV_ITL_RVP")
11293 }
11294
11295 If ((Arg0 == ToUUID ("5e95d048-b1de-4590-947d-cc699940cee4")))
11296 {
11297 Return (0x08)
11298 }
11299
11300 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
11301 {
11302 Return (Zero)
11303 }
11304
11305 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
11306 {
11307 If ((Arg2 == One))
11308 {
11309 Return (One)
11310 }
11311
11312 If ((Arg2 == 0x02))
11313 {
11314 Return (0x04005300)
11315 }
11316 }
11317
11318 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
11319 {
11320 If ((Arg2 == One))
11321 {
11322 Return (0x04)
11323 }
11324
11325 If ((Arg2 == 0x02))
11326 {
11327 Return (0x01003802)
11328 }
11329
11330 If ((Arg2 == 0x03))
11331 {
11332 Return (0x01002D03)
11333 }
11334
11335 If ((Arg2 == 0x04))
11336 {
11337 Return (0x01003501)
11338 }
11339
11340 If ((Arg2 == 0x05))
11341 {
11342 Return (0x01002E04)
11343 }
11344 }
11345
11346 Return (Zero)
11347 }
11348 }
11349 }
11350
11351 Device (I2C2)
11352 {
11353 Name (_HID, "808622C1") // _HID: Hardware ID
11354 Name (_CID, "808622C1") // _CID: Compatible ID
11355 Name (_DEP, Package (0x01) // _DEP: Dependencies
11356 {
11357 PEPD
11358 })
11359 Name (_DDN, "Intel(R) I2C Controller #2 - 808622C2") // _DDN: DOS Device Name
11360 Name (_UID, 0x02) // _UID: Unique ID
11361 Name (RBUF, ResourceTemplate ()
11362 {
11363 Memory32Fixed (ReadWrite,
11364 0x00000000, // Address Base
11365 0x00001000, // Address Length
11366 _Y16)
11367 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
11368 {
11369 0x00000021,
11370 }
11371 FixedDMA (0x0012, 0x0002, Width32bit, )
11372 FixedDMA (0x0013, 0x0003, Width32bit, )
11373 })
11374 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
11375 {
11376 CreateDWordField (RBUF, \_SB.PCI0.I2C2._Y16._BAS, B0BA) // _BAS: Base Address
11377 CreateDWordField (RBUF, \_SB.PCI0.I2C2._Y16._LEN, B0LN) // _LEN: Length
11378 B0BA = I20A /* \I20A */
11379 B0LN = I20L /* \I20L */
11380 Return (RBUF) /* \_SB_.PCI0.I2C2.RBUF */
11381 }
11382
11383 Method (_STA, 0, NotSerialized) // _STA: Status
11384 {
11385 If (((I20A == Zero) || (L22D == One)))
11386 {
11387 Return (Zero)
11388 }
11389
11390 Return (0x0F)
11391 }
11392
11393 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
11394 {
11395 PSAT |= 0x03
11396 PSAT |= Zero
11397 }
11398
11399 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
11400 {
11401 PSAT &= 0xFFFFFFFC
11402 PSAT |= Zero
11403 }
11404
11405 OperationRegion (KEYS, SystemMemory, I21A, 0x0100)
11406 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
11407 {
11408 Offset (0x84),
11409 PSAT, 32
11410 }
11411
11412 PowerResource (CLK0, 0x00, 0x0000)
11413 {
11414 Method (_STA, 0, NotSerialized) // _STA: Status
11415 {
11416 Return (CKC0) /* \CKC0 */
11417 }
11418
11419 Method (_ON, 0, NotSerialized) // _ON_: Power On
11420 {
11421 CKC0 = One
11422 Sleep (0x05)
11423 }
11424
11425 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
11426 {
11427 CKC0 = 0x02
11428 }
11429 }
11430
11431 PowerResource (CLK1, 0x00, 0x0000)
11432 {
11433 Method (_STA, 0, NotSerialized) // _STA: Status
11434 {
11435 Return (CKC1) /* \CKC1 */
11436 }
11437
11438 Method (_ON, 0, NotSerialized) // _ON_: Power On
11439 {
11440 CKC1 = One
11441 Sleep (0x05)
11442 }
11443
11444 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
11445 {
11446 CKC1 = 0x02
11447 }
11448 }
11449
11450 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
11451 {
11452 If ((IC2P == Zero))
11453 {
11454 Return (Zero)
11455 }
11456 Else
11457 {
11458 Return (0x03)
11459 }
11460 }
11461
11462 PowerResource (CLK3, 0x00, 0x0000)
11463 {
11464 Method (_STA, 0, NotSerialized) // _STA: Status
11465 {
11466 Return (CKC3) /* \CKC3 */
11467 }
11468
11469 Method (_ON, 0, NotSerialized) // _ON_: Power On
11470 {
11471 CKC3 = One
11472 Sleep (0x05)
11473 }
11474
11475 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
11476 {
11477 CKC3 = 0x02
11478 }
11479 }
11480
11481 PowerResource (CLK4, 0x00, 0x0000)
11482 {
11483 Method (_STA, 0, NotSerialized) // _STA: Status
11484 {
11485 Return (CKC4) /* \CKC4 */
11486 }
11487
11488 Method (_ON, 0, NotSerialized) // _ON_: Power On
11489 {
11490 CKC4 = One
11491 Sleep (0x05)
11492 }
11493
11494 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
11495 {
11496 CKC4 = 0x02
11497 }
11498 }
11499
11500 Device (RTEK)
11501 {
11502 Name (_ADR, Zero) // _ADR: Address
11503 Name (_HID, "10EC5672") // _HID: Hardware ID
11504 Name (_CID, "10EC5672") // _CID: Compatible ID
11505 Name (_DDN, "ALC5642") // _DDN: DOS Device Name
11506 Name (_UID, One) // _UID: Unique ID
11507 Name (_SUB, "10CF0501") // _SUB: Subsystem ID
11508 Name (CHAN, Package (0x02)
11509 {
11510 One,
11511 0x0124F800
11512 })
11513 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
11514 {
11515 CLK3
11516 })
11517 Name (_DEP, Package (0x01) // _DEP: Dependencies
11518 {
11519 PEPD
11520 })
11521 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
11522 {
11523 Name (SBUF, ResourceTemplate ()
11524 {
11525 I2cSerialBusV2 (0x001C, ControllerInitiated, 0x00061A80,
11526 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
11527 0x00, ResourceConsumer, , Exclusive,
11528 )
11529 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
11530 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
11531 )
11532 { // Pin list
11533 0x005B
11534 }
11535 })
11536 Name (WBUF, ResourceTemplate ()
11537 {
11538 I2cSerialBusV2 (0x001C, ControllerInitiated, 0x00061A80,
11539 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
11540 0x00, ResourceConsumer, , Exclusive,
11541 )
11542 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
11543 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
11544 )
11545 { // Pin list
11546 0x004F
11547 }
11548 })
11549 If (((OSID == One) && ((BDID == 0x09) || (BDID == 0x0A))))
11550 {
11551 Return (WBUF) /* \_SB_.PCI0.I2C2.RTEK._CRS.WBUF */
11552 }
11553
11554 Return (SBUF) /* \_SB_.PCI0.I2C2.RTEK._CRS.SBUF */
11555 }
11556
11557 Method (_STA, 0, NotSerialized) // _STA: Status
11558 {
11559 If ((AUDE == One))
11560 {
11561 Return (0x0F)
11562 }
11563 Else
11564 {
11565 Return (Zero)
11566 }
11567 }
11568
11569 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
11570 {
11571 }
11572
11573 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
11574 {
11575 If ((Arg0 == ToUUID ("a9240c44-f032-454d-80e5-7aeed80e9551")))
11576 {
11577 CreateByteField (Arg3, Zero, FARG)
11578 Switch (Arg2)
11579 {
11580 Case (0x03)
11581 {
11582 Switch (Arg3)
11583 {
11584 Case (Zero)
11585 {
11586 Return (0x1D)
11587 }
11588 Case (0x04)
11589 {
11590 Return (Buffer (0x14)
11591 {
11592 /* 0000 */ 0x02, 0x00, 0x00, 0xCE, 0x44, 0x00, 0x01, 0x00, // ....D...
11593 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x01, 0x00, // ....#...
11594 /* 0010 */ 0x02, 0x00, 0x04, 0x00 // ....
11595 })
11596 }
11597 Case (0x02)
11598 {
11599 Return (Buffer (0x03CC)
11600 {
11601 /* 0000 */ 0x01, 0x30, 0x72, 0x56, 0x1E, 0x00, 0x01, 0x00, // .0rV....
11602 /* 0008 */ 0xA4, 0x00, 0x00, 0x00, 0x01, 0x00, 0xA5, 0x00, // ........
11603 /* 0010 */ 0x00, 0x00, 0x01, 0x00, 0xEB, 0x00, 0x79, 0x03, // ......y.
11604 /* 0018 */ 0x01, 0x00, 0xEC, 0x00, 0xA4, 0x54, 0x01, 0x00, // .....T..
11605 /* 0020 */ 0xED, 0x00, 0x3D, 0x1E, 0x01, 0x00, 0xEE, 0x00, // ..=.....
11606 /* 0028 */ 0x3F, 0x65, 0x01, 0x00, 0xE7, 0x00, 0x86, 0x1C, // ?e......
11607 /* 0030 */ 0x01, 0x00, 0xE8, 0x00, 0x5D, 0xAB, 0x01, 0x00, // ....]...
11608 /* 0038 */ 0xE9, 0x00, 0xC2, 0x01, 0x01, 0x00, 0xEA, 0x00, // ........
11609 /* 0040 */ 0xC2, 0x9A, 0x01, 0x00, 0xE5, 0x00, 0x00, 0x02, // ........
11610 /* 0048 */ 0x01, 0x00, 0xE6, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11611 /* 0050 */ 0xAE, 0x00, 0x88, 0xD5, 0x01, 0x00, 0xAF, 0x00, // ........
11612 /* 0058 */ 0x10, 0x1C, 0x01, 0x00, 0xB0, 0x00, 0x00, 0x00, // ........
11613 /* 0060 */ 0x01, 0x00, 0xB4, 0x00, 0x04, 0xE9, 0x01, 0x00, // ........
11614 /* 0068 */ 0xB5, 0x00, 0x10, 0x1C, 0x01, 0x00, 0xB6, 0x00, // ........
11615 /* 0070 */ 0x00, 0x00, 0x01, 0x00, 0xBA, 0x00, 0x00, 0x00, // ........
11616 /* 0078 */ 0x01, 0x00, 0xBB, 0x00, 0x10, 0x1C, 0x01, 0x00, // ........
11617 /* 0080 */ 0xBC, 0x00, 0x00, 0x00, 0x01, 0x00, 0xC0, 0x00, // ........
11618 /* 0088 */ 0xC4, 0x1E, 0x01, 0x00, 0xC1, 0x00, 0x00, 0x00, // ........
11619 /* 0090 */ 0x01, 0x00, 0xC4, 0x00, 0x1C, 0x1F, 0x01, 0x00, // ........
11620 /* 0098 */ 0xC5, 0x00, 0xDD, 0x00, 0x01, 0x00, 0xC6, 0x00, // ........
11621 /* 00A0 */ 0x1F, 0x1F, 0x01, 0x00, 0xCA, 0x00, 0x00, 0x08, // ........
11622 /* 00A8 */ 0x01, 0x00, 0xCC, 0x00, 0x00, 0x08, 0x00, 0x00, // ........
11623 /* 00B0 */ 0xB1, 0x00, 0xA0, 0x33, 0x00, 0x00, 0xB0, 0x00, // ...3....
11624 /* 00B8 */ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // .`......
11625 /* 00C0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11626 /* 00C8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11627 /* 00D0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11628 /* 00D8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11629 /* 00E0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11630 /* 00E8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11631 /* 00F0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, // ........
11632 /* 00F8 */ 0x01, 0x00, 0xA6, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11633 /* 0100 */ 0xA7, 0x00, 0x00, 0x00, 0x01, 0x00, 0xF5, 0x00, // ........
11634 /* 0108 */ 0x79, 0x03, 0x01, 0x00, 0xF6, 0x00, 0xA4, 0x54, // y......T
11635 /* 0110 */ 0x01, 0x00, 0xF7, 0x00, 0x3D, 0x1E, 0x01, 0x00, // ....=...
11636 /* 0118 */ 0xF8, 0x00, 0x3F, 0x65, 0x01, 0x00, 0xF1, 0x00, // ..?e....
11637 /* 0120 */ 0x86, 0x1C, 0x01, 0x00, 0xF2, 0x00, 0x5D, 0xAB, // ......].
11638 /* 0128 */ 0x01, 0x00, 0xF3, 0x00, 0xC2, 0x01, 0x01, 0x00, // ........
11639 /* 0130 */ 0xF4, 0x00, 0xC2, 0x9A, 0x01, 0x00, 0xEF, 0x00, // ........
11640 /* 0138 */ 0x00, 0x02, 0x01, 0x00, 0xF0, 0x00, 0x00, 0x00, // ........
11641 /* 0140 */ 0x01, 0x00, 0xB1, 0x00, 0x88, 0xD5, 0x01, 0x00, // ........
11642 /* 0148 */ 0xB2, 0x00, 0x10, 0x1C, 0x01, 0x00, 0xB3, 0x00, // ........
11643 /* 0150 */ 0x00, 0x00, 0x01, 0x00, 0xB7, 0x00, 0x04, 0xE9, // ........
11644 /* 0158 */ 0x01, 0x00, 0xB8, 0x00, 0x10, 0x1C, 0x01, 0x00, // ........
11645 /* 0160 */ 0xB9, 0x00, 0x00, 0x00, 0x01, 0x00, 0xBD, 0x00, // ........
11646 /* 0168 */ 0x00, 0x00, 0x01, 0x00, 0xBE, 0x00, 0x10, 0x1C, // ........
11647 /* 0170 */ 0x01, 0x00, 0xBF, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11648 /* 0178 */ 0xC2, 0x00, 0xC4, 0x1E, 0x01, 0x00, 0xC3, 0x00, // ........
11649 /* 0180 */ 0x00, 0x00, 0x01, 0x00, 0xC7, 0x00, 0x1C, 0x1F, // ........
11650 /* 0188 */ 0x01, 0x00, 0xC8, 0x00, 0xDD, 0x00, 0x01, 0x00, // ........
11651 /* 0190 */ 0xC9, 0x00, 0x1F, 0x1F, 0x01, 0x00, 0xCB, 0x00, // ........
11652 /* 0198 */ 0x00, 0x08, 0x01, 0x00, 0xCD, 0x00, 0x00, 0x08, // ........
11653 /* 01A0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11654 /* 01A8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11655 /* 01B0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11656 /* 01B8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11657 /* 01C0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11658 /* 01C8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11659 /* 01D0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11660 /* 01D8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11661 /* 01E0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11662 /* 01E8 */ 0x14, 0x00, 0x01, 0x00, 0xCE, 0x00, 0x00, 0x00, // ........
11663 /* 01F0 */ 0x01, 0x00, 0xCF, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11664 /* 01F8 */ 0xD0, 0x00, 0x00, 0x00, 0x01, 0x00, 0xD1, 0x00, // ........
11665 /* 0200 */ 0x00, 0x00, 0x01, 0x00, 0xD2, 0x00, 0x00, 0x00, // ........
11666 /* 0208 */ 0x01, 0x00, 0xD3, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11667 /* 0210 */ 0xD4, 0x00, 0x00, 0x00, 0x01, 0x00, 0xD5, 0x00, // ........
11668 /* 0218 */ 0x00, 0x00, 0x01, 0x00, 0xD6, 0x00, 0x00, 0x00, // ........
11669 /* 0220 */ 0x01, 0x00, 0xD7, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11670 /* 0228 */ 0xD8, 0x00, 0x00, 0x00, 0x01, 0x00, 0xD9, 0x00, // ........
11671 /* 0230 */ 0x00, 0x00, 0x01, 0x00, 0xDA, 0x00, 0x00, 0x00, // ........
11672 /* 0238 */ 0x01, 0x00, 0xDB, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11673 /* 0240 */ 0xDC, 0x00, 0x00, 0x00, 0x01, 0x00, 0xDD, 0x00, // ........
11674 /* 0248 */ 0x00, 0x00, 0x01, 0x00, 0xE1, 0x00, 0x00, 0x00, // ........
11675 /* 0250 */ 0x01, 0x00, 0xE2, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11676 /* 0258 */ 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xAE, 0x00, // ........
11677 /* 0260 */ 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // .`......
11678 /* 0268 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11679 /* 0270 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11680 /* 0278 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11681 /* 0280 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11682 /* 0288 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11683 /* 0290 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11684 /* 0298 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11685 /* 02A0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11686 /* 02A8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11687 /* 02B0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11688 /* 02B8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11689 /* 02C0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11690 /* 02C8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11691 /* 02D0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11692 /* 02D8 */ 0x00, 0x00, 0x14, 0x00, 0x01, 0x00, 0xCE, 0x00, // ........
11693 /* 02E0 */ 0x00, 0x00, 0x01, 0x00, 0xCF, 0x00, 0x00, 0x00, // ........
11694 /* 02E8 */ 0x01, 0x00, 0xD0, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11695 /* 02F0 */ 0xD1, 0x00, 0x00, 0x00, 0x01, 0x00, 0xD2, 0x00, // ........
11696 /* 02F8 */ 0x00, 0x00, 0x01, 0x00, 0xD3, 0x00, 0x00, 0x00, // ........
11697 /* 0300 */ 0x01, 0x00, 0xD4, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11698 /* 0308 */ 0xD5, 0x00, 0x00, 0x00, 0x01, 0x00, 0xD6, 0x00, // ........
11699 /* 0310 */ 0x00, 0x00, 0x01, 0x00, 0xD7, 0x00, 0x00, 0x00, // ........
11700 /* 0318 */ 0x01, 0x00, 0xD8, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11701 /* 0320 */ 0xD9, 0x00, 0x00, 0x00, 0x01, 0x00, 0xDA, 0x00, // ........
11702 /* 0328 */ 0x00, 0x00, 0x01, 0x00, 0xDB, 0x00, 0x00, 0x00, // ........
11703 /* 0330 */ 0x01, 0x00, 0xDC, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
11704 /* 0338 */ 0xDD, 0x00, 0x00, 0x00, 0x01, 0x00, 0xE1, 0x00, // ........
11705 /* 0340 */ 0x00, 0x00, 0x01, 0x00, 0xE2, 0x00, 0x00, 0x00, // ........
11706 /* 0348 */ 0x00, 0x00, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11707 /* 0350 */ 0xAE, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, // ...`....
11708 /* 0358 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11709 /* 0360 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11710 /* 0368 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11711 /* 0370 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11712 /* 0378 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11713 /* 0380 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11714 /* 0388 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11715 /* 0390 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11716 /* 0398 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11717 /* 03A0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11718 /* 03A8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11719 /* 03B0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11720 /* 03B8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11721 /* 03C0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11722 /* 03C8 */ 0x00, 0x00, 0x00, 0x00 // ....
11723 })
11724 }
11725 Case (0x03)
11726 {
11727 Return (Buffer (0x42)
11728 {
11729 /* 0000 */ 0x00, 0x20, 0x72, 0x56, 0x06, 0x00, 0x00, 0x00, // . rV....
11730 /* 0008 */ 0xB2, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB3, 0x00, // ........
11731 /* 0010 */ 0x1F, 0x00, 0x00, 0x00, 0xB4, 0x00, 0x10, 0x40, // .......@
11732 /* 0018 */ 0x00, 0x00, 0xB5, 0x00, 0x00, 0x1F, 0x00, 0x00, // ........
11733 /* 0020 */ 0xB6, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xB7, 0x00, // ........
11734 /* 0028 */ 0x0A, 0x00, 0x15, 0x00, 0xFF, 0xFF, 0x15, 0x00, // ........
11735 /* 0030 */ 0xFF, 0xFF, 0x00, 0x00, 0x15, 0x00, 0xFF, 0xFF, // ........
11736 /* 0038 */ 0x15, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x15, 0x00, // ........
11737 /* 0040 */ 0xFF, 0xFF // ..
11738 })
11739 }
11740 Default
11741 {
11742 Return (0x80000002)
11743 }
11744
11745 }
11746 }
11747
11748 }
11749 }
11750
11751 Return (0x80000002)
11752 }
11753 }
11754
11755 Device (RTK2)
11756 {
11757 Name (_ADR, Zero) // _ADR: Address
11758 Name (_HID, "10EC5645") // _HID: Hardware ID
11759 Name (_CID, "10EC5645") // _CID: Compatible ID
11760 Name (_DDN, "ALC5642") // _DDN: DOS Device Name
11761 Name (_UID, 0x02) // _UID: Unique ID
11762 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
11763 {
11764 CLK3
11765 })
11766 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
11767 {
11768 Name (SBUF, ResourceTemplate ()
11769 {
11770 I2cSerialBusV2 (0x001A, ControllerInitiated, 0x00061A80,
11771 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
11772 0x00, ResourceConsumer, , Exclusive,
11773 )
11774 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
11775 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
11776 )
11777 { // Pin list
11778 0x005B
11779 }
11780 })
11781 Return (SBUF) /* \_SB_.PCI0.I2C2.RTK2._CRS.SBUF */
11782 }
11783
11784 Method (_STA, 0, NotSerialized) // _STA: Status
11785 {
11786 If ((BDID == One))
11787 {
11788 Return (Zero)
11789 }
11790
11791 If ((OSID == 0x04))
11792 {
11793 Return (Zero)
11794 }
11795
11796 If ((AUCD == One))
11797 {
11798 Return (0x0F)
11799 }
11800
11801 Return (Zero)
11802 }
11803
11804 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
11805 {
11806 }
11807 }
11808
11809 Device (RTK1)
11810 {
11811 Name (_ADR, Zero) // _ADR: Address
11812 Name (_HID, "10EC5670") // _HID: Hardware ID
11813 Name (_CID, "10EC5670") // _CID: Compatible ID
11814 Name (_DDN, "ALC5642") // _DDN: DOS Device Name
11815 Name (_UID, One) // _UID: Unique ID
11816 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
11817 {
11818 CLK3
11819 })
11820 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
11821 {
11822 Name (SBUF, ResourceTemplate ()
11823 {
11824 I2cSerialBusV2 (0x001C, ControllerInitiated, 0x00061A80,
11825 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
11826 0x00, ResourceConsumer, , Exclusive,
11827 )
11828 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
11829 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
11830 )
11831 { // Pin list
11832 0x005B
11833 }
11834 })
11835 Name (WBUF, ResourceTemplate ()
11836 {
11837 I2cSerialBusV2 (0x001C, ControllerInitiated, 0x00061A80,
11838 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
11839 0x00, ResourceConsumer, , Exclusive,
11840 )
11841 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
11842 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
11843 )
11844 { // Pin list
11845 0x004F
11846 }
11847 })
11848 If (((OSID == 0x04) && ((BDID == 0x09) || (BDID == 0x0A))))
11849 {
11850 Return (WBUF) /* \_SB_.PCI0.I2C2.RTK1._CRS.WBUF */
11851 }
11852
11853 Return (SBUF) /* \_SB_.PCI0.I2C2.RTK1._CRS.SBUF */
11854 }
11855
11856 Method (_STA, 0, NotSerialized) // _STA: Status
11857 {
11858 If ((BDID == One))
11859 {
11860 Return (Zero)
11861 }
11862
11863 If ((OSID == One))
11864 {
11865 Return (Zero)
11866 }
11867
11868 Return (0x0F)
11869 }
11870
11871 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
11872 {
11873 }
11874 }
11875
11876 Device (CAM2)
11877 {
11878 Name (_ADR, Zero) // _ADR: Address
11879 Name (_HID, "OVTI2740") // _HID: Hardware ID
11880 Name (_CID, "OVTI2740") // _CID: Compatible ID
11881 Name (_SUB, "FUJ00403") // _SUB: Subsystem ID
11882 Name (_DDN, "OV2740") // _DDN: DOS Device Name
11883 Name (_UID, 0x02) // _UID: Unique ID
11884 Name (_DEP, Package (0x02) // _DEP: Dependencies
11885 {
11886 I2C7,
11887 ^^I2C7.PMIC
11888 })
11889 Name (_PR0, Package (0x03) // _PR0: Power Resources for D0
11890 {
11891 P28X,
11892 P18X,
11893 CLK1
11894 })
11895 Name (PLDB, Package (0x01)
11896 {
11897 Buffer (0x14)
11898 {
11899 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
11900 /* 0008 */ 0x61, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // a.......
11901 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
11902 }
11903 })
11904 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
11905 {
11906 Return (PLDB) /* \_SB_.PCI0.I2C2.CAM2.PLDB */
11907 }
11908
11909 Method (_STA, 0, NotSerialized) // _STA: Status
11910 {
11911 If ((ICME == One))
11912 {
11913 Return (0x0F)
11914 }
11915 Else
11916 {
11917 Return (Zero)
11918 }
11919 }
11920
11921 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
11922 {
11923 }
11924
11925 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
11926 {
11927 CKC1 = 0x05
11928 Sleep (0x05)
11929 }
11930
11931 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
11932 {
11933 Name (SBUF, ResourceTemplate ()
11934 {
11935 I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
11936 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
11937 0x00, ResourceConsumer, , Exclusive,
11938 )
11939 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
11940 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
11941 )
11942 { // Pin list
11943 0x0032
11944 }
11945 })
11946 Return (SBUF) /* \_SB_.PCI0.I2C2.CAM2._CRS.SBUF */
11947 }
11948
11949 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
11950 {
11951 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
11952 {
11953 Return ("OVTI2740")
11954 }
11955
11956 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
11957 {
11958 Return ("OV2740")
11959 }
11960
11961 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
11962 {
11963 Return ("D2V02D200")
11964 }
11965
11966 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
11967 {
11968 Return ("CHV_ITL_RVP")
11969 }
11970
11971 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
11972 {
11973 Return (0x0102)
11974 }
11975
11976 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
11977 {
11978 Return (0x1011)
11979 }
11980
11981 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
11982 {
11983 Return (Zero)
11984 }
11985
11986 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
11987 {
11988 Return (Zero)
11989 }
11990
11991 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
11992 {
11993 Return (Zero)
11994 }
11995
11996 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
11997 {
11998 Return (Zero)
11999 }
12000
12001 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
12002 {
12003 Return (Zero)
12004 }
12005
12006 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
12007 {
12008 If ((Arg2 == One))
12009 {
12010 Return (One)
12011 }
12012
12013 If ((Arg2 == 0x02))
12014 {
12015 Return (0x04001000)
12016 }
12017 }
12018
12019 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
12020 {
12021 If ((Arg2 == One))
12022 {
12023 Return (0x02)
12024 }
12025
12026 If ((Arg2 == 0x02))
12027 {
12028 Return (0x01003200)
12029 }
12030
12031 If ((Arg2 == 0x03))
12032 {
12033 Return (Zero)
12034 }
12035 }
12036 }
12037 }
12038
12039 Device (CAM7)
12040 {
12041 Name (_ADR, Zero) // _ADR: Address
12042 Name (_HID, "OVTI8865") // _HID: Hardware ID
12043 Name (_CID, "OVTI8865") // _CID: Compatible ID
12044 Name (_SUB, "FUJ00403") // _SUB: Subsystem ID
12045 Name (_DDN, "OV8865") // _DDN: DOS Device Name
12046 Name (_UID, One) // _UID: Unique ID
12047 Name (_DEP, Package (0x02) // _DEP: Dependencies
12048 {
12049 I2C7,
12050 ^^I2C7.PMIC
12051 })
12052 Name (_PR0, Package (0x03) // _PR0: Power Resources for D0
12053 {
12054 P28X,
12055 P18X,
12056 CLK0
12057 })
12058 Name (WDEP, Package (0x02)
12059 {
12060 I2C7,
12061 ^^I2C7.PMI5
12062 })
12063 Name (WPR0, Package (0x03)
12064 {
12065 P28W,
12066 P18W,
12067 CLK0
12068 })
12069 Name (PLDB, Package (0x01)
12070 {
12071 Buffer (0x14)
12072 {
12073 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
12074 /* 0008 */ 0x69, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // i.......
12075 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
12076 }
12077 })
12078 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
12079 {
12080 Return (PLDB) /* \_SB_.PCI0.I2C2.CAM7.PLDB */
12081 }
12082
12083 Method (_STA, 0, NotSerialized) // _STA: Status
12084 {
12085 If ((OCME == One))
12086 {
12087 Return (0x0F)
12088 }
12089 Else
12090 {
12091 Return (Zero)
12092 }
12093 }
12094
12095 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
12096 {
12097 Name (WBUF, ResourceTemplate ()
12098 {
12099 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12100 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
12101 )
12102 { // Pin list
12103 0x0034
12104 }
12105 I2cSerialBusV2 (0x0036, ControllerInitiated, 0x00061A80,
12106 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
12107 0x00, ResourceConsumer, , Exclusive,
12108 )
12109 I2cSerialBusV2 (0x000C, ControllerInitiated, 0x00061A80,
12110 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
12111 0x00, ResourceConsumer, , Exclusive,
12112 )
12113 })
12114 Return (WBUF) /* \_SB_.PCI0.I2C2.CAM7._CRS.WBUF */
12115 }
12116
12117 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
12118 {
12119 If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
12120 {
12121 Local0 = Package (0x12)
12122 {
12123 "CamId",
12124 "ov8865",
12125 "CamType",
12126 "1",
12127 "CsiPort",
12128 "1",
12129 "CsiLanes",
12130 "2",
12131 "CsiFmt",
12132 "15",
12133 "CsiBayer",
12134 "2",
12135 "CamClk",
12136 "0",
12137 "Regulator1p8v",
12138 "0",
12139 "Regulator2p8v",
12140 "0"
12141 }
12142 Return (Local0)
12143 }
12144
12145 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
12146 {
12147 Return ("OVTI8865")
12148 }
12149
12150 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
12151 {
12152 Return ("OV8865")
12153 }
12154
12155 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
12156 {
12157 Return ("F8V03S201")
12158 }
12159
12160 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
12161 {
12162 Return ("CHV_ITL_RVP")
12163 }
12164
12165 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
12166 {
12167 Return (0x0104)
12168 }
12169
12170 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
12171 {
12172 Return (One)
12173 }
12174
12175 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
12176 {
12177 Return (One)
12178 }
12179
12180 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
12181 {
12182 Return (One)
12183 }
12184
12185 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
12186 {
12187 Return (Zero)
12188 }
12189
12190 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
12191 {
12192 Return (Zero)
12193 }
12194
12195 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
12196 {
12197 Return ("BU64243")
12198 }
12199
12200 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
12201 {
12202 If ((Arg2 == One))
12203 {
12204 Return (0x02)
12205 }
12206
12207 If ((Arg2 == 0x02))
12208 {
12209 Return (0x04003600)
12210 }
12211
12212 If ((Arg2 == 0x03))
12213 {
12214 Return (0x04000C01)
12215 }
12216 }
12217
12218 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
12219 {
12220 If ((Arg2 == One))
12221 {
12222 Return (0x02)
12223 }
12224
12225 If ((Arg2 == 0x02))
12226 {
12227 Return (0x01003400)
12228 }
12229
12230 If ((Arg2 == 0x03))
12231 {
12232 Return (0x01003101)
12233 }
12234 }
12235
12236 If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
12237 {
12238 Return ("CHT")
12239 }
12240
12241 If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
12242 {
12243 Return ("FFD")
12244 }
12245
12246 If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
12247 {
12248 Return ("CHV")
12249 }
12250
12251 If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
12252 {
12253 Return ("INTEL")
12254 }
12255
12256 If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
12257 {
12258 Return (Buffer (0x20)
12259 {
12260 /* 0000 */ 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, // ........
12261 /* 0008 */ 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
12262 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
12263 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
12264 })
12265 }
12266 }
12267 }
12268 }
12269
12270 Device (I2C3)
12271 {
12272 Name (_HID, "808622C1") // _HID: Hardware ID
12273 Name (_CID, "808622C1") // _CID: Compatible ID
12274 Name (_DDN, "Intel(R) I2C Controller #3 - 808622C3") // _DDN: DOS Device Name
12275 Name (_UID, 0x03) // _UID: Unique ID
12276 Name (_DEP, Package (0x01) // _DEP: Dependencies
12277 {
12278 PEPD
12279 })
12280 Name (RBUF, ResourceTemplate ()
12281 {
12282 Memory32Fixed (ReadWrite,
12283 0x00000000, // Address Base
12284 0x00001000, // Address Length
12285 _Y17)
12286 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
12287 {
12288 0x00000022,
12289 }
12290 FixedDMA (0x0014, 0x0004, Width32bit, )
12291 FixedDMA (0x0015, 0x0005, Width32bit, )
12292 })
12293 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
12294 {
12295 CreateDWordField (RBUF, \_SB.PCI0.I2C3._Y17._BAS, B0BA) // _BAS: Base Address
12296 CreateDWordField (RBUF, \_SB.PCI0.I2C3._Y17._LEN, B0LN) // _LEN: Length
12297 B0BA = I30A /* \I30A */
12298 B0LN = I30L /* \I30L */
12299 Return (RBUF) /* \_SB_.PCI0.I2C3.RBUF */
12300 }
12301
12302 Method (_STA, 0, NotSerialized) // _STA: Status
12303 {
12304 If (((I30A == Zero) || (L23D == One)))
12305 {
12306 Return (Zero)
12307 }
12308
12309 Return (0x0F)
12310 }
12311
12312 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
12313 {
12314 PSAT |= 0x03
12315 PSAT |= Zero
12316 }
12317
12318 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
12319 {
12320 PSAT &= 0xFFFFFFFC
12321 PSAT |= Zero
12322 }
12323
12324 OperationRegion (KEYS, SystemMemory, I31A, 0x0100)
12325 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
12326 {
12327 Offset (0x84),
12328 PSAT, 32
12329 }
12330
12331 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
12332 {
12333 If ((IC3P == Zero))
12334 {
12335 Return (Zero)
12336 }
12337 Else
12338 {
12339 Return (0x03)
12340 }
12341 }
12342
12343 PowerResource (CLK2, 0x00, 0x0000)
12344 {
12345 Method (_STA, 0, NotSerialized) // _STA: Status
12346 {
12347 Return (CKC2) /* \CKC2 */
12348 }
12349
12350 Method (_ON, 0, NotSerialized) // _ON_: Power On
12351 {
12352 CKC2 = One
12353 Sleep (0x05)
12354 }
12355
12356 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
12357 {
12358 CKC2 = 0x02
12359 }
12360 }
12361
12362 Device (NFC1)
12363 {
12364 Name (_ADR, Zero) // _ADR: Address
12365 Name (_HID, "NXP5441") // _HID: Hardware ID
12366 Name (_CID, "NXP5441") // _CID: Compatible ID
12367 Name (_DDN, "NXP NFC NXP5441") // _DDN: DOS Device Name
12368 Name (_UID, One) // _UID: Unique ID
12369 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
12370 {
12371 CLK2
12372 })
12373 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
12374 {
12375 Name (SBUF, ResourceTemplate ()
12376 {
12377 I2cSerialBusV2 (0x0029, ControllerInitiated, 0x00061A80,
12378 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
12379 0x00, ResourceConsumer, , Exclusive,
12380 )
12381 GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
12382 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12383 )
12384 { // Pin list
12385 0x004F
12386 }
12387 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12388 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12389 )
12390 { // Pin list
12391 0x0052
12392 }
12393 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12394 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12395 )
12396 { // Pin list
12397 0x0051
12398 }
12399 })
12400 Name (GBUF, ResourceTemplate ()
12401 {
12402 I2cSerialBusV2 (0x0029, ControllerInitiated, 0x00061A80,
12403 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
12404 0x00, ResourceConsumer, , Exclusive,
12405 )
12406 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12407 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12408 )
12409 { // Pin list
12410 0x0051
12411 }
12412 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12413 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12414 )
12415 { // Pin list
12416 0x0052
12417 }
12418 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
12419 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12420 )
12421 { // Pin list
12422 0x004F
12423 }
12424 })
12425 Return (SBUF) /* \_SB_.PCI0.I2C3.NFC1._CRS.SBUF */
12426 }
12427
12428 Method (_STA, 0, NotSerialized) // _STA: Status
12429 {
12430 Return (Zero)
12431 }
12432 }
12433
12434 Device (NFC2)
12435 {
12436 Name (_ADR, Zero) // _ADR: Address
12437 Name (_HID, "INT339A") // _HID: Hardware ID
12438 Name (_CID, "INT339A") // _CID: Compatible ID
12439 Name (_DDN, "FDP NFC") // _DDN: DOS Device Name
12440 Name (_UID, One) // _UID: Unique ID
12441 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
12442 {
12443 CLK2
12444 })
12445 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
12446 {
12447 Name (SBUF, ResourceTemplate ()
12448 {
12449 I2cSerialBusV2 (0x005E, ControllerInitiated, 0x00061A80,
12450 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
12451 0x00, ResourceConsumer, , Exclusive,
12452 )
12453 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12454 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12455 )
12456 { // Pin list
12457 0x0051
12458 }
12459 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
12460 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12461 )
12462 { // Pin list
12463 0x004F
12464 }
12465 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12466 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12467 )
12468 { // Pin list
12469 0x0052
12470 }
12471 })
12472 Name (GBUF, ResourceTemplate ()
12473 {
12474 I2cSerialBusV2 (0x005E, ControllerInitiated, 0x00061A80,
12475 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
12476 0x00, ResourceConsumer, , Exclusive,
12477 )
12478 GpioIo (Exclusive, PullUp, 0x0000, 0x0000, IoRestrictionNone,
12479 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12480 )
12481 { // Pin list
12482 0x0051
12483 }
12484 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
12485 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
12486 )
12487 { // Pin list
12488 0x004F
12489 }
12490 })
12491 If ((OSID == 0x02))
12492 {
12493 Return (SBUF) /* \_SB_.PCI0.I2C3.NFC2._CRS.SBUF */
12494 }
12495
12496 Return (GBUF) /* \_SB_.PCI0.I2C3.NFC2._CRS.GBUF */
12497 }
12498
12499 Method (_STA, 0, NotSerialized) // _STA: Status
12500 {
12501 If ((BDID == One))
12502 {
12503 Return (Zero)
12504 }
12505
12506 If (((BDID == 0x09) || (BDID == 0x0A)))
12507 {
12508 Return (0x0F)
12509 }
12510
12511 Return (Zero)
12512 }
12513 }
12514
12515 PowerResource (CLK1, 0x00, 0x0000)
12516 {
12517 Method (_STA, 0, NotSerialized) // _STA: Status
12518 {
12519 Return (CKC1) /* \CKC1 */
12520 }
12521
12522 Method (_ON, 0, NotSerialized) // _ON_: Power On
12523 {
12524 CKC1 = One
12525 Sleep (0x05)
12526 }
12527
12528 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
12529 {
12530 CKC1 = 0x02
12531 }
12532 }
12533
12534 OperationRegion (TIP1, GenericSerialBus, Zero, 0x0100)
12535 Field (TIP1, BufferAcc, NoLock, Preserve)
12536 {
12537 Connection (
12538 I2cSerialBusV2 (0x006B, ControllerInitiated, 0x000F4240,
12539 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
12540 0x00, ResourceConsumer, , Exclusive,
12541 )
12542 ),
12543 Offset (0x01),
12544 AccessAs (BufferAcc, AttribByte),
12545 RG01, 8,
12546 Offset (0x08),
12547 AccessAs (BufferAcc, AttribByte),
12548 RG08, 8
12549 }
12550
12551 Name (AVBL, Zero)
12552 Method (_REG, 2, NotSerialized) // _REG: Region Availability
12553 {
12554 If ((Arg0 == 0x09))
12555 {
12556 AVBL = Arg1
12557 }
12558 }
12559 }
12560
12561 Device (I2C4)
12562 {
12563 Name (_HID, "808622C1") // _HID: Hardware ID
12564 Name (_CID, "808622C1") // _CID: Compatible ID
12565 Name (_DDN, "Intel(R) I2C Controller #4 - 808622C4") // _DDN: DOS Device Name
12566 Name (_UID, 0x04) // _UID: Unique ID
12567 Name (_DEP, Package (0x02) // _DEP: Dependencies
12568 {
12569 PEPD,
12570 GPO0
12571 })
12572 Name (FCFG, Zero)
12573 Name (RCFG, Zero)
12574 Name (RBUF, ResourceTemplate ()
12575 {
12576 Memory32Fixed (ReadWrite,
12577 0x00000000, // Address Base
12578 0x00001000, // Address Length
12579 _Y18)
12580 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
12581 {
12582 0x00000023,
12583 }
12584 FixedDMA (0x0016, 0x0006, Width32bit, )
12585 FixedDMA (0x0017, 0x0007, Width32bit, )
12586 })
12587 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
12588 {
12589 CreateDWordField (RBUF, \_SB.PCI0.I2C4._Y18._BAS, B0BA) // _BAS: Base Address
12590 CreateDWordField (RBUF, \_SB.PCI0.I2C4._Y18._LEN, B0LN) // _LEN: Length
12591 B0BA = I40A /* \I40A */
12592 B0LN = I40L /* \I40L */
12593 Return (RBUF) /* \_SB_.PCI0.I2C4.RBUF */
12594 }
12595
12596 Method (_STA, 0, NotSerialized) // _STA: Status
12597 {
12598 If (((I40A == Zero) || (L24D == One)))
12599 {
12600 Return (Zero)
12601 }
12602
12603 Return (0x0F)
12604 }
12605
12606 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
12607 {
12608 PSAT |= 0x03
12609 PSAT |= Zero
12610 If ((^^^GPO0.AMMR == One))
12611 {
12612 ^^^GPO0.I4AE = One
12613 ^^^GPO0.I4CE = One
12614 ^^^GPO0.I4AF = 0x03
12615 ^^^GPO0.I4CF = 0x03
12616 ^^^GPO0.I4AD = 0x0A
12617 ^^^GPO0.I4CD = 0x0A
12618 }
12619 }
12620
12621 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
12622 {
12623 PSAT &= 0xFFFFFFFC
12624 PSAT |= Zero
12625 If ((^^^GPO0.AMMR == One))
12626 {
12627 ^^^GPO0.I4AD = 0x0A
12628 ^^^GPO0.I4CD = 0x0A
12629 ^^^GPO0.I4AF = Zero
12630 ^^^GPO0.I4CF = Zero
12631 Sleep (0x03)
12632 ^^^GPO0.I4AE = Zero
12633 ^^^GPO0.I4CE = Zero
12634 Sleep (0x03)
12635 }
12636 }
12637
12638 OperationRegion (KEYS, SystemMemory, I41A, 0x0100)
12639 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
12640 {
12641 Offset (0x84),
12642 PSAT, 32
12643 }
12644
12645 PowerResource (CLK0, 0x00, 0x0000)
12646 {
12647 Method (_STA, 0, NotSerialized) // _STA: Status
12648 {
12649 Return (CKC0) /* \CKC0 */
12650 }
12651
12652 Method (_ON, 0, NotSerialized) // _ON_: Power On
12653 {
12654 CKC0 = One
12655 Sleep (0x05)
12656 }
12657
12658 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
12659 {
12660 CKC0 = 0x02
12661 }
12662 }
12663
12664 PowerResource (CLK1, 0x00, 0x0000)
12665 {
12666 Method (_STA, 0, NotSerialized) // _STA: Status
12667 {
12668 Return (CKC1) /* \CKC1 */
12669 }
12670
12671 Method (_ON, 0, NotSerialized) // _ON_: Power On
12672 {
12673 CKC1 = One
12674 Sleep (0x05)
12675 }
12676
12677 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
12678 {
12679 CKC1 = 0x02
12680 }
12681 }
12682
12683 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
12684 {
12685 If ((IC4P == Zero))
12686 {
12687 Return (Zero)
12688 }
12689 Else
12690 {
12691 Return (0x03)
12692 }
12693 }
12694
12695 Device (CA10)
12696 {
12697 Name (_ADR, Zero) // _ADR: Address
12698 Name (_HID, "INT33CF") // _HID: Hardware ID
12699 Name (_CID, "INT33CF") // _CID: Compatible ID
12700 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
12701 Name (_DDN, "OV680") // _DDN: DOS Device Name
12702 Name (_UID, One) // _UID: Unique ID
12703 Name (_DEP, Package (0x02) // _DEP: Dependencies
12704 {
12705 I2C7,
12706 ^^I2C7.PMIC
12707 })
12708 Name (_PR0, Package (0x03) // _PR0: Power Resources for D0
12709 {
12710 P28X,
12711 P18X,
12712 CLK0
12713 })
12714 Name (WDEP, Package (0x02)
12715 {
12716 I2C7,
12717 ^^I2C7.PMI5
12718 })
12719 Name (WPR0, Package (0x03)
12720 {
12721 P28W,
12722 P18W,
12723 CLK0
12724 })
12725 Method (_STA, 0, NotSerialized) // _STA: Status
12726 {
12727 If (((BDID == One) || (OSID == One)))
12728 {
12729 Return (Zero)
12730 }
12731
12732 If ((RCAM == One))
12733 {
12734 If (((BDID == 0x09) || (BDID == 0x0A)))
12735 {
12736 Return (0x0F)
12737 }
12738 }
12739
12740 Return (Zero)
12741 }
12742
12743 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
12744 {
12745 Name (WBUF, ResourceTemplate ()
12746 {
12747 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12748 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
12749 )
12750 { // Pin list
12751 0x0030
12752 }
12753 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12754 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
12755 )
12756 { // Pin list
12757 0x0036
12758 }
12759 I2cSerialBusV2 (0x0035, ControllerInitiated, 0x00061A80,
12760 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
12761 0x00, ResourceConsumer, , Exclusive,
12762 )
12763 })
12764 Name (ABUF, ResourceTemplate ()
12765 {
12766 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12767 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
12768 )
12769 { // Pin list
12770 0x0037
12771 }
12772 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12773 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
12774 )
12775 { // Pin list
12776 0x002D
12777 }
12778 I2cSerialBusV2 (0x0035, ControllerInitiated, 0x00061A80,
12779 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
12780 0x00, ResourceConsumer, , Exclusive,
12781 )
12782 })
12783 If ((OSID == One))
12784 {
12785 Return (WBUF) /* \_SB_.PCI0.I2C4.CA10._CRS.WBUF */
12786 }
12787 Else
12788 {
12789 Return (ABUF) /* \_SB_.PCI0.I2C4.CA10._CRS.ABUF */
12790 }
12791 }
12792 }
12793
12794 Device (CAM9)
12795 {
12796 Name (_ADR, Zero) // _ADR: Address
12797 Name (AHID, "INT3477")
12798 Name (_HID, "INT3477") // _HID: Hardware ID
12799 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
12800 Name (_DDN, "OV8858") // _DDN: DOS Device Name
12801 Name (_UID, One) // _UID: Unique ID
12802 Name (_DEP, Package (0x02) // _DEP: Dependencies
12803 {
12804 I2C7,
12805 ^^I2C7.PMIC
12806 })
12807 Name (_PR0, Package (0x03) // _PR0: Power Resources for D0
12808 {
12809 P28X,
12810 P18X,
12811 CLK0
12812 })
12813 Name (PLDB, Package (0x01)
12814 {
12815 Buffer (0x14)
12816 {
12817 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
12818 /* 0008 */ 0x69, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // i.......
12819 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
12820 }
12821 })
12822 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
12823 {
12824 Return (PLDB) /* \_SB_.PCI0.I2C4.CAM9.PLDB */
12825 }
12826
12827 Method (_STA, 0, NotSerialized) // _STA: Status
12828 {
12829 Return (Zero)
12830 }
12831
12832 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
12833 {
12834 Name (SBUF, ResourceTemplate ()
12835 {
12836 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
12837 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
12838 )
12839 { // Pin list
12840 0x0034
12841 }
12842 I2cSerialBusV2 (0x0036, ControllerInitiated, 0x00061A80,
12843 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
12844 0x00, ResourceConsumer, , Exclusive,
12845 )
12846 I2cSerialBusV2 (0x000C, ControllerInitiated, 0x00061A80,
12847 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
12848 0x00, ResourceConsumer, , Exclusive,
12849 )
12850 })
12851 Return (SBUF) /* \_SB_.PCI0.I2C4.CAM9._CRS.SBUF */
12852 }
12853
12854 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
12855 {
12856 If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
12857 {
12858 Local0 = Package (0x12)
12859 {
12860 "CamId",
12861 "ov8858",
12862 "CamType",
12863 "1",
12864 "CsiPort",
12865 "1",
12866 "CsiLanes",
12867 "2",
12868 "CsiFmt",
12869 "15",
12870 "CsiBayer",
12871 "2",
12872 "CamClk",
12873 "0",
12874 "Regulator1p8v",
12875 "0",
12876 "Regulator2p8v",
12877 "0"
12878 }
12879 Return (Local0)
12880 }
12881
12882 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
12883 {
12884 If ((OSID == One))
12885 {
12886 Return ("OVTI8858")
12887 }
12888
12889 Return ("OVTI8858")
12890 }
12891
12892 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
12893 {
12894 Return ("OV8858")
12895 }
12896
12897 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
12898 {
12899 If ((OSID == One))
12900 {
12901 Return ("P8V12F203")
12902 }
12903
12904 Return ("12P2BA535")
12905 }
12906
12907 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
12908 {
12909 Return ("CHV_ITL_RVP")
12910 }
12911
12912 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
12913 {
12914 Return (0x0102)
12915 }
12916
12917 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
12918 {
12919 If ((OSID == One))
12920 {
12921 Return (0x1040)
12922 }
12923
12924 Return (One)
12925 }
12926
12927 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
12928 {
12929 Return (Zero)
12930 }
12931
12932 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
12933 {
12934 Return (One)
12935 }
12936
12937 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
12938 {
12939 Return (0x02)
12940 }
12941
12942 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
12943 {
12944 Return (Zero)
12945 }
12946
12947 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
12948 {
12949 If ((OSID == One))
12950 {
12951 Return ("DW9714")
12952 }
12953
12954 Return ("AD5823")
12955 }
12956
12957 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
12958 {
12959 If ((Arg2 == One))
12960 {
12961 If ((OSID == One))
12962 {
12963 Return (0x02)
12964 }
12965
12966 Return (0x03)
12967 }
12968
12969 If ((Arg2 == 0x02))
12970 {
12971 Return (0x04001000)
12972 }
12973
12974 If ((Arg2 == 0x03))
12975 {
12976 Return (0x04000C01)
12977 }
12978
12979 If ((Arg2 == 0x04))
12980 {
12981 Return (0x04005402)
12982 }
12983 }
12984
12985 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
12986 {
12987 If ((Arg2 == One))
12988 {
12989 Return (One)
12990 }
12991
12992 If ((Arg2 == 0x02))
12993 {
12994 Return (0x01003400)
12995 }
12996 }
12997
12998 If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
12999 {
13000 Return ("CHT")
13001 }
13002
13003 If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
13004 {
13005 Return ("FFD")
13006 }
13007
13008 If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
13009 {
13010 Return ("CHV")
13011 }
13012
13013 If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
13014 {
13015 Return ("INTEL")
13016 }
13017
13018 If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
13019 {
13020 If ((OSID == One))
13021 {
13022 Return (Buffer (0x20)
13023 {
13024 /* 0000 */ 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x03, // ........
13025 /* 0008 */ 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13026 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13027 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
13028 })
13029 }
13030
13031 Return (Buffer (0x20)
13032 {
13033 /* 0000 */ 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, // ........
13034 /* 0008 */ 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13035 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13036 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
13037 })
13038 }
13039
13040 Return (Zero)
13041 }
13042 }
13043
13044 Device (CAM8)
13045 {
13046 Name (_ADR, Zero) // _ADR: Address
13047 Name (_HID, "APTA0330") // _HID: Hardware ID
13048 Name (_CID, "APTA0330") // _CID: Compatible ID
13049 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
13050 Name (_DDN, "APTINA AR0330") // _DDN: DOS Device Name
13051 Name (_UID, One) // _UID: Unique ID
13052 Name (_DEP, Package (0x02) // _DEP: Dependencies
13053 {
13054 I2C7,
13055 ^^I2C7.PMIC
13056 })
13057 Name (_PR0, Package (0x03) // _PR0: Power Resources for D0
13058 {
13059 P28X,
13060 P18X,
13061 CLK0
13062 })
13063 Name (PLDB, Package (0x01)
13064 {
13065 Buffer (0x14)
13066 {
13067 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13068 /* 0008 */ 0x61, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // a.......
13069 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
13070 }
13071 })
13072 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
13073 {
13074 Return (PLDB) /* \_SB_.PCI0.I2C4.CAM8.PLDB */
13075 }
13076
13077 Method (_STA, 0, NotSerialized) // _STA: Status
13078 {
13079 Return (Zero)
13080 }
13081
13082 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
13083 {
13084 Name (SBUF, ResourceTemplate ()
13085 {
13086 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
13087 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
13088 )
13089 { // Pin list
13090 0x0034
13091 }
13092 I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
13093 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13094 0x00, ResourceConsumer, , Exclusive,
13095 )
13096 })
13097 Return (SBUF) /* \_SB_.PCI0.I2C4.CAM8._CRS.SBUF */
13098 }
13099
13100 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
13101 {
13102 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
13103 {
13104 Return ("APTA0330")
13105 }
13106
13107 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
13108 {
13109 Return ("AR0330")
13110 }
13111
13112 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
13113 {
13114 Return ("FFMODULE")
13115 }
13116
13117 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
13118 {
13119 Return ("CHV_MS_ELB")
13120 }
13121
13122 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
13123 {
13124 Return (0x0104)
13125 }
13126
13127 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
13128 {
13129 Return (0x1020)
13130 }
13131
13132 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
13133 {
13134 Return (Zero)
13135 }
13136
13137 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
13138 {
13139 Return (One)
13140 }
13141
13142 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
13143 {
13144 Return (0x02)
13145 }
13146
13147 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
13148 {
13149 Return (Zero)
13150 }
13151
13152 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
13153 {
13154 Return (Zero)
13155 }
13156
13157 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
13158 {
13159 If ((Arg2 == One))
13160 {
13161 Return (One)
13162 }
13163
13164 If ((Arg2 == 0x02))
13165 {
13166 Return (0x04001000)
13167 }
13168 }
13169
13170 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
13171 {
13172 If ((Arg2 == One))
13173 {
13174 Return (One)
13175 }
13176
13177 If ((Arg2 == 0x02))
13178 {
13179 Return (0x01003400)
13180 }
13181 }
13182
13183 If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
13184 {
13185 Return ("CHT1")
13186 }
13187
13188 If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
13189 {
13190 Return ("EB")
13191 }
13192
13193 If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
13194 {
13195 Return ("CHV")
13196 }
13197
13198 If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
13199 {
13200 Return ("COMP1")
13201 }
13202
13203 If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
13204 {
13205 Return (Buffer (0x20)
13206 {
13207 /* 0000 */ 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13208 /* 0008 */ 0x03, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, // ........
13209 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13210 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
13211 })
13212 }
13213
13214 Return (Zero)
13215 }
13216 }
13217
13218 Device (CAM5)
13219 {
13220 Name (_ADR, Zero) // _ADR: Address
13221 Name (_HID, "OVTI8835") // _HID: Hardware ID
13222 Name (_CID, "OVTI8835") // _CID: Compatible ID
13223 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
13224 Name (_DDN, "Omni Vision OV8835") // _DDN: DOS Device Name
13225 Name (_UID, One) // _UID: Unique ID
13226 Name (_DEP, Package (0x02) // _DEP: Dependencies
13227 {
13228 I2C7,
13229 ^^I2C7.PMIC
13230 })
13231 Name (WDEP, Package (0x02)
13232 {
13233 I2C7,
13234 ^^I2C7.PMI5
13235 })
13236 Name (_PR0, Package (0x03) // _PR0: Power Resources for D0
13237 {
13238 P28X,
13239 P18X,
13240 CLK0
13241 })
13242 Name (WPR0, Package (0x03)
13243 {
13244 P28W,
13245 P18W,
13246 CLK0
13247 })
13248 Name (PLDB, Package (0x01)
13249 {
13250 Buffer (0x14)
13251 {
13252 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13253 /* 0008 */ 0x69, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // i.......
13254 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
13255 }
13256 })
13257 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
13258 {
13259 Return (PLDB) /* \_SB_.PCI0.I2C4.CAM5.PLDB */
13260 }
13261
13262 Method (_STA, 0, NotSerialized) // _STA: Status
13263 {
13264 If ((BDID == One))
13265 {
13266 Return (Zero)
13267 }
13268
13269 Return (Zero)
13270 }
13271
13272 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
13273 {
13274 Name (SBUF, ResourceTemplate ()
13275 {
13276 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
13277 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
13278 )
13279 { // Pin list
13280 0x0034
13281 }
13282 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
13283 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
13284 )
13285 { // Pin list
13286 0x0036
13287 }
13288 I2cSerialBusV2 (0x0036, ControllerInitiated, 0x00061A80,
13289 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13290 0x00, ResourceConsumer, , Exclusive,
13291 )
13292 I2cSerialBusV2 (0x000C, ControllerInitiated, 0x00061A80,
13293 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13294 0x00, ResourceConsumer, , Exclusive,
13295 )
13296 I2cSerialBusV2 (0x0050, ControllerInitiated, 0x00061A80,
13297 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13298 0x00, ResourceConsumer, , Exclusive,
13299 )
13300 I2cSerialBusV2 (0x0051, ControllerInitiated, 0x00061A80,
13301 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13302 0x00, ResourceConsumer, , Exclusive,
13303 )
13304 I2cSerialBusV2 (0x0052, ControllerInitiated, 0x00061A80,
13305 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13306 0x00, ResourceConsumer, , Exclusive,
13307 )
13308 I2cSerialBusV2 (0x0053, ControllerInitiated, 0x00061A80,
13309 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13310 0x00, ResourceConsumer, , Exclusive,
13311 )
13312 I2cSerialBusV2 (0x0054, ControllerInitiated, 0x00061A80,
13313 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13314 0x00, ResourceConsumer, , Exclusive,
13315 )
13316 I2cSerialBusV2 (0x0055, ControllerInitiated, 0x00061A80,
13317 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13318 0x00, ResourceConsumer, , Exclusive,
13319 )
13320 I2cSerialBusV2 (0x0056, ControllerInitiated, 0x00061A80,
13321 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13322 0x00, ResourceConsumer, , Exclusive,
13323 )
13324 I2cSerialBusV2 (0x0057, ControllerInitiated, 0x00061A80,
13325 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13326 0x00, ResourceConsumer, , Exclusive,
13327 )
13328 })
13329 Return (SBUF) /* \_SB_.PCI0.I2C4.CAM5._CRS.SBUF */
13330 }
13331
13332 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
13333 {
13334 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
13335 {
13336 Return ("OVTI8835")
13337 }
13338
13339 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
13340 {
13341 Return ("OV8835")
13342 }
13343
13344 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
13345 {
13346 Return ("RFMODULE")
13347 }
13348
13349 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
13350 {
13351 Return ("CHV_MS_ELB")
13352 }
13353
13354 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
13355 {
13356 Return (0x0104)
13357 }
13358
13359 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
13360 {
13361 Return (One)
13362 }
13363
13364 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
13365 {
13366 Return (Zero)
13367 }
13368
13369 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
13370 {
13371 Return (0x06)
13372 }
13373
13374 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
13375 {
13376 Return (0x02)
13377 }
13378
13379 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
13380 {
13381 Return (Zero)
13382 }
13383
13384 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
13385 {
13386 Return ("DW9714")
13387 }
13388
13389 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
13390 {
13391 If ((Arg2 == One))
13392 {
13393 Return (0x0A)
13394 }
13395
13396 If ((Arg2 == 0x02))
13397 {
13398 Return (0x04003600)
13399 }
13400
13401 If ((Arg2 == 0x03))
13402 {
13403 Return (0x04000C01)
13404 }
13405
13406 If ((Arg2 == 0x04))
13407 {
13408 Return (0x04005002)
13409 }
13410
13411 If ((Arg2 == 0x05))
13412 {
13413 Return (0x04005103)
13414 }
13415
13416 If ((Arg2 == 0x06))
13417 {
13418 Return (0x04005204)
13419 }
13420
13421 If ((Arg2 == 0x07))
13422 {
13423 Return (0x04005305)
13424 }
13425
13426 If ((Arg2 == 0x08))
13427 {
13428 Return (0x04005406)
13429 }
13430
13431 If ((Arg2 == 0x09))
13432 {
13433 Return (0x04005507)
13434 }
13435
13436 If ((Arg2 == 0x0A))
13437 {
13438 Return (0x04005608)
13439 }
13440
13441 If ((Arg2 == 0x0B))
13442 {
13443 Return (0x04005709)
13444 }
13445 }
13446
13447 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
13448 {
13449 If ((Arg2 == One))
13450 {
13451 Return (0x02)
13452 }
13453
13454 If ((Arg2 == 0x02))
13455 {
13456 Return (0x01003400)
13457 }
13458
13459 If ((Arg2 == 0x03))
13460 {
13461 Return (0x0100360A)
13462 }
13463 }
13464
13465 If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
13466 {
13467 Return ("CHT1")
13468 }
13469
13470 If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
13471 {
13472 Return ("EB")
13473 }
13474
13475 If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
13476 {
13477 Return ("CHV")
13478 }
13479
13480 If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
13481 {
13482 Return ("COMP1")
13483 }
13484
13485 If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
13486 {
13487 Return (Buffer (0x20)
13488 {
13489 /* 0000 */ 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x06, 0x02, // ........
13490 /* 0008 */ 0x03, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, // ........
13491 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13492 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
13493 })
13494 }
13495
13496 Return (Zero)
13497 }
13498 }
13499
13500 Device (CAM6)
13501 {
13502 Name (_ADR, Zero) // _ADR: Address
13503 Name (_HID, "APTA0330") // _HID: Hardware ID
13504 Name (_CID, "APTA0330") // _CID: Compatible ID
13505 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
13506 Name (_DDN, "APTINA AR0330") // _DDN: DOS Device Name
13507 Name (_UID, One) // _UID: Unique ID
13508 Name (_DEP, Package (0x02) // _DEP: Dependencies
13509 {
13510 I2C7,
13511 ^^I2C7.PMIC
13512 })
13513 Name (WDEP, Package (0x02)
13514 {
13515 I2C7,
13516 ^^I2C7.PMI5
13517 })
13518 Name (_PR0, Package (0x03) // _PR0: Power Resources for D0
13519 {
13520 P28X,
13521 P18X,
13522 CLK1
13523 })
13524 Name (WPR0, Package (0x03)
13525 {
13526 P28W,
13527 P18W,
13528 CLK1
13529 })
13530 Name (PLDB, Package (0x01)
13531 {
13532 Buffer (0x14)
13533 {
13534 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13535 /* 0008 */ 0x61, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // a.......
13536 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
13537 }
13538 })
13539 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
13540 {
13541 Return (PLDB) /* \_SB_.PCI0.I2C4.CAM6.PLDB */
13542 }
13543
13544 Method (_STA, 0, NotSerialized) // _STA: Status
13545 {
13546 Return (Zero)
13547 }
13548
13549 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
13550 {
13551 Name (SBUF, ResourceTemplate ()
13552 {
13553 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
13554 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
13555 )
13556 { // Pin list
13557 0x0032
13558 }
13559 I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
13560 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13561 0x00, ResourceConsumer, , Exclusive,
13562 )
13563 })
13564 Return (SBUF) /* \_SB_.PCI0.I2C4.CAM6._CRS.SBUF */
13565 }
13566
13567 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
13568 {
13569 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
13570 {
13571 Return ("APTA0330")
13572 }
13573
13574 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
13575 {
13576 Return ("AR0330")
13577 }
13578
13579 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
13580 {
13581 Return ("FFMODULE")
13582 }
13583
13584 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
13585 {
13586 Return ("CHV_MS_ELB")
13587 }
13588
13589 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
13590 {
13591 Return (0x0104)
13592 }
13593
13594 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
13595 {
13596 Return (0x1021)
13597 }
13598
13599 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
13600 {
13601 Return (Zero)
13602 }
13603
13604 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
13605 {
13606 Return (One)
13607 }
13608
13609 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
13610 {
13611 Return (0x02)
13612 }
13613
13614 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
13615 {
13616 Return (Zero)
13617 }
13618
13619 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
13620 {
13621 Return (Zero)
13622 }
13623
13624 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
13625 {
13626 If ((Arg2 == One))
13627 {
13628 Return (One)
13629 }
13630
13631 If ((Arg2 == 0x02))
13632 {
13633 Return (0x04001000)
13634 }
13635 }
13636
13637 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
13638 {
13639 If ((Arg2 == One))
13640 {
13641 Return (One)
13642 }
13643
13644 If ((Arg2 == 0x02))
13645 {
13646 Return (0x01003200)
13647 }
13648 }
13649
13650 If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
13651 {
13652 Return ("CHT1")
13653 }
13654
13655 If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
13656 {
13657 Return ("EB")
13658 }
13659
13660 If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
13661 {
13662 Return ("CHV")
13663 }
13664
13665 If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
13666 {
13667 Return ("COMP1")
13668 }
13669
13670 If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
13671 {
13672 Return (Buffer (0x20)
13673 {
13674 /* 0000 */ 0x01, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13675 /* 0008 */ 0x03, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, // ........
13676 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13677 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
13678 })
13679 }
13680
13681 Return (Zero)
13682 }
13683 }
13684
13685 Device (CAM3)
13686 {
13687 Name (_ADR, Zero) // _ADR: Address
13688 Name (_HID, "INT33BE" /* Camera Sensor OV5693 */) // _HID: Hardware ID
13689 Name (_CID, "INT33BE" /* Camera Sensor OV5693 */) // _CID: Compatible ID
13690 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
13691 Name (_DDN, "OV5693") // _DDN: DOS Device Name
13692 Name (_UID, One) // _UID: Unique ID
13693 Name (_DEP, Package (0x02) // _DEP: Dependencies
13694 {
13695 I2C7,
13696 ^^I2C7.PMIC
13697 })
13698 Name (_PR0, Package (0x04) // _PR0: Power Resources for D0
13699 {
13700 P28X,
13701 P18X,
13702 P33X,
13703 CLK0
13704 })
13705 Name (WDEP, Package (0x02)
13706 {
13707 I2C7,
13708 ^^I2C7.PMI5
13709 })
13710 Name (WPR0, Package (0x04)
13711 {
13712 P28W,
13713 P18W,
13714 P33W,
13715 CLK0
13716 })
13717 Name (PLDB, Package (0x01)
13718 {
13719 Buffer (0x14)
13720 {
13721 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13722 /* 0008 */ 0x69, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // i.......
13723 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
13724 }
13725 })
13726 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
13727 {
13728 Return (PLDB) /* \_SB_.PCI0.I2C4.CAM3.PLDB */
13729 }
13730
13731 Method (_STA, 0, NotSerialized) // _STA: Status
13732 {
13733 Return (Zero)
13734 }
13735
13736 Method (_PS3, 0, Serialized) // _PS3: Power State 3
13737 {
13738 If ((^^^^GPO1.AVBL == One))
13739 {
13740 RCFG = Zero
13741 If (((FCFG == Zero) && (OSID == One)))
13742 {
13743 ^^^^GPO1.CRST = Zero
13744 }
13745 }
13746 }
13747
13748 Method (_PS0, 0, Serialized) // _PS0: Power State 0
13749 {
13750 RCFG = One
13751 If (((^^^^GPO1.AVBL == One) && (OSID == One)))
13752 {
13753 ^^^^GPO1.CRST = One
13754 }
13755 }
13756
13757 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
13758 {
13759 Name (WBUF, ResourceTemplate ()
13760 {
13761 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
13762 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
13763 )
13764 { // Pin list
13765 0x0034
13766 }
13767 I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
13768 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13769 0x00, ResourceConsumer, , Exclusive,
13770 )
13771 I2cSerialBusV2 (0x000C, ControllerInitiated, 0x00061A80,
13772 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13773 0x00, ResourceConsumer, , Exclusive,
13774 )
13775 I2cSerialBusV2 (0x0054, ControllerInitiated, 0x00061A80,
13776 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13777 0x00, ResourceConsumer, , Exclusive,
13778 )
13779 })
13780 Name (ABUF, ResourceTemplate ()
13781 {
13782 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
13783 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
13784 )
13785 { // Pin list
13786 0x0034
13787 }
13788 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
13789 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
13790 )
13791 { // Pin list
13792 0x0000
13793 }
13794 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
13795 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
13796 )
13797 { // Pin list
13798 0x0037
13799 }
13800 I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
13801 AddressingMode7Bit, "\\_SB.PCI0.I2C4",
13802 0x00, ResourceConsumer, , Exclusive,
13803 )
13804 })
13805 If ((OSID == One))
13806 {
13807 Return (WBUF) /* \_SB_.PCI0.I2C4.CAM3._CRS.WBUF */
13808 }
13809 Else
13810 {
13811 Return (ABUF) /* \_SB_.PCI0.I2C4.CAM3._CRS.ABUF */
13812 }
13813 }
13814
13815 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
13816 {
13817 If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
13818 {
13819 Local0 = Package (0x12)
13820 {
13821 "CamId",
13822 "ov5693",
13823 "CamType",
13824 "1",
13825 "CsiPort",
13826 "1",
13827 "CsiLanes",
13828 "2",
13829 "CsiFmt",
13830 "15",
13831 "CsiBayer",
13832 "2",
13833 "CamClk",
13834 "0",
13835 "Regulator1p8v",
13836 "0",
13837 "Regulator2p8v",
13838 "0"
13839 }
13840 Return (Local0)
13841 }
13842
13843 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
13844 {
13845 Return ("INT33BE")
13846 }
13847
13848 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
13849 {
13850 Return ("OV5693")
13851 }
13852
13853 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
13854 {
13855 Return ("12P2BA535")
13856 }
13857
13858 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
13859 {
13860 Return ("CHV_ITL_RVP")
13861 }
13862
13863 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
13864 {
13865 Return (0x0102)
13866 }
13867
13868 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
13869 {
13870 Return (One)
13871 }
13872
13873 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
13874 {
13875 Return (Zero)
13876 }
13877
13878 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
13879 {
13880 Return (One)
13881 }
13882
13883 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
13884 {
13885 Return (0x02)
13886 }
13887
13888 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
13889 {
13890 Return (Zero)
13891 }
13892
13893 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
13894 {
13895 Return ("AD5823")
13896 }
13897
13898 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
13899 {
13900 If ((Arg2 == One))
13901 {
13902 Return (0x03)
13903 }
13904
13905 If ((Arg2 == 0x02))
13906 {
13907 Return (0x04001000)
13908 }
13909
13910 If ((Arg2 == 0x03))
13911 {
13912 Return (0x04000C01)
13913 }
13914
13915 If ((Arg2 == 0x04))
13916 {
13917 Return (0x04005402)
13918 }
13919 }
13920
13921 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
13922 {
13923 If ((Arg2 == One))
13924 {
13925 Return (One)
13926 }
13927
13928 If ((Arg2 == 0x02))
13929 {
13930 Return (0x01003400)
13931 }
13932 }
13933
13934 If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
13935 {
13936 Return ("CHT")
13937 }
13938
13939 If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
13940 {
13941 Return ("FFD")
13942 }
13943
13944 If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
13945 {
13946 Return ("CHV")
13947 }
13948
13949 If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
13950 {
13951 Return ("INTEL")
13952 }
13953
13954 If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
13955 {
13956 Return (Buffer (0x20)
13957 {
13958 /* 0000 */ 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, // ........
13959 /* 0008 */ 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13960 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
13961 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
13962 })
13963 }
13964
13965 Return (Zero)
13966 }
13967 }
13968
13969 Device (CAM4)
13970 {
13971 Name (_ADR, Zero) // _ADR: Address
13972 Name (_HID, "INT33FB" /* MIPI-CSI Camera Sensor OV2722 */) // _HID: Hardware ID
13973 Name (_CID, "INT33FB" /* MIPI-CSI Camera Sensor OV2722 */) // _CID: Compatible ID
13974 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
13975 Name (_DDN, "OV2722") // _DDN: DOS Device Name
13976 Name (_UID, One) // _UID: Unique ID
13977 Name (_DEP, Package (0x02) // _DEP: Dependencies
13978 {
13979 I2C7,
13980 ^^I2C7.PMIC
13981 })
13982 Name (_PR0, Package (0x04) // _PR0: Power Resources for D0
13983 {
13984 P28X,
13985 P18X,
13986 P33X,
13987 CLK1
13988 })
13989 Name (WDEP, Package (0x02)
13990 {
13991 I2C7,
13992 ^^I2C7.PMI5
13993 })
13994 Name (WPR0, Package (0x04)
13995 {
13996 P28W,
13997 P18W,
13998 P33W,
13999 CLK1
14000 })
14001 Name (PLDB, Package (0x01)
14002 {
14003 Buffer (0x14)
14004 {
14005 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
14006 /* 0008 */ 0x61, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // a.......
14007 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
14008 }
14009 })
14010 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
14011 {
14012 Return (PLDB) /* \_SB_.PCI0.I2C4.CAM4.PLDB */
14013 }
14014
14015 Method (_STA, 0, NotSerialized) // _STA: Status
14016 {
14017 Return (Zero)
14018 }
14019
14020 Method (_PS3, 0, Serialized) // _PS3: Power State 3
14021 {
14022 If ((RCAM == One))
14023 {
14024 If ((^^^^GPO1.AVBL == One))
14025 {
14026 FCFG = Zero
14027 If (((RCFG == Zero) && (OSID == One)))
14028 {
14029 ^^^^GPO1.CRST = Zero
14030 }
14031 }
14032 }
14033 }
14034
14035 Method (_PS0, 0, Serialized) // _PS0: Power State 0
14036 {
14037 FCFG = One
14038 If ((RCAM == One))
14039 {
14040 If (((^^^^GPO1.AVBL == One) && (OSID == One)))
14041 {
14042 ^^^^GPO1.CRST = One
14043 }
14044 }
14045 }
14046
14047 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
14048 {
14049 Name (WBUF, ResourceTemplate ()
14050 {
14051 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
14052 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
14053 )
14054 { // Pin list
14055 0x0032
14056 }
14057 I2cSerialBusV2 (0x0036, ControllerInitiated, 0x00061A80,
14058 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
14059 0x00, ResourceConsumer, , Exclusive,
14060 )
14061 })
14062 Return (WBUF) /* \_SB_.PCI0.I2C4.CAM4._CRS.WBUF */
14063 }
14064
14065 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
14066 {
14067 If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
14068 {
14069 Local0 = Package (0x12)
14070 {
14071 "CamId",
14072 "ov2722",
14073 "CamType",
14074 "1",
14075 "CsiPort",
14076 "0",
14077 "CsiLanes",
14078 "1",
14079 "CsiFmt",
14080 "15",
14081 "CsiBayer",
14082 "0",
14083 "CamClk",
14084 "1",
14085 "Regulator1p8v",
14086 "0",
14087 "Regulator2p8v",
14088 "0"
14089 }
14090 Return (Local0)
14091 }
14092
14093 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
14094 {
14095 Return ("INT33FB")
14096 }
14097
14098 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
14099 {
14100 Return ("OV2722")
14101 }
14102
14103 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
14104 {
14105 Return ("13P2SF206")
14106 }
14107
14108 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
14109 {
14110 Return ("CHV_ITL_RVP")
14111 }
14112
14113 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
14114 {
14115 Return (0x0101)
14116 }
14117
14118 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
14119 {
14120 Return (Zero)
14121 }
14122
14123 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
14124 {
14125 Return (Zero)
14126 }
14127
14128 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
14129 {
14130 Return (Zero)
14131 }
14132
14133 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
14134 {
14135 Return (0x02)
14136 }
14137
14138 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
14139 {
14140 Return (One)
14141 }
14142
14143 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
14144 {
14145 Return (Zero)
14146 }
14147
14148 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
14149 {
14150 If ((Arg2 == One))
14151 {
14152 Return (One)
14153 }
14154
14155 If ((Arg2 == 0x02))
14156 {
14157 Return (0x04003600)
14158 }
14159 }
14160
14161 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
14162 {
14163 If ((Arg2 == One))
14164 {
14165 Return (0x02)
14166 }
14167
14168 If ((Arg2 == 0x02))
14169 {
14170 Return (0x01003200)
14171 }
14172
14173 If ((Arg2 == 0x03))
14174 {
14175 If ((RCAM == One))
14176 {
14177 Return (0x3601)
14178 }
14179 Else
14180 {
14181 Return (0x01003601)
14182 }
14183 }
14184 }
14185
14186 If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
14187 {
14188 Return ("CHT")
14189 }
14190
14191 If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
14192 {
14193 Return ("FFD")
14194 }
14195
14196 If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
14197 {
14198 Return ("CHV")
14199 }
14200
14201 If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
14202 {
14203 Return ("INTEL")
14204 }
14205
14206 If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
14207 {
14208 Return (Buffer (0x20)
14209 {
14210 /* 0000 */ 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
14211 /* 0008 */ 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
14212 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
14213 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
14214 })
14215 }
14216
14217 Return (Zero)
14218 }
14219 }
14220 }
14221
14222 Device (I2C5)
14223 {
14224 Name (_HID, "808622C1") // _HID: Hardware ID
14225 Name (_CID, "808622C1") // _CID: Compatible ID
14226 Name (_DDN, "Intel(R) I2C Controller #5 - 808622C5") // _DDN: DOS Device Name
14227 Name (_UID, 0x05) // _UID: Unique ID
14228 Name (_DEP, Package (0x01) // _DEP: Dependencies
14229 {
14230 PEPD
14231 })
14232 Name (RBUF, ResourceTemplate ()
14233 {
14234 Memory32Fixed (ReadWrite,
14235 0x00000000, // Address Base
14236 0x00001000, // Address Length
14237 _Y19)
14238 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
14239 {
14240 0x00000024,
14241 }
14242 FixedDMA (0x0018, 0x0000, Width32bit, )
14243 FixedDMA (0x0019, 0x0001, Width32bit, )
14244 })
14245 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
14246 {
14247 CreateDWordField (RBUF, \_SB.PCI0.I2C5._Y19._BAS, B0BA) // _BAS: Base Address
14248 CreateDWordField (RBUF, \_SB.PCI0.I2C5._Y19._LEN, B0LN) // _LEN: Length
14249 B0BA = I50A /* \I50A */
14250 B0LN = I50L /* \I50L */
14251 Return (RBUF) /* \_SB_.PCI0.I2C5.RBUF */
14252 }
14253
14254 Method (_STA, 0, NotSerialized) // _STA: Status
14255 {
14256 If (((I50A == Zero) || (L25D == One)))
14257 {
14258 Return (Zero)
14259 }
14260
14261 Return (0x0F)
14262 }
14263
14264 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
14265 {
14266 PSAT |= 0x03
14267 PSAT |= Zero
14268 }
14269
14270 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
14271 {
14272 PSAT &= 0xFFFFFFFC
14273 PSAT |= Zero
14274 }
14275
14276 OperationRegion (KEYS, SystemMemory, I51A, 0x0100)
14277 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
14278 {
14279 Offset (0x84),
14280 PSAT, 32
14281 }
14282
14283 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
14284 {
14285 If ((IC5P == Zero))
14286 {
14287 Return (Zero)
14288 }
14289 Else
14290 {
14291 Return (0x03)
14292 }
14293 }
14294 }
14295
14296 Device (I2C6)
14297 {
14298 Name (_HID, "808622C1") // _HID: Hardware ID
14299 Name (_CID, "808622C1") // _CID: Compatible ID
14300 Name (_DDN, "Intel(R) I2C Controller #6 - 808622C6") // _DDN: DOS Device Name
14301 Name (_UID, 0x06) // _UID: Unique ID
14302 Name (_DEP, Package (0x01) // _DEP: Dependencies
14303 {
14304 PEPD
14305 })
14306 Name (RBUF, ResourceTemplate ()
14307 {
14308 Memory32Fixed (ReadWrite,
14309 0x00000000, // Address Base
14310 0x00001000, // Address Length
14311 _Y1A)
14312 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
14313 {
14314 0x00000025,
14315 }
14316 FixedDMA (0x001A, 0x0002, Width32bit, )
14317 FixedDMA (0x001B, 0x0003, Width32bit, )
14318 })
14319 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
14320 {
14321 CreateDWordField (RBUF, \_SB.PCI0.I2C6._Y1A._BAS, B0BA) // _BAS: Base Address
14322 CreateDWordField (RBUF, \_SB.PCI0.I2C6._Y1A._LEN, B0LN) // _LEN: Length
14323 B0BA = I60A /* \I60A */
14324 B0LN = I60L /* \I60L */
14325 Return (RBUF) /* \_SB_.PCI0.I2C6.RBUF */
14326 }
14327
14328 Method (_STA, 0, NotSerialized) // _STA: Status
14329 {
14330 If (((I60A == Zero) || (L26D == One)))
14331 {
14332 Return (Zero)
14333 }
14334
14335 Return (0x0F)
14336 }
14337
14338 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
14339 {
14340 PSAT |= 0x03
14341 PSAT |= Zero
14342 }
14343
14344 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
14345 {
14346 PSAT &= 0xFFFFFFFC
14347 PSAT |= Zero
14348 }
14349
14350 OperationRegion (KEYS, SystemMemory, I61A, 0x0100)
14351 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
14352 {
14353 Offset (0x84),
14354 PSAT, 32
14355 }
14356
14357 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
14358 {
14359 If ((IC6P == Zero))
14360 {
14361 Return (Zero)
14362 }
14363 Else
14364 {
14365 Return (0x03)
14366 }
14367 }
14368
14369 Device (TCS0)
14370 {
14371 Name (_ADR, Zero) // _ADR: Address
14372 Name (_HID, "ELAN9010") // _HID: Hardware ID
14373 Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
14374 Name (_S0W, Zero) // _S0W: S0 Device Wake State
14375 Name (AHRV, One)
14376 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
14377 {
14378 Name (WBUF, ResourceTemplate ()
14379 {
14380 I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
14381 AddressingMode7Bit, "\\_SB.PCI0.I2C6",
14382 0x00, ResourceConsumer, , Exclusive,
14383 )
14384 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
14385 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
14386 )
14387 { // Pin list
14388 0x0014
14389 }
14390 GpioInt (Level, ActiveLow, Shared, PullDefault, 0x0000,
14391 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
14392 )
14393 { // Pin list
14394 0x004D
14395 }
14396 })
14397 Return (WBUF) /* \_SB_.PCI0.I2C6.TCS0._CRS.WBUF */
14398 }
14399
14400 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
14401 {
14402 Debug = "Method _DSM begin"
14403 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
14404 {
14405 Switch (ToInteger (Arg2))
14406 {
14407 Case (Zero)
14408 {
14409 Switch (ToInteger (Arg1))
14410 {
14411 Case (One)
14412 {
14413 Debug = "Method _DSM Function Query"
14414 Return (Buffer (One)
14415 {
14416 0x03 // .
14417 })
14418 }
14419 Default
14420 {
14421 Return (Buffer (One)
14422 {
14423 0x00 // .
14424 })
14425 }
14426
14427 }
14428 }
14429 Case (One)
14430 {
14431 Debug = "Method _DSM Function HID"
14432 Return (One)
14433 }
14434 Default
14435 {
14436 Return (Zero)
14437 }
14438
14439 }
14440 }
14441 Else
14442 {
14443 Return (Buffer (One)
14444 {
14445 0x00 // .
14446 })
14447 }
14448 }
14449
14450 Method (_STA, 0, NotSerialized) // _STA: Status
14451 {
14452 If ((BDID == One))
14453 {
14454 Return (Zero)
14455 }
14456
14457 If ((ITSA == 0x10))
14458 {
14459 Return (0x0F)
14460 }
14461
14462 Return (Zero)
14463 }
14464 }
14465
14466 Device (TCS1)
14467 {
14468 Name (_ADR, Zero) // _ADR: Address
14469 Name (_HID, "NTRG0001") // _HID: Hardware ID
14470 Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
14471 Name (_S0W, Zero) // _S0W: S0 Device Wake State
14472 Method (_PS3, 0, Serialized) // _PS3: Power State 3
14473 {
14474 If ((^^^^GPO1.AVBL == One))
14475 {
14476 ^^^^GPO1.TCD3 = Zero
14477 }
14478
14479 Sleep (0x78)
14480 }
14481
14482 Method (_PS0, 0, Serialized) // _PS0: Power State 0
14483 {
14484 If ((^^^^GPO1.AVBL == One))
14485 {
14486 ^^^^GPO1.TCD3 = One
14487 }
14488
14489 Sleep (0x78)
14490 }
14491
14492 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
14493 {
14494 Name (BBUF, ResourceTemplate ()
14495 {
14496 I2cSerialBusV2 (0x0060, ControllerInitiated, 0x00061A80,
14497 AddressingMode7Bit, "\\_SB.PCI0.I2C6",
14498 0x00, ResourceConsumer, , Exclusive,
14499 )
14500 GpioInt (Level, ActiveLow, Shared, PullDefault, 0x0000,
14501 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
14502 )
14503 { // Pin list
14504 0x004D
14505 }
14506 })
14507 Return (BBUF) /* \_SB_.PCI0.I2C6.TCS1._CRS.BBUF */
14508 }
14509
14510 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
14511 {
14512 Debug = "Method _DSM begin"
14513 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
14514 {
14515 Switch (ToInteger (Arg2))
14516 {
14517 Case (Zero)
14518 {
14519 Switch (ToInteger (Arg1))
14520 {
14521 Case (One)
14522 {
14523 Debug = "Method _DSM Function Query"
14524 Return (Buffer (One)
14525 {
14526 0x03 // .
14527 })
14528 }
14529 Default
14530 {
14531 Return (Buffer (One)
14532 {
14533 0x00 // .
14534 })
14535 }
14536
14537 }
14538 }
14539 Case (One)
14540 {
14541 Debug = "Method _DSM Function HID"
14542 Return (One)
14543 }
14544 Default
14545 {
14546 Return (One)
14547 }
14548
14549 }
14550 }
14551 Else
14552 {
14553 Return (Buffer (One)
14554 {
14555 0x00 // .
14556 })
14557 }
14558 }
14559
14560 Method (_STA, 0, NotSerialized) // _STA: Status
14561 {
14562 If ((BDID == One))
14563 {
14564 Return (Zero)
14565 }
14566
14567 Return (Zero)
14568 }
14569 }
14570
14571 Device (TCS2)
14572 {
14573 Name (_ADR, Zero) // _ADR: Address
14574 Name (_HID, "WCOM0016") // _HID: Hardware ID
14575 Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
14576 Name (_S0W, Zero) // _S0W: S0 Device Wake State
14577 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
14578 {
14579 Name (RBUF, ResourceTemplate ()
14580 {
14581 I2cSerialBusV2 (0x0009, ControllerInitiated, 0x00061A80,
14582 AddressingMode7Bit, "\\_SB.PCI0.I2C6",
14583 0x00, ResourceConsumer, , Exclusive,
14584 )
14585 GpioInt (Level, ActiveLow, Shared, PullDefault, 0x0000,
14586 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
14587 )
14588 { // Pin list
14589 0x0013
14590 }
14591 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
14592 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
14593 )
14594 { // Pin list
14595 0x0014
14596 }
14597 })
14598 Return (RBUF) /* \_SB_.PCI0.I2C6.TCS2._CRS.RBUF */
14599 }
14600
14601 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
14602 {
14603 Debug = "Method _DSM begin"
14604 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
14605 {
14606 Switch (ToInteger (Arg2))
14607 {
14608 Case (Zero)
14609 {
14610 Switch (ToInteger (Arg1))
14611 {
14612 Case (One)
14613 {
14614 Debug = "Method _DSM Function Query"
14615 Return (Buffer (One)
14616 {
14617 0x03 // .
14618 })
14619 }
14620 Default
14621 {
14622 Return (Buffer (One)
14623 {
14624 0x00 // .
14625 })
14626 }
14627
14628 }
14629 }
14630 Case (One)
14631 {
14632 Debug = "Method _DSM Function HID"
14633 Return (One)
14634 }
14635 Default
14636 {
14637 Return (Zero)
14638 }
14639
14640 }
14641 }
14642 Else
14643 {
14644 Return (Buffer (One)
14645 {
14646 0x00 // .
14647 })
14648 }
14649
14650 Return (Zero)
14651 }
14652
14653 Method (_STA, 0, NotSerialized) // _STA: Status
14654 {
14655 If ((DGEF == One))
14656 {
14657 Return (0x0F)
14658 }
14659 Else
14660 {
14661 Return (Zero)
14662 }
14663 }
14664 }
14665 }
14666
14667 Device (I2C7)
14668 {
14669 Name (_HID, "808622C1") // _HID: Hardware ID
14670 Name (_CID, "808622C1") // _CID: Compatible ID
14671 Name (_DDN, "Intel(R) I2C Controller #7 - 808622C7") // _DDN: DOS Device Name
14672 Name (_UID, 0x07) // _UID: Unique ID
14673 Name (_DEP, Package (0x01) // _DEP: Dependencies
14674 {
14675 PEPD
14676 })
14677 Method (_SEM, 0, NotSerialized)
14678 {
14679 If (((PMID == One) || (PMID == 0x02)))
14680 {
14681 ADBG ("$COVE")
14682 Return (One)
14683 }
14684 Else
14685 {
14686 Return (Zero)
14687 }
14688 }
14689
14690 Name (RBUF, ResourceTemplate ()
14691 {
14692 Memory32Fixed (ReadWrite,
14693 0x00000000, // Address Base
14694 0x00001000, // Address Length
14695 _Y1B)
14696 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
14697 {
14698 0x00000026,
14699 }
14700 FixedDMA (0x001C, 0x0004, Width32bit, )
14701 FixedDMA (0x001D, 0x0005, Width32bit, )
14702 })
14703 Method (_IRC, 0, NotSerialized) // _IRC: Inrush Current
14704 {
14705 }
14706
14707 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
14708 {
14709 CreateDWordField (RBUF, \_SB.PCI0.I2C7._Y1B._BAS, B0BA) // _BAS: Base Address
14710 CreateDWordField (RBUF, \_SB.PCI0.I2C7._Y1B._LEN, B0LN) // _LEN: Length
14711 B0BA = I70A /* \I70A */
14712 B0LN = I70L /* \I70L */
14713 Return (RBUF) /* \_SB_.PCI0.I2C7.RBUF */
14714 }
14715
14716 Method (_STA, 0, NotSerialized) // _STA: Status
14717 {
14718 If (((I70A == Zero) || (L27D == One)))
14719 {
14720 Return (Zero)
14721 }
14722
14723 Return (0x0F)
14724 }
14725
14726 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
14727 {
14728 If (((PMID == One) || (PMID == 0x02)))
14729 {
14730 Return (Zero)
14731 }
14732
14733 PSAT |= 0x03
14734 PSAT |= Zero
14735 }
14736
14737 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
14738 {
14739 PSAT &= 0xFFFFFFFC
14740 PSAT |= Zero
14741 }
14742
14743 OperationRegion (KEYS, SystemMemory, I71A, 0x0100)
14744 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
14745 {
14746 Offset (0x84),
14747 PSAT, 32
14748 }
14749
14750 OperationRegion (GPEX, GenericSerialBus, Zero, 0x0100)
14751 Field (GPEX, BufferAcc, NoLock, Preserve)
14752 {
14753 Connection (
14754 I2cSerialBusV2 (0x0023, ControllerInitiated, 0x000F4240,
14755 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
14756 0x00, ResourceConsumer, , Exclusive,
14757 )
14758 ),
14759 Offset (0x04),
14760 AccessAs (BufferAcc, AttribByte),
14761 P0DT, 8,
14762 Offset (0x0C),
14763 AccessAs (BufferAcc, AttribByte),
14764 P0CF, 8
14765 }
14766
14767 OperationRegion (GPUS, GenericSerialBus, Zero, 0x0100)
14768 Field (GPUS, BufferAcc, NoLock, Preserve)
14769 {
14770 Connection (
14771 I2cSerialBusV2 (0x005E, ControllerInitiated, 0x000F4240,
14772 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
14773 0x00, ResourceConsumer, , Exclusive,
14774 )
14775 ),
14776 Offset (0x03),
14777 AccessAs (BufferAcc, AttribByte),
14778 SIRQ, 8
14779 }
14780
14781 OperationRegion (PM6E, GenericSerialBus, Zero, 0x0100)
14782 Field (PM6E, BufferAcc, NoLock, Preserve)
14783 {
14784 Connection (
14785 I2cSerialBusV2 (0x006E, ControllerInitiated, 0x000F4240,
14786 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
14787 0x00, ResourceConsumer, , Exclusive,
14788 )
14789 ),
14790 Offset (0x4B),
14791 AccessAs (BufferAcc, AttribByte),
14792 PWM0, 8
14793 }
14794
14795 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
14796 {
14797 If ((IC7P == Zero))
14798 {
14799 Return (Zero)
14800 }
14801 Else
14802 {
14803 Return (0x03)
14804 }
14805 }
14806 }
14807
14808 Scope (URT1)
14809 {
14810 Device (BTH3)
14811 {
14812 Name (_HID, "OBDA8723") // _HID: Hardware ID
14813 Method (_STA, 0, NotSerialized) // _STA: Status
14814 {
14815 If ((BDID == One))
14816 {
14817 Return (0x0F)
14818 }
14819
14820 Return (Zero)
14821 }
14822
14823 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
14824 {
14825 Name (ABUF, ResourceTemplate ()
14826 {
14827 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
14828 0xC0, LittleEndian, ParityTypeEven, FlowControlHardware,
14829 0x0020, 0x0020, "\\_SB.PCI0.URT1",
14830 0x00, ResourceConsumer, , Exclusive,
14831 )
14832 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
14833 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
14834 )
14835 { // Pin list
14836 0x0001
14837 }
14838 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
14839 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
14840 )
14841 { // Pin list
14842 0x001B
14843 }
14844 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDown, 0x0000,
14845 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
14846 )
14847 { // Pin list
14848 0x002E
14849 }
14850 })
14851 Name (WBUF, ResourceTemplate ()
14852 {
14853 UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne,
14854 0xC0, LittleEndian, ParityTypeEven, FlowControlHardware,
14855 0x0020, 0x0020, "\\_SB.PCI0.URT1",
14856 0x00, ResourceConsumer, , Exclusive,
14857 )
14858 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
14859 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
14860 )
14861 { // Pin list
14862 0x001B
14863 }
14864 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
14865 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
14866 )
14867 { // Pin list
14868 0x0001
14869 }
14870 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDown, 0x0000,
14871 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
14872 )
14873 { // Pin list
14874 0x002E
14875 }
14876 })
14877 If ((OSID == One))
14878 {
14879 Return (WBUF) /* \_SB_.PCI0.URT1.BTH3._CRS.WBUF */
14880 }
14881
14882 Return (ABUF) /* \_SB_.PCI0.URT1.BTH3._CRS.ABUF */
14883 }
14884 }
14885 }
14886
14887 Scope (I2C2)
14888 {
14889 Device (CAMB)
14890 {
14891 Name (_ADR, Zero) // _ADR: Address
14892 Name (_HID, "INT33F8") // _HID: Hardware ID
14893 Name (_CID, "INT33F8") // _CID: Compatible ID
14894 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
14895 Name (_DDN, "GC2235") // _DDN: DOS Device Name
14896 Name (_UID, One) // _UID: Unique ID
14897 Name (TPR0, Package (0x04)
14898 {
14899 P18T,
14900 P18D,
14901 P28T,
14902 CLK4
14903 })
14904 Name (PLDB, Package (0x01)
14905 {
14906 Buffer (0x14)
14907 {
14908 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
14909 /* 0008 */ 0x69, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // i.......
14910 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
14911 }
14912 })
14913 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
14914 {
14915 Return (PLDB) /* \_SB_.PCI0.I2C2.CAMB.PLDB */
14916 }
14917
14918 Method (_STA, 0, NotSerialized) // _STA: Status
14919 {
14920 If ((BDID == One))
14921 {
14922 Return (0x0F)
14923 }
14924
14925 Return (Zero)
14926 }
14927
14928 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
14929 {
14930 Name (SBUF, ResourceTemplate ()
14931 {
14932 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
14933 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
14934 )
14935 { // Pin list
14936 0x0037
14937 }
14938 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
14939 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
14940 )
14941 { // Pin list
14942 0x002F
14943 }
14944 I2cSerialBusV2 (0x003C, ControllerInitiated, 0x00061A80,
14945 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
14946 0x00, ResourceConsumer, , Exclusive,
14947 )
14948 })
14949 Return (SBUF) /* \_SB_.PCI0.I2C2.CAMB._CRS.SBUF */
14950 }
14951
14952 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
14953 {
14954 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
14955 {
14956 Return ("INT33F8")
14957 }
14958
14959 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
14960 {
14961 Return ("GC2235")
14962 }
14963
14964 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
14965 {
14966 Return ("DCBINT05UFGFC")
14967 }
14968
14969 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
14970 {
14971 Return ("CHV_ITL_CR")
14972 }
14973
14974 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
14975 {
14976 Return (0x0104)
14977 }
14978
14979 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
14980 {
14981 Return (0x1020)
14982 }
14983
14984 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
14985 {
14986 Return (Zero)
14987 }
14988
14989 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
14990 {
14991 Return (One)
14992 }
14993
14994 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
14995 {
14996 Return (0x02)
14997 }
14998
14999 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
15000 {
15001 Return (Zero)
15002 }
15003
15004 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
15005 {
15006 Return (Zero)
15007 }
15008
15009 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
15010 {
15011 If ((Arg2 == One))
15012 {
15013 Return (One)
15014 }
15015
15016 If ((Arg2 == 0x02))
15017 {
15018 Return (0x04003C00)
15019 }
15020 }
15021
15022 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
15023 {
15024 If ((Arg2 == One))
15025 {
15026 Return (0x02)
15027 }
15028
15029 If ((Arg2 == 0x02))
15030 {
15031 Return (0x01003700)
15032 }
15033
15034 If ((Arg2 == 0x03))
15035 {
15036 Return (0x2F01)
15037 }
15038 }
15039
15040 If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
15041 {
15042 Return ("CHT_CR")
15043 }
15044
15045 If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
15046 {
15047 Return ("FFD")
15048 }
15049
15050 If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
15051 {
15052 Return ("CHV_CR")
15053 }
15054
15055 If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
15056 {
15057 Return ("INTEL")
15058 }
15059
15060 If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
15061 {
15062 Return (Buffer (0x20)
15063 {
15064 /* 0000 */ 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
15065 /* 0008 */ 0x05, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
15066 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
15067 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
15068 })
15069 }
15070
15071 Return (Zero)
15072 }
15073 }
15074
15075 Device (RTKC)
15076 {
15077 Name (_ADR, Zero) // _ADR: Address
15078 Name (_HID, "10EC5640" /* Realtek I2S Audio Codec */) // _HID: Hardware ID
15079 Name (_CID, "10EC5640" /* Realtek I2S Audio Codec */) // _CID: Compatible ID
15080 Name (_DDN, "ALC5642") // _DDN: DOS Device Name
15081 Name (_UID, One) // _UID: Unique ID
15082 Name (_DEP, Package (0x01) // _DEP: Dependencies
15083 {
15084 PEPD
15085 })
15086 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
15087 {
15088 Name (SBUF, ResourceTemplate ()
15089 {
15090 I2cSerialBusV2 (0x001C, ControllerInitiated, 0x00061A80,
15091 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
15092 0x00, ResourceConsumer, , Exclusive,
15093 )
15094 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
15095 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
15096 )
15097 { // Pin list
15098 0x0041
15099 }
15100 })
15101 Return (SBUF) /* \_SB_.PCI0.I2C2.RTKC._CRS.SBUF */
15102 }
15103
15104 Method (_STA, 0, NotSerialized) // _STA: Status
15105 {
15106 If ((OSID == One))
15107 {
15108 If ((BDID == One))
15109 {
15110 Return (0x0F)
15111 }
15112
15113 Return (Zero)
15114 }
15115
15116 Return (Zero)
15117 }
15118
15119 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
15120 {
15121 }
15122 }
15123
15124 Device (TLV1)
15125 {
15126 Name (_ADR, Zero) // _ADR: Address
15127 Name (_HID, "10TI3100") // _HID: Hardware ID
15128 Name (_CID, "10TI3100") // _CID: Compatible ID
15129 Name (_DDN, "TI TLV320AIC3100 Codec Controller ") // _DDN: DOS Device Name
15130 Name (_UID, One) // _UID: Unique ID
15131 Name (OBJ1, Package (0x0A)
15132 {
15133 One,
15134 0x017D7840,
15135 One,
15136 0x62,
15137 One,
15138 0x41,
15139 One,
15140 One,
15141 0x14,
15142 0xB3
15143 })
15144 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
15145 {
15146 Name (SBUF, ResourceTemplate ()
15147 {
15148 I2cSerialBusV2 (0x0018, ControllerInitiated, 0x00061A80,
15149 AddressingMode7Bit, "\\_SB.I2C2",
15150 0x00, ResourceConsumer, , Exclusive,
15151 )
15152 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
15153 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
15154 )
15155 { // Pin list
15156 0x0000
15157 }
15158 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
15159 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
15160 )
15161 { // Pin list
15162 0x0041
15163 }
15164 })
15165 Return (SBUF) /* \_SB_.PCI0.I2C2.TLV1._CRS.SBUF */
15166 }
15167
15168 Method (_STA, 0, NotSerialized) // _STA: Status
15169 {
15170 If (((OSID == 0x02) || (OSID == 0x04)))
15171 {
15172 If ((BDID == One))
15173 {
15174 Return (0x0F)
15175 }
15176 }
15177
15178 Return (Zero)
15179 }
15180
15181 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
15182 {
15183 }
15184 }
15185 }
15186
15187 Scope (I2C3)
15188 {
15189 Device (CAMC)
15190 {
15191 Name (_ADR, Zero) // _ADR: Address
15192 Name (_HID, "INT33F8") // _HID: Hardware ID
15193 Name (_CID, "INT33F8") // _CID: Compatible ID
15194 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
15195 Name (_DDN, "GC2235") // _DDN: DOS Device Name
15196 Name (_UID, 0x02) // _UID: Unique ID
15197 Name (TPR0, Package (0x04)
15198 {
15199 P18T,
15200 P18D,
15201 P28T,
15202 CLK2
15203 })
15204 Name (PLDB, Package (0x01)
15205 {
15206 Buffer (0x14)
15207 {
15208 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
15209 /* 0008 */ 0x61, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, // a.......
15210 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
15211 }
15212 })
15213 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
15214 {
15215 Return (PLDB) /* \_SB_.PCI0.I2C3.CAMC.PLDB */
15216 }
15217
15218 Method (_STA, 0, NotSerialized) // _STA: Status
15219 {
15220 If ((BDID == One))
15221 {
15222 Return (0x0F)
15223 }
15224
15225 Return (Zero)
15226 }
15227
15228 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
15229 {
15230 Name (RBUF, ResourceTemplate ()
15231 {
15232 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
15233 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
15234 )
15235 { // Pin list
15236 0x0032
15237 }
15238 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
15239 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
15240 )
15241 { // Pin list
15242 0x0034
15243 }
15244 I2cSerialBusV2 (0x003C, ControllerInitiated, 0x00061A80,
15245 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
15246 0x00, ResourceConsumer, , Exclusive,
15247 )
15248 })
15249 Return (RBUF) /* \_SB_.PCI0.I2C3.CAMC._CRS.RBUF */
15250 }
15251
15252 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
15253 {
15254 If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
15255 {
15256 Return ("INT33F8")
15257 }
15258
15259 If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
15260 {
15261 Return ("GC2235")
15262 }
15263
15264 If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
15265 {
15266 Return ("DCBINT05UFGFC")
15267 }
15268
15269 If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
15270 {
15271 Return ("CHV_ITL_CR")
15272 }
15273
15274 If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
15275 {
15276 Return (0x0104)
15277 }
15278
15279 If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
15280 {
15281 Return (0x1021)
15282 }
15283
15284 If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
15285 {
15286 Return (Zero)
15287 }
15288
15289 If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
15290 {
15291 Return (One)
15292 }
15293
15294 If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
15295 {
15296 Return (0x02)
15297 }
15298
15299 If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
15300 {
15301 Return (Zero)
15302 }
15303
15304 If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
15305 {
15306 Return (Zero)
15307 }
15308
15309 If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
15310 {
15311 If ((Arg2 == One))
15312 {
15313 Return (One)
15314 }
15315
15316 If ((Arg2 == 0x02))
15317 {
15318 Return (0x04003C00)
15319 }
15320 }
15321
15322 If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
15323 {
15324 If ((Arg2 == One))
15325 {
15326 Return (0x02)
15327 }
15328
15329 If ((Arg2 == 0x02))
15330 {
15331 Return (0x01003200)
15332 }
15333
15334 If ((Arg2 == 0x03))
15335 {
15336 Return (0x3401)
15337 }
15338 }
15339
15340 If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
15341 {
15342 Return ("CHT_CR")
15343 }
15344
15345 If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
15346 {
15347 Return ("FFD")
15348 }
15349
15350 If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
15351 {
15352 Return ("CHV_CR")
15353 }
15354
15355 If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
15356 {
15357 Return ("INTEL")
15358 }
15359
15360 If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
15361 {
15362 Return (Buffer (0x20)
15363 {
15364 /* 0000 */ 0x01, 0x01, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, // ........
15365 /* 0008 */ 0x05, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
15366 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
15367 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
15368 })
15369 }
15370
15371 Return (Zero)
15372 }
15373 }
15374
15375 Device (STRB)
15376 {
15377 Name (_ADR, Zero) // _ADR: Address
15378 Name (_HID, "INTCF1D") // _HID: Hardware ID
15379 Name (_CID, "INTCF1D") // _CID: Compatible ID
15380 Name (_SUB, "INTL0000") // _SUB: Subsystem ID
15381 Name (_DDN, "Flash LM3642") // _DDN: DOS Device Name
15382 Name (_UID, One) // _UID: Unique ID
15383 Method (_STA, 0, NotSerialized) // _STA: Status
15384 {
15385 If (((BDID == One) && (OSID == 0x04)))
15386 {
15387 Return (0x0F)
15388 }
15389
15390 Return (Zero)
15391 }
15392
15393 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
15394 {
15395 Name (SBUF, ResourceTemplate ()
15396 {
15397 I2cSerialBusV2 (0x0063, ControllerInitiated, 0x00061A80,
15398 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
15399 0x00, ResourceConsumer, , Exclusive,
15400 )
15401 })
15402 Return (SBUF) /* \_SB_.PCI0.I2C3.STRB._CRS.SBUF */
15403 }
15404 }
15405 }
15406
15407 Scope (I2C6)
15408 {
15409 Device (TCS3)
15410 {
15411 Name (_ADR, Zero) // _ADR: Address
15412 Name (_HID, "ATML1000" /* Atmel Touchscreen Controller */) // _HID: Hardware ID
15413 Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
15414 Name (_S0W, Zero) // _S0W: S0 Device Wake State
15415 Name (XPR0, Package (0x01)
15416 {
15417 P19X
15418 })
15419 Name (TPR0, Package (0x01)
15420 {
15421 P3P3
15422 })
15423 Name (XDEP, Package (0x02)
15424 {
15425 I2C7,
15426 ^^I2C7.PMI1
15427 })
15428 Name (TDEP, Package (0x02)
15429 {
15430 I2C7,
15431 ^^I2C7.PMI2
15432 })
15433 Method (_PS3, 0, Serialized) // _PS3: Power State 3
15434 {
15435 If ((^^^^GPO1.AVBL == One))
15436 {
15437 ^^^^GPO1.TCTL = Zero
15438 }
15439
15440 Sleep (0x78)
15441 }
15442
15443 Method (_PS0, 0, Serialized) // _PS0: Power State 0
15444 {
15445 If ((^^^^GPO1.AVBL == One))
15446 {
15447 ^^^^GPO1.TCTL = One
15448 }
15449
15450 Sleep (0x78)
15451 }
15452
15453 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
15454 {
15455 Name (WBUF, ResourceTemplate ()
15456 {
15457 I2cSerialBusV2 (0x004A, ControllerInitiated, 0x0019F0A0,
15458 AddressingMode7Bit, "\\_SB.PCI0.I2C6",
15459 0x00, ResourceConsumer, , Exclusive,
15460 )
15461 GpioInt (Level, ActiveLow, Shared, PullDefault, 0x0000,
15462 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
15463 )
15464 { // Pin list
15465 0x0011
15466 }
15467 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
15468 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
15469 )
15470 { // Pin list
15471 0x0019
15472 }
15473 })
15474 Name (ABUF, ResourceTemplate ()
15475 {
15476 I2cSerialBusV2 (0x004A, ControllerInitiated, 0x0019F0A0,
15477 AddressingMode7Bit, "\\_SB.PCI0.I2C6",
15478 0x00, ResourceConsumer, , Exclusive,
15479 )
15480 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
15481 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
15482 )
15483 { // Pin list
15484 0x0019
15485 }
15486 GpioInt (Level, ActiveHigh, Exclusive, PullNone, 0x0000,
15487 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
15488 )
15489 { // Pin list
15490 0xFFFF
15491 }
15492 GpioInt (Level, ActiveLow, Shared, PullDefault, 0x0000,
15493 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
15494 )
15495 { // Pin list
15496 0x0011
15497 }
15498 })
15499 If ((OSID == One))
15500 {
15501 Return (WBUF) /* \_SB_.PCI0.I2C6.TCS3._CRS.WBUF */
15502 }
15503
15504 Return (ABUF) /* \_SB_.PCI0.I2C6.TCS3._CRS.ABUF */
15505 }
15506
15507 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
15508 {
15509 Debug = "Method _DSM begin"
15510 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
15511 {
15512 Switch (ToInteger (Arg2))
15513 {
15514 Case (Zero)
15515 {
15516 Switch (ToInteger (Arg1))
15517 {
15518 Case (One)
15519 {
15520 Debug = "Method _DSM Function Query"
15521 Return (Buffer (One)
15522 {
15523 0x03 // .
15524 })
15525 }
15526 Default
15527 {
15528 Return (Buffer (One)
15529 {
15530 0x00 // .
15531 })
15532 }
15533
15534 }
15535 }
15536 Case (One)
15537 {
15538 Debug = "Method _DSM Function HID"
15539 Return (Zero)
15540 }
15541 Default
15542 {
15543 Return (Zero)
15544 }
15545
15546 }
15547 }
15548 Else
15549 {
15550 Return (Buffer (One)
15551 {
15552 0x00 // .
15553 })
15554 }
15555 }
15556
15557 Method (_STA, 0, NotSerialized) // _STA: Status
15558 {
15559 If (((BDID == One) && (MPNL == Zero)))
15560 {
15561 Return (0x0F)
15562 }
15563
15564 Return (Zero)
15565 }
15566 }
15567
15568 Device (SYN1)
15569 {
15570 Name (_ADR, Zero) // _ADR: Address
15571 Name (_HID, "SYNP1000") // _HID: Hardware ID
15572 Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
15573 Name (_S0W, Zero) // _S0W: S0 Device Wake State
15574 Name (_DEP, Package (0x02) // _DEP: Dependencies
15575 {
15576 GPO1,
15577 I2C6
15578 })
15579 Name (XPR0, Package (0x01)
15580 {
15581 P19X
15582 })
15583 Name (TPR0, Package (0x01)
15584 {
15585 P3P3
15586 })
15587 Method (_PS3, 0, Serialized) // _PS3: Power State 3
15588 {
15589 If ((OSID != 0x04))
15590 {
15591 If ((^^^^GPO1.AVBL == One))
15592 {
15593 ^^^^GPO1.TCTL = Zero
15594 }
15595 }
15596
15597 Sleep (0x78)
15598 }
15599
15600 Method (_PS0, 0, Serialized) // _PS0: Power State 0
15601 {
15602 If ((OSID != 0x04))
15603 {
15604 If ((^^^^GPO1.AVBL == One))
15605 {
15606 ^^^^GPO1.TCTL = One
15607 }
15608 }
15609
15610 Sleep (0x78)
15611 }
15612
15613 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
15614 {
15615 Name (RBUF, ResourceTemplate ()
15616 {
15617 I2cSerialBusV2 (0x002C, ControllerInitiated, 0x00061A80,
15618 AddressingMode7Bit, "\\_SB.PCI0.I2C6",
15619 0x00, ResourceConsumer, , Exclusive,
15620 )
15621 GpioInt (Level, ActiveLow, Shared, PullDefault, 0x0000,
15622 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
15623 )
15624 { // Pin list
15625 0x0011
15626 }
15627 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
15628 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
15629 )
15630 { // Pin list
15631 0x0019
15632 }
15633 })
15634 Return (RBUF) /* \_SB_.PCI0.I2C6.SYN1._CRS.RBUF */
15635 }
15636
15637 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
15638 {
15639 Debug = "Method _DSM begin"
15640 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
15641 {
15642 Switch (ToInteger (Arg2))
15643 {
15644 Case (Zero)
15645 {
15646 Switch (ToInteger (Arg1))
15647 {
15648 Case (One)
15649 {
15650 Debug = "Method _DSM Function Query"
15651 Return (Buffer (One)
15652 {
15653 0x03 // .
15654 })
15655 }
15656 Default
15657 {
15658 Return (Buffer (One)
15659 {
15660 0x00 // .
15661 })
15662 }
15663
15664 }
15665 }
15666 Case (One)
15667 {
15668 Debug = "Method _DSM Function HID"
15669 Return (0x20)
15670 }
15671 Default
15672 {
15673 Return (Zero)
15674 }
15675
15676 }
15677 }
15678 Else
15679 {
15680 Return (Buffer (One)
15681 {
15682 0x00 // .
15683 })
15684 }
15685 }
15686
15687 Method (_STA, 0, NotSerialized) // _STA: Status
15688 {
15689 If (((BDID == One) && (MPNL == 0x02)))
15690 {
15691 Return (0x0F)
15692 }
15693
15694 Return (Zero)
15695 }
15696 }
15697 }
15698
15699 Device (RP01)
15700 {
15701 Name (_ADR, 0x001C0000) // _ADR: Address
15702 OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
15703 Field (PXCS, AnyAcc, NoLock, Preserve)
15704 {
15705 Offset (0x10),
15706 L0SE, 1,
15707 Offset (0x11),
15708 Offset (0x12),
15709 , 13,
15710 LASX, 1,
15711 Offset (0x1A),
15712 ABPX, 1,
15713 , 2,
15714 PDCX, 1,
15715 , 2,
15716 PDSX, 1,
15717 Offset (0x1B),
15718 Offset (0x20),
15719 Offset (0x22),
15720 PSPX, 1,
15721 Offset (0x98),
15722 , 30,
15723 HPEX, 1,
15724 PMEX, 1
15725 }
15726
15727 Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
15728 {
15729 Offset (0x9C),
15730 , 30,
15731 HPSX, 1,
15732 PMSX, 1
15733 }
15734
15735 Device (PXSX)
15736 {
15737 Name (_ADR, Zero) // _ADR: Address
15738 OperationRegion (RPXX, PCI_Config, Zero, 0x10)
15739 Field (RPXX, AnyAcc, NoLock, Preserve)
15740 {
15741 VDID, 32
15742 }
15743
15744 OperationRegion (FLDR, PCI_Config, 0x44, 0x06)
15745 Field (FLDR, ByteAcc, NoLock, Preserve)
15746 {
15747 DCAP, 32,
15748 DCTR, 16
15749 }
15750
15751 Name (SPLX, Package (0x04)
15752 {
15753 Zero,
15754 Package (0x03)
15755 {
15756 0x80000000,
15757 0x80000000,
15758 0x80000000
15759 },
15760
15761 Package (0x03)
15762 {
15763 0x80000000,
15764 0x80000000,
15765 0x80000000
15766 },
15767
15768 Package (0x03)
15769 {
15770 0x80000000,
15771 0x80000000,
15772 0x80000000
15773 }
15774 })
15775 Method (SPLC, 0, Serialized)
15776 {
15777 DerefOf (SPLX [One]) [Zero] = Zero
15778 DerefOf (SPLX [One]) [One] = 0x04B0
15779 DerefOf (SPLX [One]) [0x02] = 0x03E8
15780 DerefOf (SPLX [0x02]) [Zero] = Zero
15781 DerefOf (SPLX [0x02]) [One] = 0x04B0
15782 DerefOf (SPLX [0x02]) [0x02] = 0x03E8
15783 DerefOf (SPLX [0x03]) [Zero] = Zero
15784 DerefOf (SPLX [0x03]) [One] = 0x04B0
15785 DerefOf (SPLX [0x03]) [0x02] = 0x03E8
15786 Return (SPLX) /* \_SB_.PCI0.RP01.PXSX.SPLX */
15787 }
15788
15789 Name (WANX, Package (0x03)
15790 {
15791 Zero,
15792 Package (0x03)
15793 {
15794 0x80000000,
15795 0x80000000,
15796 0x80000000
15797 },
15798
15799 Package (0x03)
15800 {
15801 0x80000000,
15802 0x80000000,
15803 0x80000000
15804 }
15805 })
15806 Method (WAND, 0, Serialized)
15807 {
15808 DerefOf (WANX [One]) [Zero] = Zero
15809 DerefOf (WANX [One]) [One] = 0x32
15810 DerefOf (WANX [One]) [0x02] = 0x32
15811 DerefOf (WANX [0x02]) [Zero] = One
15812 DerefOf (WANX [0x02]) [One] = 0x32
15813 DerefOf (WANX [0x02]) [0x02] = 0x32
15814 Return (WANX) /* \_SB_.PCI0.RP01.PXSX.WANX */
15815 }
15816
15817 Name (WRDX, Package (0x03)
15818 {
15819 Zero,
15820 Package (0x02)
15821 {
15822 0x80000000,
15823 0x8000
15824 },
15825
15826 Package (0x02)
15827 {
15828 0x80000000,
15829 0x8000
15830 }
15831 })
15832 Method (WRDD, 0, Serialized)
15833 {
15834 DerefOf (WRDX [One]) [Zero] = WDM1 /* \WDM1 */
15835 DerefOf (WRDX [One]) [One] = CID1 /* \CID1 */
15836 DerefOf (WRDX [0x02]) [Zero] = WDM2 /* \WDM2 */
15837 DerefOf (WRDX [0x02]) [One] = CID2 /* \CID2 */
15838 Return (WRDX) /* \_SB_.PCI0.RP01.PXSX.WRDX */
15839 }
15840
15841 Method (WIST, 0, Serialized)
15842 {
15843 If (CondRefOf (VDID))
15844 {
15845 Switch (VDID)
15846 {
15847 Case (0x095A8086)
15848 {
15849 Return (One)
15850 }
15851 Case (0x095B8086)
15852 {
15853 Return (One)
15854 }
15855 Case (0x31658086)
15856 {
15857 Return (One)
15858 }
15859 Case (0x31668086)
15860 {
15861 Return (One)
15862 }
15863 Case (0x08B18086)
15864 {
15865 Return (One)
15866 }
15867 Case (0x08B28086)
15868 {
15869 Return (One)
15870 }
15871 Case (0x08B38086)
15872 {
15873 Return (One)
15874 }
15875 Case (0x08B48086)
15876 {
15877 Return (One)
15878 }
15879 Case (0x24F38086)
15880 {
15881 Return (One)
15882 }
15883 Case (0x24F48086)
15884 {
15885 Return (One)
15886 }
15887 Case (0x24F58086)
15888 {
15889 Return (One)
15890 }
15891 Case (0x24F68086)
15892 {
15893 Return (One)
15894 }
15895 Default
15896 {
15897 Return (Zero)
15898 }
15899
15900 }
15901 }
15902 Else
15903 {
15904 Return (Zero)
15905 }
15906 }
15907
15908 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
15909 {
15910 }
15911 }
15912
15913 Method (HPME, 0, Serialized)
15914 {
15915 If (PMSX)
15916 {
15917 Local0 = 0xC8
15918 While (Local0)
15919 {
15920 PMSX = One
15921 If (PMSX)
15922 {
15923 Local0--
15924 }
15925 Else
15926 {
15927 Local0 = Zero
15928 }
15929 }
15930
15931 Notify (PXSX, 0x02) // Device Wake
15932 }
15933 }
15934
15935 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
15936 {
15937 }
15938
15939 Method (_S0W, 0, NotSerialized) // _S0W: S0 Device Wake State
15940 {
15941 Return (Zero)
15942 }
15943
15944 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
15945 {
15946 If (PICM)
15947 {
15948 Return (AR04) /* \_SB_.AR04 */
15949 }
15950
15951 Return (PR04) /* \_SB_.PR04 */
15952 }
15953 }
15954
15955 Device (RP02)
15956 {
15957 Name (_ADR, 0x001C0001) // _ADR: Address
15958 OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
15959 Field (PXCS, AnyAcc, NoLock, Preserve)
15960 {
15961 Offset (0x10),
15962 L0SE, 1,
15963 Offset (0x11),
15964 Offset (0x12),
15965 , 13,
15966 LASX, 1,
15967 Offset (0x1A),
15968 ABPX, 1,
15969 , 2,
15970 PDCX, 1,
15971 , 2,
15972 PDSX, 1,
15973 Offset (0x1B),
15974 Offset (0x20),
15975 Offset (0x22),
15976 PSPX, 1,
15977 Offset (0x98),
15978 , 30,
15979 HPEX, 1,
15980 PMEX, 1
15981 }
15982
15983 Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
15984 {
15985 Offset (0x9C),
15986 , 30,
15987 HPSX, 1,
15988 PMSX, 1
15989 }
15990
15991 Device (PXSX)
15992 {
15993 Name (_ADR, Zero) // _ADR: Address
15994 OperationRegion (RPXX, PCI_Config, Zero, 0x10)
15995 Field (RPXX, AnyAcc, NoLock, Preserve)
15996 {
15997 VDID, 32
15998 }
15999
16000 OperationRegion (FLDR, PCI_Config, 0x44, 0x06)
16001 Field (FLDR, ByteAcc, NoLock, Preserve)
16002 {
16003 DCAP, 32,
16004 DCTR, 16
16005 }
16006
16007 Name (SPLX, Package (0x04)
16008 {
16009 Zero,
16010 Package (0x03)
16011 {
16012 0x80000000,
16013 0x80000000,
16014 0x80000000
16015 },
16016
16017 Package (0x03)
16018 {
16019 0x80000000,
16020 0x80000000,
16021 0x80000000
16022 },
16023
16024 Package (0x03)
16025 {
16026 0x80000000,
16027 0x80000000,
16028 0x80000000
16029 }
16030 })
16031 Method (SPLC, 0, Serialized)
16032 {
16033 DerefOf (SPLX [One]) [Zero] = Zero
16034 DerefOf (SPLX [One]) [One] = 0x04B0
16035 DerefOf (SPLX [One]) [0x02] = 0x03E8
16036 DerefOf (SPLX [0x02]) [Zero] = Zero
16037 DerefOf (SPLX [0x02]) [One] = 0x04B0
16038 DerefOf (SPLX [0x02]) [0x02] = 0x03E8
16039 DerefOf (SPLX [0x03]) [Zero] = Zero
16040 DerefOf (SPLX [0x03]) [One] = 0x04B0
16041 DerefOf (SPLX [0x03]) [0x02] = 0x03E8
16042 Return (SPLX) /* \_SB_.PCI0.RP02.PXSX.SPLX */
16043 }
16044
16045 Name (WANX, Package (0x03)
16046 {
16047 Zero,
16048 Package (0x03)
16049 {
16050 0x80000000,
16051 0x80000000,
16052 0x80000000
16053 },
16054
16055 Package (0x03)
16056 {
16057 0x80000000,
16058 0x80000000,
16059 0x80000000
16060 }
16061 })
16062 Method (WAND, 0, Serialized)
16063 {
16064 DerefOf (WANX [One]) [Zero] = Zero
16065 DerefOf (WANX [One]) [One] = 0x32
16066 DerefOf (WANX [One]) [0x02] = 0x32
16067 DerefOf (WANX [0x02]) [Zero] = One
16068 DerefOf (WANX [0x02]) [One] = 0x32
16069 DerefOf (WANX [0x02]) [0x02] = 0x32
16070 Return (WANX) /* \_SB_.PCI0.RP02.PXSX.WANX */
16071 }
16072
16073 Name (WRDX, Package (0x03)
16074 {
16075 Zero,
16076 Package (0x02)
16077 {
16078 0x80000000,
16079 0x8000
16080 },
16081
16082 Package (0x02)
16083 {
16084 0x80000000,
16085 0x8000
16086 }
16087 })
16088 Method (WRDD, 0, Serialized)
16089 {
16090 DerefOf (WRDX [One]) [Zero] = WDM1 /* \WDM1 */
16091 DerefOf (WRDX [One]) [One] = CID1 /* \CID1 */
16092 DerefOf (WRDX [0x02]) [Zero] = WDM2 /* \WDM2 */
16093 DerefOf (WRDX [0x02]) [One] = CID2 /* \CID2 */
16094 Return (WRDX) /* \_SB_.PCI0.RP02.PXSX.WRDX */
16095 }
16096
16097 Method (WIST, 0, Serialized)
16098 {
16099 If (CondRefOf (VDID))
16100 {
16101 Switch (VDID)
16102 {
16103 Case (0x095A8086)
16104 {
16105 Return (One)
16106 }
16107 Case (0x095B8086)
16108 {
16109 Return (One)
16110 }
16111 Case (0x31658086)
16112 {
16113 Return (One)
16114 }
16115 Case (0x31668086)
16116 {
16117 Return (One)
16118 }
16119 Case (0x08B18086)
16120 {
16121 Return (One)
16122 }
16123 Case (0x08B28086)
16124 {
16125 Return (One)
16126 }
16127 Case (0x08B38086)
16128 {
16129 Return (One)
16130 }
16131 Case (0x08B48086)
16132 {
16133 Return (One)
16134 }
16135 Case (0x24F38086)
16136 {
16137 Return (One)
16138 }
16139 Case (0x24F48086)
16140 {
16141 Return (One)
16142 }
16143 Case (0x24F58086)
16144 {
16145 Return (One)
16146 }
16147 Case (0x24F68086)
16148 {
16149 Return (One)
16150 }
16151 Default
16152 {
16153 Return (Zero)
16154 }
16155
16156 }
16157 }
16158 Else
16159 {
16160 Return (Zero)
16161 }
16162 }
16163
16164 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
16165 {
16166 }
16167
16168 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
16169 {
16170 If ((Arg0 == ToUUID ("1730e71d-e5dd-4a34-be57-4d76b6a2fe37")))
16171 {
16172 If ((Arg2 == Zero))
16173 {
16174 If ((Arg1 == Zero))
16175 {
16176 Return (Buffer (One)
16177 {
16178 0x03 // .
16179 })
16180 }
16181 Else
16182 {
16183 Return (Buffer (One)
16184 {
16185 0x00 // .
16186 })
16187 }
16188 }
16189
16190 If ((Arg2 == One))
16191 {
16192 Switch (DerefOf (Arg3 [Zero]))
16193 {
16194 Case (Zero)
16195 {
16196 ^^^HIDD.HPEM (0x1B)
16197 }
16198 Case (One)
16199 {
16200 ^^^HIDD.HPEM (0x0B)
16201 }
16202
16203 }
16204
16205 Return (Zero)
16206 }
16207
16208 Return (Zero)
16209 }
16210 Else
16211 {
16212 Return (Zero)
16213 }
16214 }
16215 }
16216
16217 Method (HPME, 0, Serialized)
16218 {
16219 If (PMSX)
16220 {
16221 Local0 = 0xC8
16222 While (Local0)
16223 {
16224 PMSX = One
16225 If (PMSX)
16226 {
16227 Local0--
16228 }
16229 Else
16230 {
16231 Local0 = Zero
16232 }
16233 }
16234
16235 Notify (PXSX, 0x02) // Device Wake
16236 }
16237 }
16238
16239 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
16240 {
16241 If (PICM)
16242 {
16243 Return (AR05) /* \_SB_.AR05 */
16244 }
16245
16246 Return (PR05) /* \_SB_.PR05 */
16247 }
16248 }
16249
16250 Device (RP03)
16251 {
16252 Name (_ADR, 0x001C0002) // _ADR: Address
16253 OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
16254 Field (PXCS, AnyAcc, NoLock, Preserve)
16255 {
16256 Offset (0x10),
16257 L0SE, 1,
16258 Offset (0x11),
16259 Offset (0x12),
16260 , 13,
16261 LASX, 1,
16262 Offset (0x1A),
16263 ABPX, 1,
16264 , 2,
16265 PDCX, 1,
16266 , 2,
16267 PDSX, 1,
16268 Offset (0x1B),
16269 Offset (0x20),
16270 Offset (0x22),
16271 PSPX, 1,
16272 Offset (0x98),
16273 , 30,
16274 HPEX, 1,
16275 PMEX, 1
16276 }
16277
16278 Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
16279 {
16280 Offset (0x9C),
16281 , 30,
16282 HPSX, 1,
16283 PMSX, 1
16284 }
16285
16286 Device (PXSX)
16287 {
16288 Name (_ADR, Zero) // _ADR: Address
16289 OperationRegion (RPXX, PCI_Config, Zero, 0x10)
16290 Field (RPXX, AnyAcc, NoLock, Preserve)
16291 {
16292 VDID, 32
16293 }
16294
16295 OperationRegion (FLDR, PCI_Config, 0x44, 0x06)
16296 Field (FLDR, ByteAcc, NoLock, Preserve)
16297 {
16298 DCAP, 32,
16299 DCTR, 16
16300 }
16301
16302 Name (SPLX, Package (0x04)
16303 {
16304 Zero,
16305 Package (0x03)
16306 {
16307 0x80000000,
16308 0x80000000,
16309 0x80000000
16310 },
16311
16312 Package (0x03)
16313 {
16314 0x80000000,
16315 0x80000000,
16316 0x80000000
16317 },
16318
16319 Package (0x03)
16320 {
16321 0x80000000,
16322 0x80000000,
16323 0x80000000
16324 }
16325 })
16326 Method (SPLC, 0, Serialized)
16327 {
16328 DerefOf (SPLX [One]) [Zero] = Zero
16329 DerefOf (SPLX [One]) [One] = 0x04B0
16330 DerefOf (SPLX [One]) [0x02] = 0x03E8
16331 DerefOf (SPLX [0x02]) [Zero] = Zero
16332 DerefOf (SPLX [0x02]) [One] = 0x04B0
16333 DerefOf (SPLX [0x02]) [0x02] = 0x03E8
16334 DerefOf (SPLX [0x03]) [Zero] = Zero
16335 DerefOf (SPLX [0x03]) [One] = 0x04B0
16336 DerefOf (SPLX [0x03]) [0x02] = 0x03E8
16337 Return (SPLX) /* \_SB_.PCI0.RP03.PXSX.SPLX */
16338 }
16339
16340 Name (WANX, Package (0x03)
16341 {
16342 Zero,
16343 Package (0x03)
16344 {
16345 0x80000000,
16346 0x80000000,
16347 0x80000000
16348 },
16349
16350 Package (0x03)
16351 {
16352 0x80000000,
16353 0x80000000,
16354 0x80000000
16355 }
16356 })
16357 Method (WAND, 0, Serialized)
16358 {
16359 DerefOf (WANX [One]) [Zero] = Zero
16360 DerefOf (WANX [One]) [One] = 0x32
16361 DerefOf (WANX [One]) [0x02] = 0x32
16362 DerefOf (WANX [0x02]) [Zero] = One
16363 DerefOf (WANX [0x02]) [One] = 0x32
16364 DerefOf (WANX [0x02]) [0x02] = 0x32
16365 Return (WANX) /* \_SB_.PCI0.RP03.PXSX.WANX */
16366 }
16367
16368 Name (WRDX, Package (0x03)
16369 {
16370 Zero,
16371 Package (0x02)
16372 {
16373 0x80000000,
16374 0x8000
16375 },
16376
16377 Package (0x02)
16378 {
16379 0x80000000,
16380 0x8000
16381 }
16382 })
16383 Method (WRDD, 0, Serialized)
16384 {
16385 DerefOf (WRDX [One]) [Zero] = WDM1 /* \WDM1 */
16386 DerefOf (WRDX [One]) [One] = CID1 /* \CID1 */
16387 DerefOf (WRDX [0x02]) [Zero] = WDM2 /* \WDM2 */
16388 DerefOf (WRDX [0x02]) [One] = CID2 /* \CID2 */
16389 Return (WRDX) /* \_SB_.PCI0.RP03.PXSX.WRDX */
16390 }
16391
16392 Method (WIST, 0, Serialized)
16393 {
16394 If (CondRefOf (VDID))
16395 {
16396 Switch (VDID)
16397 {
16398 Case (0x095A8086)
16399 {
16400 Return (One)
16401 }
16402 Case (0x095B8086)
16403 {
16404 Return (One)
16405 }
16406 Case (0x31658086)
16407 {
16408 Return (One)
16409 }
16410 Case (0x31668086)
16411 {
16412 Return (One)
16413 }
16414 Case (0x08B18086)
16415 {
16416 Return (One)
16417 }
16418 Case (0x08B28086)
16419 {
16420 Return (One)
16421 }
16422 Case (0x08B38086)
16423 {
16424 Return (One)
16425 }
16426 Case (0x08B48086)
16427 {
16428 Return (One)
16429 }
16430 Case (0x24F38086)
16431 {
16432 Return (One)
16433 }
16434 Case (0x24F48086)
16435 {
16436 Return (One)
16437 }
16438 Case (0x24F58086)
16439 {
16440 Return (One)
16441 }
16442 Case (0x24F68086)
16443 {
16444 Return (One)
16445 }
16446 Default
16447 {
16448 Return (Zero)
16449 }
16450
16451 }
16452 }
16453 Else
16454 {
16455 Return (Zero)
16456 }
16457 }
16458
16459 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
16460 {
16461 }
16462 }
16463
16464 Method (HPME, 0, Serialized)
16465 {
16466 If (PMSX)
16467 {
16468 Local0 = 0xC8
16469 While (Local0)
16470 {
16471 PMSX = One
16472 If (PMSX)
16473 {
16474 Local0--
16475 }
16476 Else
16477 {
16478 Local0 = Zero
16479 }
16480 }
16481
16482 Notify (PXSX, 0x02) // Device Wake
16483 }
16484 }
16485
16486 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
16487 {
16488 If (PICM)
16489 {
16490 Return (AR06) /* \_SB_.AR06 */
16491 }
16492
16493 Return (PR06) /* \_SB_.PR06 */
16494 }
16495 }
16496
16497 Device (RP04)
16498 {
16499 Name (_ADR, 0x001C0003) // _ADR: Address
16500 OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
16501 Field (PXCS, AnyAcc, NoLock, Preserve)
16502 {
16503 Offset (0x10),
16504 L0SE, 1,
16505 Offset (0x11),
16506 Offset (0x12),
16507 , 13,
16508 LASX, 1,
16509 Offset (0x1A),
16510 ABPX, 1,
16511 , 2,
16512 PDCX, 1,
16513 , 2,
16514 PDSX, 1,
16515 Offset (0x1B),
16516 Offset (0x20),
16517 Offset (0x22),
16518 PSPX, 1,
16519 Offset (0x98),
16520 , 30,
16521 HPEX, 1,
16522 PMEX, 1
16523 }
16524
16525 Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
16526 {
16527 Offset (0x9C),
16528 , 30,
16529 HPSX, 1,
16530 PMSX, 1
16531 }
16532
16533 Device (PXSX)
16534 {
16535 Name (_ADR, Zero) // _ADR: Address
16536 OperationRegion (RPXX, PCI_Config, Zero, 0x10)
16537 Field (RPXX, AnyAcc, NoLock, Preserve)
16538 {
16539 VDID, 32
16540 }
16541
16542 OperationRegion (FLDR, PCI_Config, 0x44, 0x06)
16543 Field (FLDR, ByteAcc, NoLock, Preserve)
16544 {
16545 DCAP, 32,
16546 DCTR, 16
16547 }
16548
16549 Name (SPLX, Package (0x04)
16550 {
16551 Zero,
16552 Package (0x03)
16553 {
16554 0x80000000,
16555 0x80000000,
16556 0x80000000
16557 },
16558
16559 Package (0x03)
16560 {
16561 0x80000000,
16562 0x80000000,
16563 0x80000000
16564 },
16565
16566 Package (0x03)
16567 {
16568 0x80000000,
16569 0x80000000,
16570 0x80000000
16571 }
16572 })
16573 Method (SPLC, 0, Serialized)
16574 {
16575 DerefOf (SPLX [One]) [Zero] = Zero
16576 DerefOf (SPLX [One]) [One] = 0x04B0
16577 DerefOf (SPLX [One]) [0x02] = 0x03E8
16578 DerefOf (SPLX [0x02]) [Zero] = Zero
16579 DerefOf (SPLX [0x02]) [One] = 0x04B0
16580 DerefOf (SPLX [0x02]) [0x02] = 0x03E8
16581 DerefOf (SPLX [0x03]) [Zero] = Zero
16582 DerefOf (SPLX [0x03]) [One] = 0x04B0
16583 DerefOf (SPLX [0x03]) [0x02] = 0x03E8
16584 Return (SPLX) /* \_SB_.PCI0.RP04.PXSX.SPLX */
16585 }
16586
16587 Name (WANX, Package (0x03)
16588 {
16589 Zero,
16590 Package (0x03)
16591 {
16592 0x80000000,
16593 0x80000000,
16594 0x80000000
16595 },
16596
16597 Package (0x03)
16598 {
16599 0x80000000,
16600 0x80000000,
16601 0x80000000
16602 }
16603 })
16604 Method (WAND, 0, Serialized)
16605 {
16606 DerefOf (WANX [One]) [Zero] = Zero
16607 DerefOf (WANX [One]) [One] = 0x32
16608 DerefOf (WANX [One]) [0x02] = 0x32
16609 DerefOf (WANX [0x02]) [Zero] = One
16610 DerefOf (WANX [0x02]) [One] = 0x32
16611 DerefOf (WANX [0x02]) [0x02] = 0x32
16612 Return (WANX) /* \_SB_.PCI0.RP04.PXSX.WANX */
16613 }
16614
16615 Name (WRDX, Package (0x03)
16616 {
16617 Zero,
16618 Package (0x02)
16619 {
16620 0x80000000,
16621 0x8000
16622 },
16623
16624 Package (0x02)
16625 {
16626 0x80000000,
16627 0x8000
16628 }
16629 })
16630 Method (WRDD, 0, Serialized)
16631 {
16632 DerefOf (WRDX [One]) [Zero] = WDM1 /* \WDM1 */
16633 DerefOf (WRDX [One]) [One] = CID1 /* \CID1 */
16634 DerefOf (WRDX [0x02]) [Zero] = WDM2 /* \WDM2 */
16635 DerefOf (WRDX [0x02]) [One] = CID2 /* \CID2 */
16636 Return (WRDX) /* \_SB_.PCI0.RP04.PXSX.WRDX */
16637 }
16638
16639 Method (WIST, 0, Serialized)
16640 {
16641 If (CondRefOf (VDID))
16642 {
16643 Switch (VDID)
16644 {
16645 Case (0x095A8086)
16646 {
16647 Return (One)
16648 }
16649 Case (0x095B8086)
16650 {
16651 Return (One)
16652 }
16653 Case (0x31658086)
16654 {
16655 Return (One)
16656 }
16657 Case (0x31668086)
16658 {
16659 Return (One)
16660 }
16661 Case (0x08B18086)
16662 {
16663 Return (One)
16664 }
16665 Case (0x08B28086)
16666 {
16667 Return (One)
16668 }
16669 Case (0x08B38086)
16670 {
16671 Return (One)
16672 }
16673 Case (0x08B48086)
16674 {
16675 Return (One)
16676 }
16677 Case (0x24F38086)
16678 {
16679 Return (One)
16680 }
16681 Case (0x24F48086)
16682 {
16683 Return (One)
16684 }
16685 Case (0x24F58086)
16686 {
16687 Return (One)
16688 }
16689 Case (0x24F68086)
16690 {
16691 Return (One)
16692 }
16693 Default
16694 {
16695 Return (Zero)
16696 }
16697
16698 }
16699 }
16700 Else
16701 {
16702 Return (Zero)
16703 }
16704 }
16705
16706 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
16707 {
16708 }
16709 }
16710
16711 Method (HPME, 0, Serialized)
16712 {
16713 If (PMSX)
16714 {
16715 Local0 = 0xC8
16716 While (Local0)
16717 {
16718 PMSX = One
16719 If (PMSX)
16720 {
16721 Local0--
16722 }
16723 Else
16724 {
16725 Local0 = Zero
16726 }
16727 }
16728
16729 Notify (PXSX, 0x02) // Device Wake
16730 }
16731 }
16732
16733 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
16734 {
16735 If (PICM)
16736 {
16737 Return (AR07) /* \_SB_.AR07 */
16738 }
16739
16740 Return (PR07) /* \_SB_.PR07 */
16741 }
16742 }
16743
16744 Scope (\_SB)
16745 {
16746 PowerResource (USBC, 0x00, 0x0000)
16747 {
16748 Method (_STA, 0, NotSerialized) // _STA: Status
16749 {
16750 Return (0x0F)
16751 }
16752
16753 Method (_ON, 0, NotSerialized) // _ON_: Power On
16754 {
16755 }
16756
16757 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
16758 {
16759 }
16760 }
16761 }
16762
16763 Device (IISH)
16764 {
16765 Name (_HID, "808622D8") // _HID: Hardware ID
16766 Name (_CID, "808622D8") // _CID: Compatible ID
16767 Name (_DDN, "Intel(R) Integrated Sensor Hub - 808622D8") // _DDN: DOS Device Name
16768 Name (RBUF, ResourceTemplate ()
16769 {
16770 Memory32Fixed (ReadWrite,
16771 0x00000000, // Address Base
16772 0x00001000, // Address Length
16773 _Y1C)
16774 Memory32Fixed (ReadWrite,
16775 0x00000000, // Address Base
16776 0x00001000, // Address Length
16777 _Y1D)
16778 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16779 {
16780 0x00000072,
16781 }
16782 })
16783 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
16784 {
16785 CreateDWordField (RBUF, \_SB.PCI0.IISH._Y1C._BAS, B0BA) // _BAS: Base Address
16786 B0BA = ISH0 /* \ISH0 */
16787 CreateDWordField (RBUF, \_SB.PCI0.IISH._Y1D._BAS, B1BA) // _BAS: Base Address
16788 B1BA = ISH1 /* \ISH1 */
16789 Return (RBUF) /* \_SB_.PCI0.IISH.RBUF */
16790 }
16791
16792 Method (_STA, 0, NotSerialized) // _STA: Status
16793 {
16794 If (((ISH0 == Zero) || (ISHD == One)))
16795 {
16796 Return (Zero)
16797 }
16798
16799 Return (0x0F)
16800 }
16801
16802 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
16803 {
16804 }
16805
16806 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
16807 {
16808 PSAT |= 0x03
16809 PSAT |= Zero
16810 }
16811
16812 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
16813 {
16814 PSAT &= 0xFFFFFFFC
16815 PSAT |= Zero
16816 }
16817
16818 OperationRegion (KEYS, SystemMemory, ISH1, 0x0100)
16819 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
16820 {
16821 Offset (0x84),
16822 PSAT, 32
16823 }
16824
16825 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
16826 {
16827 If ((ISHP == Zero))
16828 {
16829 Return (Zero)
16830 }
16831 Else
16832 {
16833 Return (0x03)
16834 }
16835 }
16836 }
16837
16838 Device (LPEA)
16839 {
16840 Name (_HID, "808622A8") // _HID: Hardware ID
16841 Name (_CID, "808622A8") // _CID: Compatible ID
16842 Name (_DDN, "Intel(R) Low Power Audio Controller - 808622A8") // _DDN: DOS Device Name
16843 Name (_UID, One) // _UID: Unique ID
16844 Name (_SUB, "10CF0500") // _SUB: Subsystem ID
16845 Name (RBUF, ResourceTemplate ()
16846 {
16847 Memory32Fixed (ReadWrite,
16848 0x00000000, // Address Base
16849 0x00200000, // Address Length
16850 _Y1E)
16851 Memory32Fixed (ReadWrite,
16852 0x00000000, // Address Base
16853 0x00001000, // Address Length
16854 _Y1F)
16855 Memory32Fixed (ReadWrite,
16856 0x00000000, // Address Base
16857 0x00200000, // Address Length
16858 _Y20)
16859 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16860 {
16861 0x00000018,
16862 }
16863 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16864 {
16865 0x00000019,
16866 }
16867 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16868 {
16869 0x0000001A,
16870 }
16871 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16872 {
16873 0x0000001B,
16874 }
16875 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16876 {
16877 0x0000001C,
16878 }
16879 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16880 {
16881 0x0000001D,
16882 }
16883 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
16884 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
16885 )
16886 { // Pin list
16887 0x004F
16888 }
16889 })
16890 Name (WBUF, ResourceTemplate ()
16891 {
16892 Memory32Fixed (ReadWrite,
16893 0x00000000, // Address Base
16894 0x00200000, // Address Length
16895 _Y21)
16896 Memory32Fixed (ReadWrite,
16897 0x00000000, // Address Base
16898 0x00001000, // Address Length
16899 _Y22)
16900 Memory32Fixed (ReadWrite,
16901 0x00000000, // Address Base
16902 0x00200000, // Address Length
16903 _Y23)
16904 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16905 {
16906 0x00000018,
16907 }
16908 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16909 {
16910 0x00000019,
16911 }
16912 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16913 {
16914 0x0000001A,
16915 }
16916 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16917 {
16918 0x0000001B,
16919 }
16920 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16921 {
16922 0x0000001C,
16923 }
16924 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
16925 {
16926 0x0000001D,
16927 }
16928 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
16929 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
16930 )
16931 { // Pin list
16932 0x005B
16933 }
16934 })
16935 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
16936 {
16937 If (((BDID != 0x09) && (BDID != 0x0A)))
16938 {
16939 CreateDWordField (RBUF, \_SB.PCI0.LPEA._Y1E._BAS, B0BA) // _BAS: Base Address
16940 B0BA = LPE0 /* \LPE0 */
16941 CreateDWordField (RBUF, \_SB.PCI0.LPEA._Y1F._BAS, B1BA) // _BAS: Base Address
16942 B1BA = LPE1 /* \LPE1 */
16943 CreateDWordField (RBUF, \_SB.PCI0.LPEA._Y20._BAS, B2BA) // _BAS: Base Address
16944 B2BA = LPE2 /* \LPE2 */
16945 Return (RBUF) /* \_SB_.PCI0.LPEA.RBUF */
16946 }
16947
16948 CreateDWordField (WBUF, \_SB.PCI0.LPEA._Y21._BAS, B3BA) // _BAS: Base Address
16949 B3BA = LPE0 /* \LPE0 */
16950 CreateDWordField (WBUF, \_SB.PCI0.LPEA._Y22._BAS, B4BA) // _BAS: Base Address
16951 B4BA = LPE1 /* \LPE1 */
16952 CreateDWordField (WBUF, \_SB.PCI0.LPEA._Y23._BAS, B5BA) // _BAS: Base Address
16953 B5BA = LPE2 /* \LPE2 */
16954 Return (WBUF) /* \_SB_.PCI0.LPEA.WBUF */
16955 }
16956
16957 Method (_STA, 0, NotSerialized) // _STA: Status
16958 {
16959 If ((AUDE == One))
16960 {
16961 Return (0x0F)
16962 }
16963
16964 Return (Zero)
16965 }
16966
16967 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
16968 {
16969 }
16970
16971 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
16972 {
16973 PSAT |= 0x03
16974 PSAT |= Zero
16975 }
16976
16977 Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
16978 {
16979 If ((LPEP == Zero))
16980 {
16981 Return (Zero)
16982 }
16983 Else
16984 {
16985 Return (0x03)
16986 }
16987 }
16988
16989 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
16990 {
16991 PSAT &= 0xFFFFFFFC
16992 PSAT |= Zero
16993 Sleep (0x0A)
16994 }
16995
16996 OperationRegion (KEYS, SystemMemory, LPE1, 0x0100)
16997 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
16998 {
16999 Offset (0x84),
17000 PSAT, 32
17001 }
17002
17003 Device (ADMA)
17004 {
17005 Name (_ADR, Zero) // _ADR: Address
17006 Name (_HID, "ADMA22A8") // _HID: Hardware ID
17007 Name (_CID, "ADMA22A8") // _CID: Compatible ID
17008 Name (_DDN, "Intel(R) Audio DMA0 - DMA0F28") // _DDN: DOS Device Name
17009 Name (_UID, One) // _UID: Unique ID
17010 Name (RBUF, ResourceTemplate ()
17011 {
17012 Memory32Fixed (ReadWrite,
17013 0x00000000, // Address Base
17014 0x00200000, // Address Length
17015 _Y24)
17016 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
17017 {
17018 0x00000018,
17019 }
17020 })
17021 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17022 {
17023 CreateDWordField (RBUF, \_SB.PCI0.LPEA.ADMA._Y24._BAS, B3BA) // _BAS: Base Address
17024 B3BA = LPE0 /* \LPE0 */
17025 Return (RBUF) /* \_SB_.PCI0.LPEA.ADMA.RBUF */
17026 }
17027
17028 Method (_STA, 0, NotSerialized) // _STA: Status
17029 {
17030 If ((OSID != One))
17031 {
17032 Return (0x0F)
17033 }
17034
17035 Return (Zero)
17036 }
17037 }
17038 }
17039
17040 Scope (\_SB)
17041 {
17042 Device (VIBR)
17043 {
17044 Name (_ADR, Zero) // _ADR: Address
17045 Name (_HID, "VIBR22A8") // _HID: Hardware ID
17046 Name (_CID, "VIBR22A8") // _CID: Compatible ID
17047 Name (_DDN, "Intel(R) Vibra Driver - VIB8601") // _DDN: DOS Device Name
17048 Name (_UID, One) // _UID: Unique ID
17049 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17050 {
17051 Name (RBUF, ResourceTemplate ()
17052 {
17053 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
17054 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
17055 )
17056 { // Pin list
17057 0x0004
17058 }
17059 })
17060 Name (SBUF, ResourceTemplate ()
17061 {
17062 GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
17063 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
17064 )
17065 { // Pin list
17066 0x0001
17067 }
17068 })
17069 If ((BDID == One))
17070 {
17071 Return (SBUF) /* \_SB_.VIBR._CRS.SBUF */
17072 }
17073 Else
17074 {
17075 Return (RBUF) /* \_SB_.VIBR._CRS.RBUF */
17076 }
17077 }
17078
17079 Method (_STA, 0, NotSerialized) // _STA: Status
17080 {
17081 If (((OSID != One) && ((BDID != 0x08) &&
17082 (BDID != 0x0A))))
17083 {
17084 Return (0x0F)
17085 }
17086
17087 Return (Zero)
17088 }
17089 }
17090 }
17091
17092 Device (AMCR)
17093 {
17094 Name (_ADR, Zero) // _ADR: Address
17095 Name (_HID, "AMCR22A8") // _HID: Hardware ID
17096 Name (_CID, "AMCR22A8") // _CID: Compatible ID
17097 Name (_DDN, "Intel(R) Audio Machine Driver - AMCR0F28") // _DDN: DOS Device Name
17098 Name (_UID, One) // _UID: Unique ID
17099 Name (_DEP, Package (0x02) // _DEP: Dependencies
17100 {
17101 GPO2,
17102 ^I2C2.RTEK
17103 })
17104 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17105 {
17106 Name (RBUF, ResourceTemplate ()
17107 {
17108 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
17109 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
17110 )
17111 { // Pin list
17112 0x0004
17113 }
17114 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
17115 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
17116 )
17117 { // Pin list
17118 0x001B
17119 }
17120 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
17121 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
17122 )
17123 { // Pin list
17124 0x001C
17125 }
17126 })
17127 Return (RBUF) /* \_SB_.PCI0.AMCR._CRS.RBUF */
17128 }
17129
17130 Method (_STA, 0, NotSerialized) // _STA: Status
17131 {
17132 If ((BDID == One))
17133 {
17134 Return (Zero)
17135 }
17136
17137 If ((OSID != One))
17138 {
17139 Return (0x0F)
17140 }
17141
17142 Return (Zero)
17143 }
17144 }
17145
17146 Device (TIMC)
17147 {
17148 Name (_ADR, Zero) // _ADR: Address
17149 Name (_HID, "TIMC22A8") // _HID: Hardware ID
17150 Name (_CID, "TIMC22A8") // _CID: Compatible ID
17151 Name (_DDN, "Intel(R) Audio Machine Driver - TIMC22A8") // _DDN: DOS Device Name
17152 Name (_UID, One) // _UID: Unique ID
17153 Name (_DEP, Package (0x02) // _DEP: Dependencies
17154 {
17155 GPO2,
17156 ^I2C2.RTEK
17157 })
17158 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17159 {
17160 Name (RBUF, ResourceTemplate ()
17161 {
17162 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
17163 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
17164 )
17165 { // Pin list
17166 0x0004
17167 }
17168 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
17169 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
17170 )
17171 { // Pin list
17172 0x001B
17173 }
17174 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
17175 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
17176 )
17177 { // Pin list
17178 0x001C
17179 }
17180 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
17181 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
17182 )
17183 { // Pin list
17184 0x0000
17185 }
17186 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
17187 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
17188 )
17189 { // Pin list
17190 0x0041
17191 }
17192 })
17193 Return (RBUF) /* \_SB_.PCI0.TIMC._CRS.RBUF */
17194 }
17195
17196 Method (_STA, 0, NotSerialized) // _STA: Status
17197 {
17198 If (((OSID != One) && (BDID == One)))
17199 {
17200 Return (0x0F)
17201 }
17202
17203 Return (Zero)
17204 }
17205 }
17206
17207 Device (HAD0)
17208 {
17209 Name (_ADR, Zero) // _ADR: Address
17210 Name (_HID, "HAD022A8") // _HID: Hardware ID
17211 Name (_CID, "HAD022A8") // _CID: Compatible ID
17212 Name (_DDN, "Intel(R) HDMI Audio Driver - HAD") // _DDN: DOS Device Name
17213 Name (_UID, One) // _UID: Unique ID
17214 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17215 {
17216 Name (RBUF, ResourceTemplate ()
17217 {
17218 Memory32Fixed (ReadWrite,
17219 0x00065800, // Address Base
17220 0x00000140, // Address Length
17221 )
17222 })
17223 Return (RBUF) /* \_SB_.PCI0.HAD0._CRS.RBUF */
17224 }
17225
17226 Method (_STA, 0, NotSerialized) // _STA: Status
17227 {
17228 If ((OSID != One))
17229 {
17230 Return (0x0F)
17231 }
17232
17233 Return (Zero)
17234 }
17235 }
17236
17237 Device (SPRC)
17238 {
17239 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
17240 Name (_UID, 0x03) // _UID: Unique ID
17241 Name (RBUF, ResourceTemplate ()
17242 {
17243 Memory32Fixed (ReadWrite,
17244 0x00000000, // Address Base
17245 0x00000000, // Address Length
17246 _Y25)
17247 Memory32Fixed (ReadWrite,
17248 0x00000000, // Address Base
17249 0x00000000, // Address Length
17250 _Y26)
17251 Memory32Fixed (ReadWrite,
17252 0x00000000, // Address Base
17253 0x00000000, // Address Length
17254 _Y27)
17255 Memory32Fixed (ReadWrite,
17256 0x00000000, // Address Base
17257 0x00000000, // Address Length
17258 _Y28)
17259 Memory32Fixed (ReadWrite,
17260 0x00000000, // Address Base
17261 0x00000000, // Address Length
17262 _Y29)
17263 Memory32Fixed (ReadWrite,
17264 0x00000000, // Address Base
17265 0x00000000, // Address Length
17266 _Y2A)
17267 Memory32Fixed (ReadWrite,
17268 0x00000000, // Address Base
17269 0x00000000, // Address Length
17270 _Y2B)
17271 Memory32Fixed (ReadWrite,
17272 0x00000000, // Address Base
17273 0x00000000, // Address Length
17274 _Y2C)
17275 Memory32Fixed (ReadWrite,
17276 0x00000000, // Address Base
17277 0x00000000, // Address Length
17278 _Y2D)
17279 Memory32Fixed (ReadWrite,
17280 0x00000000, // Address Base
17281 0x00000000, // Address Length
17282 _Y2E)
17283 Memory32Fixed (ReadWrite,
17284 0x00000000, // Address Base
17285 0x00000000, // Address Length
17286 _Y2F)
17287 Memory32Fixed (ReadWrite,
17288 0x00000000, // Address Base
17289 0x00000000, // Address Length
17290 _Y30)
17291 Memory32Fixed (ReadWrite,
17292 0x00000000, // Address Base
17293 0x00000000, // Address Length
17294 _Y31)
17295 Memory32Fixed (ReadWrite,
17296 0x00000000, // Address Base
17297 0x00000000, // Address Length
17298 _Y32)
17299 Memory32Fixed (ReadWrite,
17300 0x00000000, // Address Base
17301 0x00000000, // Address Length
17302 _Y33)
17303 Memory32Fixed (ReadWrite,
17304 0x00000000, // Address Base
17305 0x00000000, // Address Length
17306 _Y34)
17307 Memory32Fixed (ReadWrite,
17308 0x00000000, // Address Base
17309 0x00000000, // Address Length
17310 _Y35)
17311 Memory32Fixed (ReadWrite,
17312 0x00000000, // Address Base
17313 0x00000000, // Address Length
17314 _Y36)
17315 Memory32Fixed (ReadWrite,
17316 0x00000000, // Address Base
17317 0x00000000, // Address Length
17318 _Y37)
17319 })
17320 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17321 {
17322 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y25._BAS, BR01) // _BAS: Base Address
17323 BR01 = EM1A /* \EM1A */
17324 If (((BR01 != Zero) && (BR01 != 0xFFFFF000)))
17325 {
17326 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y25._LEN, LN01) // _LEN: Length
17327 LN01 = EM1L /* \EM1L */
17328 }
17329
17330 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y26._BAS, BR02) // _BAS: Base Address
17331 BR02 = SI1A /* \SI1A */
17332 If (((BR02 != Zero) && (BR02 != 0xFFFFF000)))
17333 {
17334 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y26._LEN, LN02) // _LEN: Length
17335 LN02 = SI1L /* \SI1L */
17336 }
17337
17338 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y27._BAS, BR03) // _BAS: Base Address
17339 BR03 = SD1A /* \SD1A */
17340 If (((BR03 != Zero) && (BR03 != 0xFFFFF000)))
17341 {
17342 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y27._LEN, LN03) // _LEN: Length
17343 LN03 = SD1L /* \SD1L */
17344 }
17345
17346 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y28._BAS, BR04) // _BAS: Base Address
17347 BR04 = D11A /* \D11A */
17348 If (((BR04 != Zero) && (BR04 != 0xFFFFF000)))
17349 {
17350 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y28._LEN, LN04) // _LEN: Length
17351 LN04 = D11L /* \D11L */
17352 }
17353
17354 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y29._BAS, BR05) // _BAS: Base Address
17355 BR05 = P11A /* \P11A */
17356 If (((BR05 != Zero) && (BR05 != 0xFFFFF000)))
17357 {
17358 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y29._LEN, LN05) // _LEN: Length
17359 LN05 = P11L /* \P11L */
17360 }
17361
17362 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2A._BAS, BR06) // _BAS: Base Address
17363 BR06 = P21A /* \P21A */
17364 If (((BR06 != Zero) && (BR06 != 0xFFFFF000)))
17365 {
17366 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2A._LEN, LN06) // _LEN: Length
17367 LN06 = P21L /* \P21L */
17368 }
17369
17370 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2B._BAS, BR07) // _BAS: Base Address
17371 BR07 = U11A /* \U11A */
17372 If (((BR07 != Zero) && (BR07 != 0xFFFFF000)))
17373 {
17374 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2B._LEN, LN07) // _LEN: Length
17375 LN07 = U11L /* \U11L */
17376 }
17377
17378 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2C._BAS, BR08) // _BAS: Base Address
17379 BR08 = U21A /* \U21A */
17380 If (((BR08 != Zero) && (BR08 != 0xFFFFF000)))
17381 {
17382 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2C._LEN, LN08) // _LEN: Length
17383 LN08 = U21L /* \U21L */
17384 }
17385
17386 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2D._BAS, BR09) // _BAS: Base Address
17387 BR09 = SP1A /* \SP1A */
17388 If (((BR09 != Zero) && (BR09 != 0xFFFFF000)))
17389 {
17390 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2D._LEN, LN09) // _LEN: Length
17391 LN09 = SP1L /* \SP1L */
17392 }
17393
17394 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2E._BAS, BR10) // _BAS: Base Address
17395 BR10 = S21A /* \S21A */
17396 If (((BR10 != Zero) && (BR10 != 0xFFFFF000)))
17397 {
17398 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2E._LEN, LN10) // _LEN: Length
17399 LN10 = S21L /* \S21L */
17400 }
17401
17402 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2F._BAS, BR11) // _BAS: Base Address
17403 BR11 = S31A /* \S31A */
17404 If (((BR11 != Zero) && (BR11 != 0xFFFFF000)))
17405 {
17406 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2F._LEN, LN11) // _LEN: Length
17407 LN11 = S31L /* \S31L */
17408 }
17409
17410 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y30._BAS, BR12) // _BAS: Base Address
17411 BR12 = D21A /* \D21A */
17412 If (((BR12 != Zero) && (BR12 != 0xFFFFF000)))
17413 {
17414 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y30._LEN, LN12) // _LEN: Length
17415 LN12 = D21L /* \D21L */
17416 }
17417
17418 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y31._BAS, BR13) // _BAS: Base Address
17419 BR13 = I11A /* \I11A */
17420 If (((BR13 != Zero) && (BR13 != 0xFFFFF000)))
17421 {
17422 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y31._LEN, LN13) // _LEN: Length
17423 LN13 = I11L /* \I11L */
17424 }
17425
17426 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y32._BAS, BR14) // _BAS: Base Address
17427 BR14 = I21A /* \I21A */
17428 If (((BR14 != Zero) && (BR14 != 0xFFFFF000)))
17429 {
17430 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y32._LEN, LN14) // _LEN: Length
17431 LN14 = I21L /* \I21L */
17432 }
17433
17434 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y33._BAS, BR15) // _BAS: Base Address
17435 BR15 = I31A /* \I31A */
17436 If (((BR15 != Zero) && (BR15 != 0xFFFFF000)))
17437 {
17438 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y33._LEN, LN15) // _LEN: Length
17439 LN15 = I31L /* \I31L */
17440 }
17441
17442 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y34._BAS, BR16) // _BAS: Base Address
17443 BR16 = I41A /* \I41A */
17444 If (((BR16 != Zero) && (BR16 != 0xFFFFF000)))
17445 {
17446 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y34._LEN, LN16) // _LEN: Length
17447 LN16 = I41L /* \I41L */
17448 }
17449
17450 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y35._BAS, BR17) // _BAS: Base Address
17451 BR17 = I51A /* \I51A */
17452 If (((BR17 != Zero) && (BR17 != 0xFFFFF000)))
17453 {
17454 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y35._LEN, LN17) // _LEN: Length
17455 LN17 = I51L /* \I51L */
17456 }
17457
17458 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y36._BAS, BR18) // _BAS: Base Address
17459 BR18 = I61A /* \I61A */
17460 If (((BR18 != Zero) && (BR18 != 0xFFFFF000)))
17461 {
17462 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y36._LEN, LN18) // _LEN: Length
17463 LN18 = I61L /* \I61L */
17464 }
17465
17466 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y37._BAS, BR19) // _BAS: Base Address
17467 BR19 = I71A /* \I71A */
17468 If (((BR19 != Zero) && (BR19 != 0xFFFFF000)))
17469 {
17470 CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y37._LEN, LN19) // _LEN: Length
17471 LN19 = I71L /* \I71L */
17472 }
17473
17474 Return (RBUF) /* \_SB_.PCI0.SPRC.RBUF */
17475 }
17476 }
17477
17478 Device (SEC0)
17479 {
17480 Name (AHID, "TXE8086")
17481 Name (_ADR, 0x001A0000) // _ADR: Address
17482 Name (_DEP, Package (0x01) // _DEP: Dependencies
17483 {
17484 PEPD
17485 })
17486 Name (_S0W, 0x03) // _S0W: S0 Device Wake State
17487 OperationRegion (PMEB, PCI_Config, 0x84, 0x04)
17488 Field (PMEB, WordAcc, NoLock, Preserve)
17489 {
17490 Offset (0x01),
17491 PMEE, 1,
17492 , 6,
17493 PMES, 1
17494 }
17495
17496 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
17497 {
17498 }
17499
17500 Name (RBUF, ResourceTemplate ()
17501 {
17502 Memory32Fixed (ReadWrite,
17503 0x00000000, // Address Base
17504 0x00000000, // Address Length
17505 _Y38)
17506 })
17507 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17508 {
17509 If ((((OSYS == 0x07DF) || (OSID == 0x04)) && (PAVL !=
17510 Zero)))
17511 {
17512 CreateDWordField (RBUF, \_SB.PCI0.SEC0._Y38._BAS, B0BA) // _BAS: Base Address
17513 CreateDWordField (RBUF, \_SB.PCI0.SEC0._Y38._LEN, B0LN) // _LEN: Length
17514 B0BA = PAVB /* \PAVB */
17515 B0LN = PAVL /* \PAVL */
17516 Return (RBUF) /* \_SB_.PCI0.SEC0.RBUF */
17517 }
17518
17519 Return (Buffer (0x02)
17520 {
17521 0x79, 0x00 // y.
17522 })
17523 }
17524
17525 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
17526 {
17527 If (((Arg0 == ToUUID ("ad27b3f7-13af-4fa3-93c9-eefd1f9d6ac7")) && (PAVP != Zero)))
17528 {
17529 Switch (Arg2)
17530 {
17531 Case (Zero)
17532 {
17533 Return (0x03)
17534 }
17535 Case (One)
17536 {
17537 Return (PAVB) /* \PAVB */
17538 }
17539 Default
17540 {
17541 Return (Zero)
17542 }
17543
17544 }
17545 }
17546 }
17547 }
17548
17549 Device (BRCM)
17550 {
17551 Name (_ADR, One) // _ADR: Address
17552 Name (_DEP, Package (0x02) // _DEP: Dependencies
17553 {
17554 GPO2,
17555 GPO3
17556 })
17557 Name (_HID, "BCM4356") // _HID: Hardware ID
17558 Name (_CID, "BCM4356") // _CID: Compatible ID
17559 Method (_STA, 0, NotSerialized) // _STA: Status
17560 {
17561 If (((BDID != 0x08) && (BDID != 0x0A)))
17562 {
17563 Return (Zero)
17564 }
17565
17566 If (((OSID == 0x04) && (BTHM == One)))
17567 {
17568 Return (0x0F)
17569 }
17570
17571 Return (Zero)
17572 }
17573
17574 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
17575 {
17576 Return (Zero)
17577 }
17578
17579 Name (_S4W, 0x02) // _S4W: S4 Device Wake State
17580 Name (_S0W, 0x02) // _S0W: S0 Device Wake State
17581 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17582 {
17583 Name (RBUF, ResourceTemplate ()
17584 {
17585 Interrupt (ResourceConsumer, Edge, ActiveHigh, ExclusiveAndWake, ,, )
17586 {
17587 0x00000044,
17588 }
17589 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
17590 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
17591 )
17592 { // Pin list
17593 0x000A
17594 }
17595 GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
17596 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
17597 )
17598 { // Pin list
17599 0x004B
17600 }
17601 })
17602 Return (RBUF) /* \_SB_.PCI0.BRCM._CRS.RBUF */
17603 }
17604
17605 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
17606 {
17607 If ((^^^GPO3.AVBL == One))
17608 {
17609 ^^^GPO3.WFD3 = Zero
17610 }
17611 }
17612
17613 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
17614 {
17615 If ((^^^GPO3.AVBL == One))
17616 {
17617 ^^^GPO3.WFD3 = One
17618 }
17619 }
17620 }
17621
17622 Device (LNPW)
17623 {
17624 Name (_ADR, One) // _ADR: Address
17625 Name (_DEP, Package (0x02) // _DEP: Dependencies
17626 {
17627 GPO2,
17628 GPO3
17629 })
17630 Name (_HID, "INT8260") // _HID: Hardware ID
17631 Name (_CID, "INT8260") // _CID: Compatible ID
17632 Method (_STA, 0, NotSerialized) // _STA: Status
17633 {
17634 If ((OSID == 0x04))
17635 {
17636 If (((BTHM == 0x03) || ((BDID == 0x09) || (BDID == 0x0A))))
17637 {
17638 Return (0x0F)
17639 }
17640 }
17641
17642 Return (Zero)
17643 }
17644
17645 Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
17646 {
17647 Return (Zero)
17648 }
17649
17650 Name (_S4W, 0x02) // _S4W: S4 Device Wake State
17651 Name (_S0W, 0x02) // _S0W: S0 Device Wake State
17652 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17653 {
17654 Name (RBUF, ResourceTemplate ()
17655 {
17656 Interrupt (ResourceConsumer, Edge, ActiveHigh, ExclusiveAndWake, ,, )
17657 {
17658 0x00000044,
17659 }
17660 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
17661 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
17662 )
17663 { // Pin list
17664 0x000A
17665 }
17666 })
17667 Return (RBUF) /* \_SB_.PCI0.LNPW._CRS.RBUF */
17668 }
17669
17670 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
17671 {
17672 If ((^^^GPO3.AVBL == One))
17673 {
17674 ^^^GPO3.WFD3 = Zero
17675 }
17676 }
17677
17678 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
17679 {
17680 If ((^^^GPO3.AVBL == One))
17681 {
17682 ^^^GPO3.WFD3 = One
17683 }
17684 }
17685 }
17686 }
17687
17688 Scope (_SB.PCI0)
17689 {
17690 Device (ISP3)
17691 {
17692 Name (_ADR, 0x00030000) // _ADR: Address
17693 Method (_PR3, 0, NotSerialized) // _PR3: Power Resources for D3hot
17694 {
17695 Return (Package (0x01)
17696 {
17697 ID3C
17698 })
17699 }
17700
17701 PowerResource (ID3C, 0x00, 0x0000)
17702 {
17703 Method (_STA, 0, NotSerialized) // _STA: Status
17704 {
17705 If (((ISPD == 0x02) && (ISPE == One)))
17706 {
17707 Return (0x0F)
17708 }
17709 Else
17710 {
17711 Return (Zero)
17712 }
17713 }
17714
17715 Method (_ON, 0, NotSerialized) // _ON_: Power On
17716 {
17717 }
17718
17719 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
17720 {
17721 }
17722 }
17723 }
17724
17725 Device (GFX0)
17726 {
17727 Name (_ADR, 0x00020000) // _ADR: Address
17728 Name (PWMB, Zero)
17729 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
17730 {
17731 P33X
17732 })
17733 Name (UPR0, Package (0x01)
17734 {
17735 P33W
17736 })
17737 Name (VPR0, Package (0x02)
17738 {
17739 P18W,
17740 P33W
17741 })
17742 Name (XPR0, Package (0x01)
17743 {
17744 P06X
17745 })
17746 Name (TPR0, Package (0x01)
17747 {
17748 P12T
17749 })
17750 Name (_DEP, Package (0x03) // _DEP: Dependencies
17751 {
17752 PEPD,
17753 I2C7,
17754 ^I2C7.PMIC
17755 })
17756 Name (XDEP, Package (0x03)
17757 {
17758 PEPD,
17759 I2C7,
17760 ^I2C7.PMI1
17761 })
17762 Name (TDEP, Package (0x03)
17763 {
17764 PEPD,
17765 I2C7,
17766 ^I2C7.PMI2
17767 })
17768 Name (WDEP, Package (0x03)
17769 {
17770 PEPD,
17771 I2C7,
17772 ^I2C7.PMI5
17773 })
17774 Name (PDEP, Package (0x01)
17775 {
17776 PEPD
17777 })
17778 Name (SBUF, ResourceTemplate ()
17779 {
17780 I2cSerialBusV2 (0x002C, ControllerInitiated, 0x00061A80,
17781 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
17782 0x00, ResourceConsumer, , Exclusive,
17783 )
17784 })
17785 Name (RBUF, ResourceTemplate ()
17786 {
17787 I2cSerialBusV2 (0x002C, ControllerInitiated, 0x00061A80,
17788 AddressingMode7Bit, "\\_SB.PCI0.I2C6",
17789 0x00, ResourceConsumer, , Exclusive,
17790 )
17791 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
17792 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
17793 )
17794 { // Pin list
17795 0x0048
17796 }
17797 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
17798 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
17799 )
17800 { // Pin list
17801 0x003C
17802 }
17803 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
17804 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
17805 )
17806 { // Pin list
17807 0x0041
17808 }
17809 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
17810 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
17811 )
17812 { // Pin list
17813 0x0045
17814 }
17815 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
17816 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
17817 )
17818 { // Pin list
17819 0x0046
17820 }
17821 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
17822 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
17823 )
17824 { // Pin list
17825 0x003F
17826 }
17827 })
17828 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
17829 {
17830 If (((BDID == 0x08) || (BDID == 0x0A)))
17831 {
17832 Return (SBUF) /* \_SB_.PCI0.GFX0.SBUF */
17833 }
17834 Else
17835 {
17836 Return (RBUF) /* \_SB_.PCI0.GFX0.RBUF */
17837 }
17838 }
17839
17840 Name (_S0W, 0x03) // _S0W: S0 Device Wake State
17841 OperationRegion (LPS2, SystemMemory, P11A, 0x0100)
17842 Field (LPS2, DWordAcc, NoLock, WriteAsZeros)
17843 {
17844 Offset (0x10),
17845 BR0P, 32,
17846 Offset (0x84),
17847 PSAT, 32
17848 }
17849
17850 OperationRegion (POP1, SystemMemory, BR0P, 0x0810)
17851 Field (POP1, DWordAcc, NoLock, Preserve)
17852 {
17853 PWMC, 32,
17854 Offset (0x804),
17855 RSTA, 1,
17856 RSTF, 1,
17857 Offset (0x808)
17858 }
17859
17860 OperationRegion (PMCS, PCI_Config, 0xD4, 0x08)
17861 Field (PMCS, DWordAcc, NoLock, Preserve)
17862 {
17863 PSPS, 32
17864 }
17865
17866 Method (_PS0, 0, Serialized) // _PS0: Power State 0
17867 {
17868 Local0 = ^^^MBID.READ (0x04, 0xD5, 0x0F)
17869 Local0 &= 0xFFFFFFFE
17870 ^^^MBID.WRIT (0x04, 0xD5, 0x0F, Local0)
17871 Local0 = ^^^MBID.READ (0x04, 0xD5, 0x0F)
17872 If ((OSID != 0x04))
17873 {
17874 If (((L11D != One) && (SOCS >= 0x10)))
17875 {
17876 Local0 = PSAT /* \_SB_.PCI0.GFX0.PSAT */
17877 If (((Local0 & 0x03) == 0x03))
17878 {
17879 PSAT &= 0xFFFFFFFC
17880 Local1 = PSAT /* \_SB_.PCI0.GFX0.PSAT */
17881 RSTA = Zero
17882 RSTF = Zero
17883 RSTA = One
17884 RSTF = One
17885 PWMB |= 0xC0000000
17886 PWMC = PWMB /* \_SB_.PCI0.GFX0.PWMB */
17887 }
17888 }
17889 }
17890 }
17891
17892 Method (_PS3, 0, Serialized) // _PS3: Power State 3
17893 {
17894 Local0 = ^^^MBID.READ (0x04, 0xD5, 0x0F)
17895 Local0 |= One
17896 ^^^MBID.WRIT (0x04, 0xD5, 0x0F, Local0)
17897 Local0 = ^^^MBID.READ (0x04, 0xD5, 0x0F)
17898 Notify (\_PR.CPU0, 0xC0) // Hardware-Specific
17899 Notify (\_PR.CPU1, 0xC0) // Hardware-Specific
17900 Notify (\_PR.CPU2, 0xC0) // Hardware-Specific
17901 Notify (\_PR.CPU3, 0xC0) // Hardware-Specific
17902 If ((OSID != 0x04))
17903 {
17904 If (((L11D != One) && (SOCS >= 0x10)))
17905 {
17906 Local2 = PSPS /* \_SB_.PCI0.GFX0.PSPS */
17907 Local2 &= 0x03
17908 If ((Local2 == 0x03))
17909 {
17910 PWMB = PWMC /* \_SB_.PCI0.GFX0.PWMC */
17911 PSAT |= 0x03
17912 Local0 = PSAT /* \_SB_.PCI0.GFX0.PSAT */
17913 }
17914 }
17915 }
17916 }
17917
17918 Method (_DOS, 1, NotSerialized) // _DOS: Disable Output Switching
17919 {
17920 DSEN = (Arg0 & 0x07)
17921 }
17922
17923 Method (_DOD, 0, NotSerialized) // _DOD: Display Output Devices
17924 {
17925 If ((ISPE == One))
17926 {
17927 NDID = One
17928 }
17929 Else
17930 {
17931 NDID = Zero
17932 }
17933
17934 If ((DIDL != Zero))
17935 {
17936 DID1 = SDDL (DIDL)
17937 }
17938
17939 If ((DDL2 != Zero))
17940 {
17941 DID2 = SDDL (DDL2)
17942 }
17943
17944 If ((DDL3 != Zero))
17945 {
17946 DID3 = SDDL (DDL3)
17947 }
17948
17949 If ((DDL4 != Zero))
17950 {
17951 DID4 = SDDL (DDL4)
17952 }
17953
17954 If ((DDL5 != Zero))
17955 {
17956 DID5 = SDDL (DDL5)
17957 }
17958
17959 If ((NDID == One))
17960 {
17961 Name (TMP1, Package (0x02)
17962 {
17963 0xFFFFFFFF,
17964 0xFFFFFFFF
17965 })
17966 TMP1 [Zero] = (0x00010000 | DID1)
17967 If ((ISPE == One))
17968 {
17969 TMP1 [One] = 0x000222B8
17970 }
17971 Else
17972 {
17973 TMP1 [One] = (0x00010000 | DID2)
17974 }
17975
17976 Return (TMP1) /* \_SB_.PCI0.GFX0._DOD.TMP1 */
17977 }
17978
17979 If ((NDID == 0x02))
17980 {
17981 Name (TMP2, Package (0x03)
17982 {
17983 0xFFFFFFFF,
17984 0xFFFFFFFF,
17985 0xFFFFFFFF
17986 })
17987 TMP2 [Zero] = (0x00010000 | DID1)
17988 TMP2 [One] = (0x00010000 | DID2)
17989 If ((ISPE == One))
17990 {
17991 TMP2 [0x02] = 0x000222B8
17992 }
17993 Else
17994 {
17995 TMP2 [0x02] = (0x00010000 | DID3)
17996 }
17997
17998 Return (TMP2) /* \_SB_.PCI0.GFX0._DOD.TMP2 */
17999 }
18000
18001 If ((NDID == 0x03))
18002 {
18003 Name (TMP3, Package (0x04)
18004 {
18005 0xFFFFFFFF,
18006 0xFFFFFFFF,
18007 0xFFFFFFFF,
18008 0xFFFFFFFF
18009 })
18010 TMP3 [Zero] = (0x00010000 | DID1)
18011 TMP3 [One] = (0x00010000 | DID2)
18012 TMP3 [0x02] = (0x00010000 | DID3)
18013 If ((ISPE == One))
18014 {
18015 TMP3 [0x03] = 0x000222B8
18016 }
18017 Else
18018 {
18019 TMP3 [0x03] = (0x00010000 | DID4)
18020 }
18021
18022 Return (TMP3) /* \_SB_.PCI0.GFX0._DOD.TMP3 */
18023 }
18024
18025 If ((NDID == 0x04))
18026 {
18027 Name (TMP4, Package (0x05)
18028 {
18029 0xFFFFFFFF,
18030 0xFFFFFFFF,
18031 0xFFFFFFFF,
18032 0xFFFFFFFF,
18033 0xFFFFFFFF
18034 })
18035 TMP4 [Zero] = (0x00010000 | DID1)
18036 TMP4 [One] = (0x00010000 | DID2)
18037 TMP4 [0x02] = (0x00010000 | DID3)
18038 TMP4 [0x03] = (0x00010000 | DID4)
18039 If ((ISPE == One))
18040 {
18041 TMP4 [0x04] = 0x000222B8
18042 }
18043 Else
18044 {
18045 TMP4 [0x04] = (0x00010000 | DID5)
18046 }
18047
18048 Return (TMP4) /* \_SB_.PCI0.GFX0._DOD.TMP4 */
18049 }
18050
18051 If ((NDID > 0x04))
18052 {
18053 Name (TMP5, Package (0x06)
18054 {
18055 0xFFFFFFFF,
18056 0xFFFFFFFF,
18057 0xFFFFFFFF,
18058 0xFFFFFFFF,
18059 0xFFFFFFFF,
18060 0xFFFFFFFF
18061 })
18062 TMP5 [Zero] = (0x00010000 | DID1)
18063 TMP5 [One] = (0x00010000 | DID2)
18064 TMP5 [0x02] = (0x00010000 | DID3)
18065 TMP5 [0x03] = (0x00010000 | DID4)
18066 TMP5 [0x04] = (0x00010000 | DID5)
18067 If ((ISPE == One))
18068 {
18069 TMP5 [0x05] = 0x000222B8
18070 }
18071 Else
18072 {
18073 TMP5 [0x05] = (0x00010000 | DID6)
18074 }
18075
18076 Return (TMP5) /* \_SB_.PCI0.GFX0._DOD.TMP5 */
18077 }
18078
18079 Return (Package (0x02)
18080 {
18081 0x0400,
18082 0x000222B8
18083 })
18084 }
18085
18086 Device (DD01)
18087 {
18088 Method (_ADR, 0, Serialized) // _ADR: Address
18089 {
18090 If ((DID1 == Zero))
18091 {
18092 Return (One)
18093 }
18094 Else
18095 {
18096 Return ((0xFFFF & DID1))
18097 }
18098 }
18099
18100 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
18101 {
18102 Return (CDDS (DID1))
18103 }
18104
18105 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
18106 {
18107 Return (NDDS (DID1))
18108 }
18109
18110 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
18111 {
18112 If (((Arg0 & 0xC0000000) == 0xC0000000))
18113 {
18114 CSTE = NSTE /* \NSTE */
18115 }
18116 }
18117
18118 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
18119 {
18120 Return (Package (0x67)
18121 {
18122 0x50,
18123 0x32,
18124 Zero,
18125 One,
18126 0x02,
18127 0x03,
18128 0x04,
18129 0x05,
18130 0x06,
18131 0x07,
18132 0x08,
18133 0x09,
18134 0x0A,
18135 0x0B,
18136 0x0C,
18137 0x0D,
18138 0x0E,
18139 0x0F,
18140 0x10,
18141 0x11,
18142 0x12,
18143 0x13,
18144 0x14,
18145 0x15,
18146 0x16,
18147 0x17,
18148 0x18,
18149 0x19,
18150 0x1A,
18151 0x1B,
18152 0x1C,
18153 0x1D,
18154 0x1E,
18155 0x1F,
18156 0x20,
18157 0x21,
18158 0x22,
18159 0x23,
18160 0x24,
18161 0x25,
18162 0x26,
18163 0x27,
18164 0x28,
18165 0x29,
18166 0x2A,
18167 0x2B,
18168 0x2C,
18169 0x2D,
18170 0x2E,
18171 0x2F,
18172 0x30,
18173 0x31,
18174 0x32,
18175 0x33,
18176 0x34,
18177 0x35,
18178 0x36,
18179 0x37,
18180 0x38,
18181 0x39,
18182 0x3A,
18183 0x3B,
18184 0x3C,
18185 0x3D,
18186 0x3E,
18187 0x3F,
18188 0x40,
18189 0x41,
18190 0x42,
18191 0x43,
18192 0x44,
18193 0x45,
18194 0x46,
18195 0x47,
18196 0x48,
18197 0x49,
18198 0x4A,
18199 0x4B,
18200 0x4C,
18201 0x4D,
18202 0x4E,
18203 0x4F,
18204 0x50,
18205 0x51,
18206 0x52,
18207 0x53,
18208 0x54,
18209 0x55,
18210 0x56,
18211 0x57,
18212 0x58,
18213 0x59,
18214 0x5A,
18215 0x5B,
18216 0x5C,
18217 0x5D,
18218 0x5E,
18219 0x5F,
18220 0x60,
18221 0x61,
18222 0x62,
18223 0x63,
18224 0x64
18225 })
18226 }
18227
18228 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
18229 {
18230 If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
18231 {
18232 AINT (One, Arg0)
18233 BRTL = Arg0
18234 }
18235 }
18236
18237 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
18238 {
18239 Return (BRTL) /* \BRTL */
18240 }
18241 }
18242
18243 Device (DD02)
18244 {
18245 Method (_ADR, 0, Serialized) // _ADR: Address
18246 {
18247 If ((DID2 == Zero))
18248 {
18249 Return (0x02)
18250 }
18251 Else
18252 {
18253 Return ((0xFFFF & DID2))
18254 }
18255 }
18256
18257 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
18258 {
18259 Return (CDDS (DID2))
18260 }
18261
18262 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
18263 {
18264 Return (NDDS (DID2))
18265 }
18266
18267 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
18268 {
18269 If (((Arg0 & 0xC0000000) == 0xC0000000))
18270 {
18271 CSTE = NSTE /* \NSTE */
18272 }
18273 }
18274
18275 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
18276 {
18277 Return (Package (0x67)
18278 {
18279 0x50,
18280 0x32,
18281 Zero,
18282 One,
18283 0x02,
18284 0x03,
18285 0x04,
18286 0x05,
18287 0x06,
18288 0x07,
18289 0x08,
18290 0x09,
18291 0x0A,
18292 0x0B,
18293 0x0C,
18294 0x0D,
18295 0x0E,
18296 0x0F,
18297 0x10,
18298 0x11,
18299 0x12,
18300 0x13,
18301 0x14,
18302 0x15,
18303 0x16,
18304 0x17,
18305 0x18,
18306 0x19,
18307 0x1A,
18308 0x1B,
18309 0x1C,
18310 0x1D,
18311 0x1E,
18312 0x1F,
18313 0x20,
18314 0x21,
18315 0x22,
18316 0x23,
18317 0x24,
18318 0x25,
18319 0x26,
18320 0x27,
18321 0x28,
18322 0x29,
18323 0x2A,
18324 0x2B,
18325 0x2C,
18326 0x2D,
18327 0x2E,
18328 0x2F,
18329 0x30,
18330 0x31,
18331 0x32,
18332 0x33,
18333 0x34,
18334 0x35,
18335 0x36,
18336 0x37,
18337 0x38,
18338 0x39,
18339 0x3A,
18340 0x3B,
18341 0x3C,
18342 0x3D,
18343 0x3E,
18344 0x3F,
18345 0x40,
18346 0x41,
18347 0x42,
18348 0x43,
18349 0x44,
18350 0x45,
18351 0x46,
18352 0x47,
18353 0x48,
18354 0x49,
18355 0x4A,
18356 0x4B,
18357 0x4C,
18358 0x4D,
18359 0x4E,
18360 0x4F,
18361 0x50,
18362 0x51,
18363 0x52,
18364 0x53,
18365 0x54,
18366 0x55,
18367 0x56,
18368 0x57,
18369 0x58,
18370 0x59,
18371 0x5A,
18372 0x5B,
18373 0x5C,
18374 0x5D,
18375 0x5E,
18376 0x5F,
18377 0x60,
18378 0x61,
18379 0x62,
18380 0x63,
18381 0x64
18382 })
18383 }
18384
18385 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
18386 {
18387 If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
18388 {
18389 AINT (One, Arg0)
18390 BRTL = Arg0
18391 }
18392 }
18393
18394 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
18395 {
18396 Return (BRTL) /* \BRTL */
18397 }
18398 }
18399
18400 Device (DD03)
18401 {
18402 Method (_ADR, 0, Serialized) // _ADR: Address
18403 {
18404 If ((DID3 == Zero))
18405 {
18406 Return (0x03)
18407 }
18408 Else
18409 {
18410 Return ((0xFFFF & DID3))
18411 }
18412 }
18413
18414 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
18415 {
18416 If ((DID3 == Zero))
18417 {
18418 Return (0x0B)
18419 }
18420 Else
18421 {
18422 Return (CDDS (DID3))
18423 }
18424 }
18425
18426 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
18427 {
18428 Return (NDDS (DID3))
18429 }
18430
18431 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
18432 {
18433 If (((Arg0 & 0xC0000000) == 0xC0000000))
18434 {
18435 CSTE = NSTE /* \NSTE */
18436 }
18437 }
18438
18439 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
18440 {
18441 Return (Package (0x67)
18442 {
18443 0x50,
18444 0x32,
18445 Zero,
18446 One,
18447 0x02,
18448 0x03,
18449 0x04,
18450 0x05,
18451 0x06,
18452 0x07,
18453 0x08,
18454 0x09,
18455 0x0A,
18456 0x0B,
18457 0x0C,
18458 0x0D,
18459 0x0E,
18460 0x0F,
18461 0x10,
18462 0x11,
18463 0x12,
18464 0x13,
18465 0x14,
18466 0x15,
18467 0x16,
18468 0x17,
18469 0x18,
18470 0x19,
18471 0x1A,
18472 0x1B,
18473 0x1C,
18474 0x1D,
18475 0x1E,
18476 0x1F,
18477 0x20,
18478 0x21,
18479 0x22,
18480 0x23,
18481 0x24,
18482 0x25,
18483 0x26,
18484 0x27,
18485 0x28,
18486 0x29,
18487 0x2A,
18488 0x2B,
18489 0x2C,
18490 0x2D,
18491 0x2E,
18492 0x2F,
18493 0x30,
18494 0x31,
18495 0x32,
18496 0x33,
18497 0x34,
18498 0x35,
18499 0x36,
18500 0x37,
18501 0x38,
18502 0x39,
18503 0x3A,
18504 0x3B,
18505 0x3C,
18506 0x3D,
18507 0x3E,
18508 0x3F,
18509 0x40,
18510 0x41,
18511 0x42,
18512 0x43,
18513 0x44,
18514 0x45,
18515 0x46,
18516 0x47,
18517 0x48,
18518 0x49,
18519 0x4A,
18520 0x4B,
18521 0x4C,
18522 0x4D,
18523 0x4E,
18524 0x4F,
18525 0x50,
18526 0x51,
18527 0x52,
18528 0x53,
18529 0x54,
18530 0x55,
18531 0x56,
18532 0x57,
18533 0x58,
18534 0x59,
18535 0x5A,
18536 0x5B,
18537 0x5C,
18538 0x5D,
18539 0x5E,
18540 0x5F,
18541 0x60,
18542 0x61,
18543 0x62,
18544 0x63,
18545 0x64
18546 })
18547 }
18548
18549 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
18550 {
18551 If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
18552 {
18553 AINT (One, Arg0)
18554 BRTL = Arg0
18555 }
18556 }
18557
18558 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
18559 {
18560 Return (BRTL) /* \BRTL */
18561 }
18562 }
18563
18564 Device (DD04)
18565 {
18566 Method (_ADR, 0, Serialized) // _ADR: Address
18567 {
18568 If ((DID4 == Zero))
18569 {
18570 Return (0x04)
18571 }
18572 Else
18573 {
18574 Return ((0xFFFF & DID4))
18575 }
18576 }
18577
18578 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
18579 {
18580 If ((DID4 == Zero))
18581 {
18582 Return (0x0B)
18583 }
18584 Else
18585 {
18586 Return (CDDS (DID4))
18587 }
18588 }
18589
18590 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
18591 {
18592 Return (NDDS (DID4))
18593 }
18594
18595 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
18596 {
18597 If (((Arg0 & 0xC0000000) == 0xC0000000))
18598 {
18599 CSTE = NSTE /* \NSTE */
18600 }
18601 }
18602
18603 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
18604 {
18605 Return (Package (0x67)
18606 {
18607 0x50,
18608 0x32,
18609 Zero,
18610 One,
18611 0x02,
18612 0x03,
18613 0x04,
18614 0x05,
18615 0x06,
18616 0x07,
18617 0x08,
18618 0x09,
18619 0x0A,
18620 0x0B,
18621 0x0C,
18622 0x0D,
18623 0x0E,
18624 0x0F,
18625 0x10,
18626 0x11,
18627 0x12,
18628 0x13,
18629 0x14,
18630 0x15,
18631 0x16,
18632 0x17,
18633 0x18,
18634 0x19,
18635 0x1A,
18636 0x1B,
18637 0x1C,
18638 0x1D,
18639 0x1E,
18640 0x1F,
18641 0x20,
18642 0x21,
18643 0x22,
18644 0x23,
18645 0x24,
18646 0x25,
18647 0x26,
18648 0x27,
18649 0x28,
18650 0x29,
18651 0x2A,
18652 0x2B,
18653 0x2C,
18654 0x2D,
18655 0x2E,
18656 0x2F,
18657 0x30,
18658 0x31,
18659 0x32,
18660 0x33,
18661 0x34,
18662 0x35,
18663 0x36,
18664 0x37,
18665 0x38,
18666 0x39,
18667 0x3A,
18668 0x3B,
18669 0x3C,
18670 0x3D,
18671 0x3E,
18672 0x3F,
18673 0x40,
18674 0x41,
18675 0x42,
18676 0x43,
18677 0x44,
18678 0x45,
18679 0x46,
18680 0x47,
18681 0x48,
18682 0x49,
18683 0x4A,
18684 0x4B,
18685 0x4C,
18686 0x4D,
18687 0x4E,
18688 0x4F,
18689 0x50,
18690 0x51,
18691 0x52,
18692 0x53,
18693 0x54,
18694 0x55,
18695 0x56,
18696 0x57,
18697 0x58,
18698 0x59,
18699 0x5A,
18700 0x5B,
18701 0x5C,
18702 0x5D,
18703 0x5E,
18704 0x5F,
18705 0x60,
18706 0x61,
18707 0x62,
18708 0x63,
18709 0x64
18710 })
18711 }
18712
18713 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
18714 {
18715 If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
18716 {
18717 AINT (One, Arg0)
18718 BRTL = Arg0
18719 }
18720 }
18721
18722 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
18723 {
18724 Return (BRTL) /* \BRTL */
18725 }
18726 }
18727
18728 Device (DD05)
18729 {
18730 Method (_ADR, 0, Serialized) // _ADR: Address
18731 {
18732 If ((DID5 == Zero))
18733 {
18734 Return (0x05)
18735 }
18736 Else
18737 {
18738 Return ((0xFFFF & DID5))
18739 }
18740 }
18741
18742 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
18743 {
18744 If ((DID5 == Zero))
18745 {
18746 Return (0x0B)
18747 }
18748 Else
18749 {
18750 Return (CDDS (DID5))
18751 }
18752 }
18753
18754 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
18755 {
18756 Return (NDDS (DID5))
18757 }
18758
18759 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
18760 {
18761 If (((Arg0 & 0xC0000000) == 0xC0000000))
18762 {
18763 CSTE = NSTE /* \NSTE */
18764 }
18765 }
18766
18767 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
18768 {
18769 Return (Package (0x67)
18770 {
18771 0x50,
18772 0x32,
18773 Zero,
18774 One,
18775 0x02,
18776 0x03,
18777 0x04,
18778 0x05,
18779 0x06,
18780 0x07,
18781 0x08,
18782 0x09,
18783 0x0A,
18784 0x0B,
18785 0x0C,
18786 0x0D,
18787 0x0E,
18788 0x0F,
18789 0x10,
18790 0x11,
18791 0x12,
18792 0x13,
18793 0x14,
18794 0x15,
18795 0x16,
18796 0x17,
18797 0x18,
18798 0x19,
18799 0x1A,
18800 0x1B,
18801 0x1C,
18802 0x1D,
18803 0x1E,
18804 0x1F,
18805 0x20,
18806 0x21,
18807 0x22,
18808 0x23,
18809 0x24,
18810 0x25,
18811 0x26,
18812 0x27,
18813 0x28,
18814 0x29,
18815 0x2A,
18816 0x2B,
18817 0x2C,
18818 0x2D,
18819 0x2E,
18820 0x2F,
18821 0x30,
18822 0x31,
18823 0x32,
18824 0x33,
18825 0x34,
18826 0x35,
18827 0x36,
18828 0x37,
18829 0x38,
18830 0x39,
18831 0x3A,
18832 0x3B,
18833 0x3C,
18834 0x3D,
18835 0x3E,
18836 0x3F,
18837 0x40,
18838 0x41,
18839 0x42,
18840 0x43,
18841 0x44,
18842 0x45,
18843 0x46,
18844 0x47,
18845 0x48,
18846 0x49,
18847 0x4A,
18848 0x4B,
18849 0x4C,
18850 0x4D,
18851 0x4E,
18852 0x4F,
18853 0x50,
18854 0x51,
18855 0x52,
18856 0x53,
18857 0x54,
18858 0x55,
18859 0x56,
18860 0x57,
18861 0x58,
18862 0x59,
18863 0x5A,
18864 0x5B,
18865 0x5C,
18866 0x5D,
18867 0x5E,
18868 0x5F,
18869 0x60,
18870 0x61,
18871 0x62,
18872 0x63,
18873 0x64
18874 })
18875 }
18876
18877 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
18878 {
18879 If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
18880 {
18881 AINT (One, Arg0)
18882 BRTL = Arg0
18883 }
18884 }
18885
18886 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
18887 {
18888 Return (BRTL) /* \BRTL */
18889 }
18890 }
18891
18892 Device (DD06)
18893 {
18894 Method (_ADR, 0, Serialized) // _ADR: Address
18895 {
18896 If ((DID6 == Zero))
18897 {
18898 Return (0x06)
18899 }
18900 Else
18901 {
18902 Return ((0xFFFF & DID6))
18903 }
18904 }
18905
18906 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
18907 {
18908 If ((DID6 == Zero))
18909 {
18910 Return (0x0B)
18911 }
18912 Else
18913 {
18914 Return (CDDS (DID6))
18915 }
18916 }
18917
18918 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
18919 {
18920 Return (NDDS (DID6))
18921 }
18922
18923 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
18924 {
18925 If (((Arg0 & 0xC0000000) == 0xC0000000))
18926 {
18927 CSTE = NSTE /* \NSTE */
18928 }
18929 }
18930
18931 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
18932 {
18933 Return (Package (0x67)
18934 {
18935 0x50,
18936 0x32,
18937 Zero,
18938 One,
18939 0x02,
18940 0x03,
18941 0x04,
18942 0x05,
18943 0x06,
18944 0x07,
18945 0x08,
18946 0x09,
18947 0x0A,
18948 0x0B,
18949 0x0C,
18950 0x0D,
18951 0x0E,
18952 0x0F,
18953 0x10,
18954 0x11,
18955 0x12,
18956 0x13,
18957 0x14,
18958 0x15,
18959 0x16,
18960 0x17,
18961 0x18,
18962 0x19,
18963 0x1A,
18964 0x1B,
18965 0x1C,
18966 0x1D,
18967 0x1E,
18968 0x1F,
18969 0x20,
18970 0x21,
18971 0x22,
18972 0x23,
18973 0x24,
18974 0x25,
18975 0x26,
18976 0x27,
18977 0x28,
18978 0x29,
18979 0x2A,
18980 0x2B,
18981 0x2C,
18982 0x2D,
18983 0x2E,
18984 0x2F,
18985 0x30,
18986 0x31,
18987 0x32,
18988 0x33,
18989 0x34,
18990 0x35,
18991 0x36,
18992 0x37,
18993 0x38,
18994 0x39,
18995 0x3A,
18996 0x3B,
18997 0x3C,
18998 0x3D,
18999 0x3E,
19000 0x3F,
19001 0x40,
19002 0x41,
19003 0x42,
19004 0x43,
19005 0x44,
19006 0x45,
19007 0x46,
19008 0x47,
19009 0x48,
19010 0x49,
19011 0x4A,
19012 0x4B,
19013 0x4C,
19014 0x4D,
19015 0x4E,
19016 0x4F,
19017 0x50,
19018 0x51,
19019 0x52,
19020 0x53,
19021 0x54,
19022 0x55,
19023 0x56,
19024 0x57,
19025 0x58,
19026 0x59,
19027 0x5A,
19028 0x5B,
19029 0x5C,
19030 0x5D,
19031 0x5E,
19032 0x5F,
19033 0x60,
19034 0x61,
19035 0x62,
19036 0x63,
19037 0x64
19038 })
19039 }
19040
19041 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
19042 {
19043 If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
19044 {
19045 AINT (One, Arg0)
19046 BRTL = Arg0
19047 }
19048 }
19049
19050 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
19051 {
19052 Return (BRTL) /* \BRTL */
19053 }
19054 }
19055
19056 Device (DD07)
19057 {
19058 Method (_ADR, 0, Serialized) // _ADR: Address
19059 {
19060 If ((DID7 == Zero))
19061 {
19062 Return (0x07)
19063 }
19064 Else
19065 {
19066 Return ((0xFFFF & DID7))
19067 }
19068 }
19069
19070 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
19071 {
19072 If ((DID7 == Zero))
19073 {
19074 Return (0x0B)
19075 }
19076 Else
19077 {
19078 Return (CDDS (DID7))
19079 }
19080 }
19081
19082 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
19083 {
19084 Return (NDDS (DID7))
19085 }
19086
19087 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
19088 {
19089 If (((Arg0 & 0xC0000000) == 0xC0000000))
19090 {
19091 CSTE = NSTE /* \NSTE */
19092 }
19093 }
19094
19095 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
19096 {
19097 Return (Package (0x67)
19098 {
19099 0x50,
19100 0x32,
19101 Zero,
19102 One,
19103 0x02,
19104 0x03,
19105 0x04,
19106 0x05,
19107 0x06,
19108 0x07,
19109 0x08,
19110 0x09,
19111 0x0A,
19112 0x0B,
19113 0x0C,
19114 0x0D,
19115 0x0E,
19116 0x0F,
19117 0x10,
19118 0x11,
19119 0x12,
19120 0x13,
19121 0x14,
19122 0x15,
19123 0x16,
19124 0x17,
19125 0x18,
19126 0x19,
19127 0x1A,
19128 0x1B,
19129 0x1C,
19130 0x1D,
19131 0x1E,
19132 0x1F,
19133 0x20,
19134 0x21,
19135 0x22,
19136 0x23,
19137 0x24,
19138 0x25,
19139 0x26,
19140 0x27,
19141 0x28,
19142 0x29,
19143 0x2A,
19144 0x2B,
19145 0x2C,
19146 0x2D,
19147 0x2E,
19148 0x2F,
19149 0x30,
19150 0x31,
19151 0x32,
19152 0x33,
19153 0x34,
19154 0x35,
19155 0x36,
19156 0x37,
19157 0x38,
19158 0x39,
19159 0x3A,
19160 0x3B,
19161 0x3C,
19162 0x3D,
19163 0x3E,
19164 0x3F,
19165 0x40,
19166 0x41,
19167 0x42,
19168 0x43,
19169 0x44,
19170 0x45,
19171 0x46,
19172 0x47,
19173 0x48,
19174 0x49,
19175 0x4A,
19176 0x4B,
19177 0x4C,
19178 0x4D,
19179 0x4E,
19180 0x4F,
19181 0x50,
19182 0x51,
19183 0x52,
19184 0x53,
19185 0x54,
19186 0x55,
19187 0x56,
19188 0x57,
19189 0x58,
19190 0x59,
19191 0x5A,
19192 0x5B,
19193 0x5C,
19194 0x5D,
19195 0x5E,
19196 0x5F,
19197 0x60,
19198 0x61,
19199 0x62,
19200 0x63,
19201 0x64
19202 })
19203 }
19204
19205 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
19206 {
19207 If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
19208 {
19209 AINT (One, Arg0)
19210 BRTL = Arg0
19211 }
19212 }
19213
19214 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
19215 {
19216 Return (BRTL) /* \BRTL */
19217 }
19218 }
19219
19220 Device (DD08)
19221 {
19222 Method (_ADR, 0, Serialized) // _ADR: Address
19223 {
19224 If ((DID8 == Zero))
19225 {
19226 Return (0x08)
19227 }
19228 Else
19229 {
19230 Return ((0xFFFF & DID8))
19231 }
19232 }
19233
19234 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
19235 {
19236 If ((DID8 == Zero))
19237 {
19238 Return (0x0B)
19239 }
19240 Else
19241 {
19242 Return (CDDS (DID8))
19243 }
19244 }
19245
19246 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
19247 {
19248 Return (NDDS (DID8))
19249 }
19250
19251 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
19252 {
19253 If (((Arg0 & 0xC0000000) == 0xC0000000))
19254 {
19255 CSTE = NSTE /* \NSTE */
19256 }
19257 }
19258
19259 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
19260 {
19261 Return (Package (0x67)
19262 {
19263 0x50,
19264 0x32,
19265 Zero,
19266 One,
19267 0x02,
19268 0x03,
19269 0x04,
19270 0x05,
19271 0x06,
19272 0x07,
19273 0x08,
19274 0x09,
19275 0x0A,
19276 0x0B,
19277 0x0C,
19278 0x0D,
19279 0x0E,
19280 0x0F,
19281 0x10,
19282 0x11,
19283 0x12,
19284 0x13,
19285 0x14,
19286 0x15,
19287 0x16,
19288 0x17,
19289 0x18,
19290 0x19,
19291 0x1A,
19292 0x1B,
19293 0x1C,
19294 0x1D,
19295 0x1E,
19296 0x1F,
19297 0x20,
19298 0x21,
19299 0x22,
19300 0x23,
19301 0x24,
19302 0x25,
19303 0x26,
19304 0x27,
19305 0x28,
19306 0x29,
19307 0x2A,
19308 0x2B,
19309 0x2C,
19310 0x2D,
19311 0x2E,
19312 0x2F,
19313 0x30,
19314 0x31,
19315 0x32,
19316 0x33,
19317 0x34,
19318 0x35,
19319 0x36,
19320 0x37,
19321 0x38,
19322 0x39,
19323 0x3A,
19324 0x3B,
19325 0x3C,
19326 0x3D,
19327 0x3E,
19328 0x3F,
19329 0x40,
19330 0x41,
19331 0x42,
19332 0x43,
19333 0x44,
19334 0x45,
19335 0x46,
19336 0x47,
19337 0x48,
19338 0x49,
19339 0x4A,
19340 0x4B,
19341 0x4C,
19342 0x4D,
19343 0x4E,
19344 0x4F,
19345 0x50,
19346 0x51,
19347 0x52,
19348 0x53,
19349 0x54,
19350 0x55,
19351 0x56,
19352 0x57,
19353 0x58,
19354 0x59,
19355 0x5A,
19356 0x5B,
19357 0x5C,
19358 0x5D,
19359 0x5E,
19360 0x5F,
19361 0x60,
19362 0x61,
19363 0x62,
19364 0x63,
19365 0x64
19366 })
19367 }
19368
19369 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
19370 {
19371 If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
19372 {
19373 AINT (One, Arg0)
19374 BRTL = Arg0
19375 }
19376 }
19377
19378 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
19379 {
19380 Return (BRTL) /* \BRTL */
19381 }
19382 }
19383
19384 Method (SDDL, 1, NotSerialized)
19385 {
19386 NDID++
19387 Local0 = (Arg0 & 0x0F0F)
19388 Local1 = (0x80000000 | Local0)
19389 If ((DIDL == Local0))
19390 {
19391 Return (Local1)
19392 }
19393
19394 If ((DDL2 == Local0))
19395 {
19396 Return (Local1)
19397 }
19398
19399 If ((DDL3 == Local0))
19400 {
19401 Return (Local1)
19402 }
19403
19404 If ((DDL4 == Local0))
19405 {
19406 Return (Local1)
19407 }
19408
19409 If ((DDL5 == Local0))
19410 {
19411 Return (Local1)
19412 }
19413
19414 If ((DDL6 == Local0))
19415 {
19416 Return (Local1)
19417 }
19418
19419 If ((DDL7 == Local0))
19420 {
19421 Return (Local1)
19422 }
19423
19424 If ((DDL8 == Local0))
19425 {
19426 Return (Local1)
19427 }
19428
19429 Return (Zero)
19430 }
19431
19432 Method (CDDS, 1, NotSerialized)
19433 {
19434 Local0 = (Arg0 & 0x0F0F)
19435 If ((Zero == Local0))
19436 {
19437 Return (0x1D)
19438 }
19439
19440 If ((CADL == Local0))
19441 {
19442 Return (0x1F)
19443 }
19444
19445 If ((CAL2 == Local0))
19446 {
19447 Return (0x1F)
19448 }
19449
19450 If ((CAL3 == Local0))
19451 {
19452 Return (0x1F)
19453 }
19454
19455 If ((CAL4 == Local0))
19456 {
19457 Return (0x1F)
19458 }
19459
19460 If ((CAL5 == Local0))
19461 {
19462 Return (0x1F)
19463 }
19464
19465 If ((CAL6 == Local0))
19466 {
19467 Return (0x1F)
19468 }
19469
19470 If ((CAL7 == Local0))
19471 {
19472 Return (0x1F)
19473 }
19474
19475 If ((CAL8 == Local0))
19476 {
19477 Return (0x1F)
19478 }
19479
19480 Return (0x1D)
19481 }
19482
19483 Method (NDDS, 1, NotSerialized)
19484 {
19485 Local0 = (Arg0 & 0x0F0F)
19486 If ((Zero == Local0))
19487 {
19488 Return (Zero)
19489 }
19490
19491 If ((NADL == Local0))
19492 {
19493 Return (One)
19494 }
19495
19496 If ((NDL2 == Local0))
19497 {
19498 Return (One)
19499 }
19500
19501 If ((NDL3 == Local0))
19502 {
19503 Return (One)
19504 }
19505
19506 If ((NDL4 == Local0))
19507 {
19508 Return (One)
19509 }
19510
19511 If ((NDL5 == Local0))
19512 {
19513 Return (One)
19514 }
19515
19516 If ((NDL6 == Local0))
19517 {
19518 Return (One)
19519 }
19520
19521 If ((NDL7 == Local0))
19522 {
19523 Return (One)
19524 }
19525
19526 If ((NDL8 == Local0))
19527 {
19528 Return (One)
19529 }
19530
19531 Return (Zero)
19532 }
19533
19534 OperationRegion (IGDP, PCI_Config, Zero, 0x0100)
19535 Field (IGDP, AnyAcc, NoLock, Preserve)
19536 {
19537 Offset (0x10),
19538 MADR, 32,
19539 Offset (0x50),
19540 , 1,
19541 GIVD, 1,
19542 , 1,
19543 GUMA, 5,
19544 Offset (0x52),
19545 Offset (0x54),
19546 , 4,
19547 GMFN, 1,
19548 Offset (0x58),
19549 Offset (0x5C),
19550 GSTM, 32,
19551 Offset (0xE0),
19552 GSSE, 1,
19553 GSSB, 14,
19554 GSES, 1,
19555 Offset (0xE4),
19556 ASLE, 8,
19557 Offset (0xE8),
19558 Offset (0xFC),
19559 ASLS, 32
19560 }
19561
19562 OperationRegion (IGMM, SystemMemory, MADR, 0x3000)
19563 Field (IGMM, AnyAcc, NoLock, Preserve)
19564 {
19565 Offset (0x20C8),
19566 , 4,
19567 DCFE, 4
19568 }
19569
19570 OperationRegion (IGDM, SystemMemory, ASLB, 0x2000)
19571 Field (IGDM, AnyAcc, NoLock, Preserve)
19572 {
19573 SIGN, 128,
19574 SIZE, 32,
19575 OVER, 32,
19576 SVER, 256,
19577 VVER, 128,
19578 GVER, 128,
19579 MBOX, 32,
19580 DMOD, 32,
19581 Offset (0x100),
19582 DRDY, 32,
19583 CSTS, 32,
19584 CEVT, 32,
19585 Offset (0x120),
19586 DIDL, 32,
19587 DDL2, 32,
19588 DDL3, 32,
19589 DDL4, 32,
19590 DDL5, 32,
19591 DDL6, 32,
19592 DDL7, 32,
19593 DDL8, 32,
19594 CPDL, 32,
19595 CPL2, 32,
19596 CPL3, 32,
19597 CPL4, 32,
19598 CPL5, 32,
19599 CPL6, 32,
19600 CPL7, 32,
19601 CPL8, 32,
19602 CAD1, 32,
19603 CAL2, 32,
19604 CAL3, 32,
19605 CAL4, 32,
19606 CAL5, 32,
19607 CAL6, 32,
19608 CAL7, 32,
19609 CAL8, 32,
19610 NADL, 32,
19611 NDL2, 32,
19612 NDL3, 32,
19613 NDL4, 32,
19614 NDL5, 32,
19615 NDL6, 32,
19616 NDL7, 32,
19617 NDL8, 32,
19618 ASLP, 32,
19619 TIDX, 32,
19620 CHPD, 32,
19621 CLID, 32,
19622 CDCK, 32,
19623 SXSW, 32,
19624 EVTS, 32,
19625 CNOT, 32,
19626 NRDY, 32,
19627 Offset (0x200),
19628 SCIE, 1,
19629 GEFC, 4,
19630 GXFC, 3,
19631 GESF, 8,
19632 Offset (0x204),
19633 PARM, 32,
19634 DSLP, 32,
19635 Offset (0x300),
19636 ARDY, 32,
19637 ASLC, 32,
19638 TCHE, 32,
19639 ALSI, 32,
19640 BCLP, 32,
19641 PFIT, 32,
19642 CBLV, 32,
19643 BCLM, 320,
19644 CPFM, 32,
19645 EPFM, 32,
19646 PLUT, 592,
19647 PFMB, 32,
19648 CCDV, 32,
19649 PCFT, 32,
19650 Offset (0x400),
19651 GVD1, 49152,
19652 PHED, 32,
19653 BDDC, 2048
19654 }
19655
19656 Name (DBTB, Package (0x15)
19657 {
19658 Zero,
19659 0x07,
19660 0x38,
19661 0x01C0,
19662 0x0E00,
19663 0x3F,
19664 0x01C7,
19665 0x0E07,
19666 0x01F8,
19667 0x0E38,
19668 0x0FC0,
19669 Zero,
19670 Zero,
19671 Zero,
19672 Zero,
19673 Zero,
19674 0x7000,
19675 0x7007,
19676 0x7038,
19677 0x71C0,
19678 0x7E00
19679 })
19680 Name (CDCT, Package (0x06)
19681 {
19682 Package (0x01)
19683 {
19684 0xA0
19685 },
19686
19687 Package (0x01)
19688 {
19689 0xC8
19690 },
19691
19692 Package (0x01)
19693 {
19694 0x010B
19695 },
19696
19697 Package (0x01)
19698 {
19699 0x0140
19700 },
19701
19702 Package (0x01)
19703 {
19704 0x0164
19705 },
19706
19707 Package (0x01)
19708 {
19709 0x0190
19710 }
19711 })
19712 Name (SUCC, One)
19713 Name (NVLD, 0x02)
19714 Name (CRIT, 0x04)
19715 Name (NCRT, 0x06)
19716 Method (GSCI, 0, Serialized)
19717 {
19718 Method (GBDA, 0, Serialized)
19719 {
19720 If ((GESF == Zero))
19721 {
19722 PARM = 0x0279
19723 GESF = Zero
19724 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19725 }
19726
19727 If ((GESF == One))
19728 {
19729 PARM = 0x0240
19730 GESF = Zero
19731 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19732 }
19733
19734 If ((GESF == 0x04))
19735 {
19736 PARM &= 0xEFFF0000
19737 PARM &= (DerefOf (DBTB [IBTT]) << 0x10)
19738 PARM |= IBTT /* \_SB_.PCI0.GFX0.PARM */
19739 GESF = Zero
19740 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19741 }
19742
19743 If ((GESF == 0x05))
19744 {
19745 PARM = IPSC /* \IPSC */
19746 PARM |= (IPAT << 0x08)
19747 PARM += 0x0100
19748 PARM |= (LIDS << 0x10)
19749 PARM += 0x00010000
19750 PARM |= (IBLC << 0x12)
19751 PARM |= (IBIA << 0x14)
19752 GESF = Zero
19753 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19754 }
19755
19756 If ((GESF == 0x06))
19757 {
19758 PARM = ITVF /* \ITVF */
19759 PARM |= (ITVM << 0x04)
19760 GESF = Zero
19761 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19762 }
19763
19764 If ((GESF == 0x07))
19765 {
19766 PARM = GIVD /* \_SB_.PCI0.GFX0.GIVD */
19767 PARM ^= One
19768 PARM |= (GMFN << One)
19769 PARM |= 0x1800
19770 PARM |= (IDMS << 0x11)
19771 PARM |= (DerefOf (CDCT [DCFE]) << 0x15) /* \_SB_.PCI0.GFX0.PARM */
19772 GESF = One
19773 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19774 }
19775
19776 If ((GESF == 0x0A))
19777 {
19778 PARM = Zero
19779 If (ISSC)
19780 {
19781 PARM |= 0x03
19782 }
19783
19784 GESF = Zero
19785 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19786 }
19787
19788 GESF = Zero
19789 Return (CRIT) /* \_SB_.PCI0.GFX0.CRIT */
19790 }
19791
19792 Method (SBCB, 0, Serialized)
19793 {
19794 If ((GESF == Zero))
19795 {
19796 PARM = Zero
19797 If ((PFLV == FMBL))
19798 {
19799 PARM = 0x000F87FD
19800 }
19801
19802 If ((PFLV == FDTP))
19803 {
19804 PARM = 0x000F87BD
19805 }
19806
19807 GESF = Zero
19808 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19809 }
19810
19811 If ((GESF == One))
19812 {
19813 GESF = Zero
19814 PARM = Zero
19815 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19816 }
19817
19818 If ((GESF == 0x03))
19819 {
19820 GESF = Zero
19821 PARM = Zero
19822 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19823 }
19824
19825 If ((GESF == 0x04))
19826 {
19827 GESF = Zero
19828 PARM = Zero
19829 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19830 }
19831
19832 If ((GESF == 0x05))
19833 {
19834 GESF = Zero
19835 PARM = Zero
19836 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19837 }
19838
19839 If ((GESF == 0x06))
19840 {
19841 ITVF = (PARM & 0x0F)
19842 ITVM = ((PARM & 0xF0) >> 0x04)
19843 GESF = Zero
19844 PARM = Zero
19845 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19846 }
19847
19848 If ((GESF == 0x07))
19849 {
19850 If ((PARM == Zero))
19851 {
19852 Local0 = CLID /* \_SB_.PCI0.GFX0.CLID */
19853 If ((0x80000000 & Local0))
19854 {
19855 CLID &= 0x0F
19856 GLID (CLID)
19857 }
19858 }
19859
19860 GESF = Zero
19861 PARM = Zero
19862 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19863 }
19864
19865 If ((GESF == 0x08))
19866 {
19867 GESF = Zero
19868 PARM = Zero
19869 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19870 }
19871
19872 If ((GESF == 0x09))
19873 {
19874 IBTT = (PARM & 0xFF)
19875 GESF = Zero
19876 PARM = Zero
19877 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19878 }
19879
19880 If ((GESF == 0x0A))
19881 {
19882 IPSC = (PARM & 0xFF)
19883 If (((PARM >> 0x08) & 0xFF))
19884 {
19885 IPAT = ((PARM >> 0x08) & 0xFF)
19886 IPAT--
19887 }
19888
19889 IBLC = ((PARM >> 0x12) & 0x03)
19890 IBIA = ((PARM >> 0x14) & 0x07)
19891 GESF = Zero
19892 PARM = Zero
19893 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19894 }
19895
19896 If ((GESF == 0x0B))
19897 {
19898 IF1E = ((PARM >> One) & One)
19899 IDMS = ((PARM >> 0x11) & 0x0F)
19900 GESF = Zero
19901 PARM = Zero
19902 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19903 }
19904
19905 If ((GESF == 0x10))
19906 {
19907 GESF = Zero
19908 PARM = Zero
19909 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19910 }
19911
19912 If ((GESF == 0x11))
19913 {
19914 PARM = (LIDS << 0x08)
19915 PARM += 0x0100
19916 GESF = Zero
19917 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19918 }
19919
19920 If ((GESF == 0x12))
19921 {
19922 If ((PARM & One))
19923 {
19924 If (((PARM >> One) == One))
19925 {
19926 ISSC = One
19927 }
19928 Else
19929 {
19930 GESF = Zero
19931 Return (CRIT) /* \_SB_.PCI0.GFX0.CRIT */
19932 }
19933 }
19934 Else
19935 {
19936 ISSC = Zero
19937 }
19938
19939 GESF = Zero
19940 PARM = Zero
19941 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19942 }
19943
19944 If ((GESF == 0x13))
19945 {
19946 GESF = Zero
19947 PARM = Zero
19948 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19949 }
19950
19951 If ((GESF == 0x14))
19952 {
19953 PAVP = (PARM & 0x0F)
19954 GESF = Zero
19955 PARM = Zero
19956 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19957 }
19958
19959 GESF = Zero
19960 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
19961 }
19962
19963 If ((GEFC == 0x04))
19964 {
19965 GXFC = GBDA ()
19966 }
19967
19968 If ((GEFC == 0x06))
19969 {
19970 GXFC = SBCB ()
19971 }
19972
19973 GEFC = Zero
19974 SCIS = One
19975 GSSE = Zero
19976 SCIE = Zero
19977 Return (Zero)
19978 }
19979
19980 Method (PDRD, 0, NotSerialized)
19981 {
19982 If (!DRDY)
19983 {
19984 Sleep (ASLP)
19985 }
19986
19987 Return (!DRDY)
19988 }
19989
19990 Method (PSTS, 0, NotSerialized)
19991 {
19992 If ((CSTS > 0x02))
19993 {
19994 Sleep (ASLP)
19995 }
19996
19997 Return ((CSTS == 0x03))
19998 }
19999
20000 Method (GNOT, 2, NotSerialized)
20001 {
20002 If (PDRD ())
20003 {
20004 Return (One)
20005 }
20006
20007 CEVT = Arg0
20008 CSTS = 0x03
20009 If (((CHPD == Zero) && (Arg1 == Zero)))
20010 {
20011 If (((OSYS > 0x07D0) || (OSYS < 0x07D6)))
20012 {
20013 Notify (PCI0, Arg1)
20014 }
20015 Else
20016 {
20017 Notify (GFX0, Arg1)
20018 }
20019 }
20020
20021 Notify (GFX0, 0x80) // Status Change
20022 Return (Zero)
20023 }
20024
20025 Method (GHDS, 1, NotSerialized)
20026 {
20027 TIDX = Arg0
20028 Return (GNOT (One, Zero))
20029 }
20030
20031 Method (GLID, 1, NotSerialized)
20032 {
20033 CLID = Arg0
20034 Return (GNOT (0x02, Zero))
20035 }
20036
20037 Method (GDCK, 1, NotSerialized)
20038 {
20039 CDCK = Arg0
20040 Return (GNOT (0x04, Zero))
20041 }
20042
20043 Method (PARD, 0, NotSerialized)
20044 {
20045 If (!ARDY)
20046 {
20047 Sleep (ASLP)
20048 }
20049
20050 Return (!ARDY)
20051 }
20052
20053 Method (AINT, 2, NotSerialized)
20054 {
20055 If (!(TCHE & (One << Arg0)))
20056 {
20057 Return (One)
20058 }
20059
20060 If (PARD ())
20061 {
20062 Return (One)
20063 }
20064
20065 If ((Arg0 == 0x02))
20066 {
20067 If (CPFM)
20068 {
20069 Local0 = (CPFM & 0x0F)
20070 Local1 = (EPFM & 0x0F)
20071 If ((Local0 == One))
20072 {
20073 If ((Local1 & 0x06))
20074 {
20075 PFIT = 0x06
20076 }
20077 ElseIf ((Local1 & 0x08))
20078 {
20079 PFIT = 0x08
20080 }
20081 Else
20082 {
20083 PFIT = One
20084 }
20085 }
20086
20087 If ((Local0 == 0x06))
20088 {
20089 If ((Local1 & 0x08))
20090 {
20091 PFIT = 0x08
20092 }
20093 ElseIf ((Local1 & One))
20094 {
20095 PFIT = One
20096 }
20097 Else
20098 {
20099 PFIT = 0x06
20100 }
20101 }
20102
20103 If ((Local0 == 0x08))
20104 {
20105 If ((Local1 & One))
20106 {
20107 PFIT = One
20108 }
20109 ElseIf ((Local1 & 0x06))
20110 {
20111 PFIT = 0x06
20112 }
20113 Else
20114 {
20115 PFIT = 0x08
20116 }
20117 }
20118 }
20119 Else
20120 {
20121 PFIT ^= 0x07
20122 }
20123
20124 PFIT |= 0x80000000
20125 ASLC = 0x04
20126 }
20127 ElseIf ((Arg0 == One))
20128 {
20129 BCLP = ((Arg1 * 0xFF) / 0x64)
20130 BCLP |= 0x80000000
20131 ASLC = 0x02
20132 }
20133 ElseIf ((Arg0 == Zero))
20134 {
20135 ALSI = Arg1
20136 ASLC = One
20137 }
20138 Else
20139 {
20140 Return (One)
20141 }
20142
20143 ASLE = One
20144 Return (Zero)
20145 }
20146
20147 Method (SCIP, 0, NotSerialized)
20148 {
20149 If ((OVER != Zero))
20150 {
20151 Return (!GSMI)
20152 }
20153
20154 Return (Zero)
20155 }
20156
20157 Device (ISP0)
20158 {
20159 Name (_ADR, 0x22B8) // _ADR: Address
20160 Name (_DDN, "CHV ISP - 808622B8") // _DDN: DOS Device Name
20161 Name (_UID, One) // _UID: Unique ID
20162 Method (_STA, 0, NotSerialized) // _STA: Status
20163 {
20164 If (((ISPA != Zero) && (ISPD == One)))
20165 {
20166 Return (0x0F)
20167 }
20168 Else
20169 {
20170 Return (Zero)
20171 }
20172 }
20173
20174 Name (SBUF, ResourceTemplate ()
20175 {
20176 Memory32Fixed (ReadWrite,
20177 0x00000000, // Address Base
20178 0x00400000, // Address Length
20179 _Y39)
20180 })
20181 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
20182 {
20183 CreateDWordField (SBUF, \_SB.PCI0.GFX0.ISP0._Y39._BAS, B0BA) // _BAS: Base Address
20184 B0BA = ISPA /* \ISPA */
20185 Return (SBUF) /* \_SB_.PCI0.GFX0.ISP0.SBUF */
20186 }
20187
20188 Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
20189 {
20190 }
20191
20192 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
20193 {
20194 }
20195
20196 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
20197 {
20198 If ((Arg0 == One))
20199 {
20200 Return (One)
20201 }
20202 ElseIf ((Arg0 == 0x02))
20203 {
20204 Return (0x02)
20205 }
20206 Else
20207 {
20208 Return (0x0F)
20209 }
20210 }
20211 }
20212 }
20213
20214 Device (HIDD)
20215 {
20216 Name (_HID, "INT33D5") // _HID: Hardware ID
20217 Name (_CID, "INT33D5") // _CID: Compatible ID
20218 Name (HBSY, Zero)
20219 Name (HIDX, Zero)
20220 Name (HMDE, Zero)
20221 Name (HRDY, Zero)
20222 Method (_STA, 0, Serialized) // _STA: Status
20223 {
20224 Return (0x0F)
20225 }
20226
20227 Method (HDDM, 0, Serialized)
20228 {
20229 Name (DPKG, Package (0x04)
20230 {
20231 0x11111111,
20232 0x22222222,
20233 0x33333333,
20234 0x44444444
20235 })
20236 Return (DPKG) /* \_SB_.PCI0.HIDD.HDDM.DPKG */
20237 }
20238
20239 Method (HDEM, 0, Serialized)
20240 {
20241 HBSY = Zero
20242 If ((HMDE == Zero))
20243 {
20244 Return (HIDX) /* \_SB_.PCI0.HIDD.HIDX */
20245 }
20246
20247 Return (HMDE) /* \_SB_.PCI0.HIDD.HMDE */
20248 }
20249
20250 Method (HDMM, 0, Serialized)
20251 {
20252 Return (HMDE) /* \_SB_.PCI0.HIDD.HMDE */
20253 }
20254
20255 Method (HDSM, 1, Serialized)
20256 {
20257 HRDY = Arg0
20258 }
20259
20260 Method (HPEM, 1, Serialized)
20261 {
20262 HBSY = One
20263 If ((HMDE == Zero))
20264 {
20265 HIDX = Arg0
20266 }
20267 Else
20268 {
20269 HIDX = Arg0
20270 }
20271
20272 Notify (HIDD, 0xC0) // Hardware-Specific
20273 Local0 = Zero
20274 While (((Local0 < 0xFA) && HBSY))
20275 {
20276 Sleep (0x04)
20277 Local0++
20278 }
20279
20280 If ((HBSY == One))
20281 {
20282 HBSY = Zero
20283 HIDX = Zero
20284 Return (One)
20285 }
20286 Else
20287 {
20288 Return (Zero)
20289 }
20290 }
20291 }
20292
20293 Device (PISH)
20294 {
20295 Name (_ADR, 0x000A0000) // _ADR: Address
20296 Method (_STA, 0, NotSerialized) // _STA: Status
20297 {
20298 Return (0x0F)
20299 }
20300
20301 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
20302 {
20303 If ((Arg0 == ToUUID ("1730e71d-e5dd-4a34-be57-4d76b6a2fe37")))
20304 {
20305 If ((Arg2 == Zero))
20306 {
20307 If ((Arg1 == Zero))
20308 {
20309 Return (Buffer (One)
20310 {
20311 0x03 // .
20312 })
20313 }
20314 Else
20315 {
20316 Return (Zero)
20317 }
20318 }
20319
20320 If ((Arg2 == One))
20321 {
20322 Switch (DerefOf (Arg3 [Zero]))
20323 {
20324 Case (Zero)
20325 {
20326 ^^HIDD.HPEM (0x1B)
20327 }
20328 Case (One)
20329 {
20330 }
20331 Case (0x02)
20332 {
20333 }
20334 Case (0x03)
20335 {
20336 }
20337
20338 }
20339
20340 Return (Zero)
20341 }
20342 Else
20343 {
20344 Return (Zero)
20345 }
20346 }
20347 Else
20348 {
20349 Return (Buffer (One)
20350 {
20351 0x00 // .
20352 })
20353 }
20354 }
20355 }
20356 }
20357
20358 Scope (_PR)
20359 {
20360 Processor (CPU0, 0x01, 0x00000000, 0x00){}
20361 Processor (CPU1, 0x02, 0x00000000, 0x00){}
20362 Processor (CPU2, 0x03, 0x00000000, 0x00){}
20363 Processor (CPU3, 0x04, 0x00000000, 0x00){}
20364 }
20365
20366 Name (PICM, Zero)
20367 Mutex (MUTX, 0x00)
20368 OperationRegion (PRT0, SystemIO, 0x80, 0x04)
20369 Field (PRT0, DWordAcc, Lock, Preserve)
20370 {
20371 P80H, 32
20372 }
20373
20374 Method (P8XH, 2, Serialized)
20375 {
20376 If ((Arg0 == Zero))
20377 {
20378 P80D = ((P80D & 0xFFFFFF00) | Arg1)
20379 }
20380
20381 If ((Arg0 == One))
20382 {
20383 P80D = ((P80D & 0xFFFF00FF) | (Arg1 << 0x08))
20384 }
20385
20386 If ((Arg0 == 0x02))
20387 {
20388 P80D = ((P80D & 0xFF00FFFF) | (Arg1 << 0x10))
20389 }
20390
20391 If ((Arg0 == 0x03))
20392 {
20393 P80D = ((P80D & 0x00FFFFFF) | (Arg1 << 0x18))
20394 }
20395
20396 P80H = P80D /* \P80D */
20397 }
20398
20399 OperationRegion (SPRT, SystemIO, 0xB2, 0x02)
20400 Field (SPRT, ByteAcc, Lock, Preserve)
20401 {
20402 SSMP, 8
20403 }
20404
20405 Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model
20406 {
20407 GPIC = Arg0
20408 PICM = Arg0
20409 }
20410
20411 OperationRegion (SWC0, SystemIO, 0x0610, 0x0F)
20412 Field (SWC0, ByteAcc, NoLock, Preserve)
20413 {
20414 G1S, 8,
20415 Offset (0x04),
20416 G1E, 8,
20417 Offset (0x0A),
20418 G1S2, 8,
20419 G1S3, 8
20420 }
20421
20422 OperationRegion (SWC1, SystemIO, PMBS, 0x2C)
20423 Field (SWC1, DWordAcc, NoLock, Preserve)
20424 {
20425 Offset (0x20),
20426 G0S, 32,
20427 Offset (0x28),
20428 G0EN, 32
20429 }
20430
20431 Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep
20432 {
20433 P80D = Zero
20434 P8XH (Zero, Arg0)
20435 SLPT = Arg0
20436 G1S3 = Ones
20437 G1S2 = Ones
20438 G1S = One
20439 G1E = One
20440 G0S = Ones
20441 If (((Arg0 == 0x04) || (Arg0 == 0x05)))
20442 {
20443 G0EN = Zero
20444 PWBS = One
20445 PM1S = One
20446 }
20447
20448 If (CondRefOf (\_SB.TPM.PTS))
20449 {
20450 \_SB.TPM.PTS (Arg0)
20451 }
20452 }
20453
20454 Method (_WAK, 1, Serialized) // _WAK: Wake
20455 {
20456 P8XH (One, 0xAB)
20457 If (NEXP)
20458 {
20459 If ((OSCC & 0x02))
20460 {
20461 \_SB.PCI0.NHPG ()
20462 }
20463
20464 If ((OSCC & 0x04))
20465 {
20466 \_SB.PCI0.NPME ()
20467 }
20468 }
20469
20470 If ((Arg0 == 0x04))
20471 {
20472 \_SB.GPO0.MCUW = One
20473 }
20474
20475 If (((Arg0 == 0x03) || (Arg0 == 0x04)))
20476 {
20477 If ((PFLV == FMBL))
20478 {
20479 If ((Arg0 == 0x04))
20480 {
20481 PNOT ()
20482 }
20483 }
20484
20485 If ((CFGD & 0x01000000)){}
20486 If ((OSYS == 0x07D2))
20487 {
20488 If ((CFGD & One))
20489 {
20490 If ((\_PR.CPU0._PPC > Zero))
20491 {
20492 \_PR.CPU0._PPC -= One
20493 PNOT ()
20494 \_PR.CPU0._PPC += One
20495 PNOT ()
20496 }
20497 Else
20498 {
20499 \_PR.CPU0._PPC += One
20500 PNOT ()
20501 \_PR.CPU0._PPC -= One
20502 PNOT ()
20503 }
20504 }
20505 }
20506 }
20507
20508 Return (Package (0x02)
20509 {
20510 Zero,
20511 Zero
20512 })
20513 }
20514
20515 Method (PNOT, 0, Serialized)
20516 {
20517 If (MPEN)
20518 {
20519 If ((PDC0 & 0x08))
20520 {
20521 Notify (\_PR.CPU0, 0x80) // Performance Capability Change
20522 If ((PDC0 & 0x10))
20523 {
20524 Sleep (0x64)
20525 Notify (\_PR.CPU0, 0x81) // C-State Change
20526 }
20527 }
20528
20529 If ((PDC1 & 0x08))
20530 {
20531 Notify (\_PR.CPU1, 0x80) // Performance Capability Change
20532 If ((PDC1 & 0x10))
20533 {
20534 Sleep (0x64)
20535 Notify (\_PR.CPU1, 0x81) // C-State Change
20536 }
20537 }
20538
20539 If ((PDC2 & 0x08))
20540 {
20541 Notify (\_PR.CPU2, 0x80) // Performance Capability Change
20542 If ((PDC2 & 0x10))
20543 {
20544 Sleep (0x64)
20545 Notify (\_PR.CPU2, 0x81) // C-State Change
20546 }
20547 }
20548
20549 If ((PDC3 & 0x08))
20550 {
20551 Notify (\_PR.CPU3, 0x80) // Performance Capability Change
20552 If ((PDC3 & 0x10))
20553 {
20554 Sleep (0x64)
20555 Notify (\_PR.CPU3, 0x81) // C-State Change
20556 }
20557 }
20558 }
20559 Else
20560 {
20561 Notify (\_PR.CPU0, 0x80) // Performance Capability Change
20562 Sleep (0x64)
20563 Notify (\_PR.CPU0, 0x81) // C-State Change
20564 }
20565 }
20566
20567 Scope (_SB)
20568 {
20569 Name (CRTT, 0x6E)
20570 Name (ACTT, 0x55)
20571 Name (SCR0, 0x0102)
20572 Name (SCR1, 0x0102)
20573 Name (SCR2, 0x0102)
20574 Name (SCR3, 0x0102)
20575 Name (GCR0, 0x46)
20576 Name (GCR1, 0x46)
20577 Name (GCR2, 0x46)
20578 Name (GCR3, 0x46)
20579 Name (GCR4, 0x46)
20580 Name (PST0, 0x3C)
20581 Name (PST1, 0x3C)
20582 Name (PST2, 0x3C)
20583 Name (PST3, 0x3C)
20584 Name (PST4, 0x3C)
20585 Name (WCR0, 0x4B)
20586 Name (WPPT, 0x28)
20587 Name (LPMV, 0x03)
20588 Name (PDBG, Zero)
20589 Name (PDPM, One)
20590 Name (PDBP, One)
20591 Name (DLPO, Package (0x06)
20592 {
20593 One,
20594 One,
20595 One,
20596 0x19,
20597 One,
20598 One
20599 })
20600 Name (BRQD, Zero)
20601 Method (_INI, 0, NotSerialized) // _INI: Initialize
20602 {
20603 CRTT = DPCT /* \DPCT */
20604 ACTT = DPPT /* \DPPT */
20605 GCR0 = DGC0 /* \DGC0 */
20606 GCR1 = DGC1 /* \DGC1 */
20607 GCR2 = DGC2 /* \DGC2 */
20608 GCR3 = DGC3 /* \DGC3 */
20609 GCR4 = DGC4 /* \DGC4 */
20610 PST0 = DGP0 /* \DGP0 */
20611 PST1 = DGP1 /* \DGP1 */
20612 PST2 = DGP2 /* \DGP2 */
20613 PST3 = DGP3 /* \DGP3 */
20614 PST4 = DGP4 /* \DGP4 */
20615 SCR0 = DSC0 /* \DSC0 */
20616 SCR1 = DSC1 /* \DSC1 */
20617 SCR2 = DSC2 /* \DSC2 */
20618 SCR3 = DSC3 /* \DSC3 */
20619 WCR0 = WWCR /* \WWCR */
20620 WPPT = WWPS /* \WWPS */
20621 LPMV = DLPM /* \DLPM */
20622 PDBG = DDBG /* \DDBG */
20623 DLPO [One] = LPOE /* \LPOE */
20624 DLPO [0x02] = LPPS /* \LPPS */
20625 DLPO [0x03] = LPST /* \LPST */
20626 DLPO [0x04] = LPPC /* \LPPC */
20627 DLPO [0x05] = LPPF /* \LPPF */
20628 PDPM = DPME /* \DPME */
20629 ^GPO3.TPE1 = ^GPO1.LLVL /* \_SB_.GPO1.LLVL */
20630 If ((TPDI == One))
20631 {
20632 ^GPO3.TPE1 = Zero
20633 }
20634
20635 ^GPO3.TRSR = Zero
20636 Sleep (0x05)
20637 ^GPO3.TRSR = One
20638 ^GPO0.MCUW = One
20639 }
20640
20641 Device (PWRB)
20642 {
20643 Name (_HID, EisaId ("PNP0C0C") /* Power Button Device */) // _HID: Hardware ID
20644 }
20645
20646 Scope (PCI0)
20647 {
20648 OperationRegion (XHBA, SystemMemory, 0xE00A0000, 0x40)
20649 Field (XHBA, DWordAcc, NoLock, Preserve)
20650 {
20651 Offset (0x10),
20652 BR0X, 32
20653 }
20654
20655 OperationRegion (XOP1, SystemMemory, BR0X, 0x80F8)
20656 Field (XOP1, DWordAcc, NoLock, Preserve)
20657 {
20658 Offset (0x80D8),
20659 , 11,
20660 BT11, 1,
20661 , 8,
20662 BT20, 1,
20663 BT21, 1,
20664 Offset (0x80DB),
20665 BT24, 1
20666 }
20667
20668 Method (CDRH, 1, Serialized)
20669 {
20670 If ((DAMT == Zero))
20671 {
20672 BT20 = Zero
20673 If ((Arg0 == Zero))
20674 {
20675 BT24 = Zero
20676 }
20677 Else
20678 {
20679 BT24 = One
20680 }
20681
20682 BT11 = One
20683 BT21 = One
20684 }
20685 Else
20686 {
20687 Local1 = (^^MBID.RMBX (0x5A, 0x04, 0x04, Zero, 0x14, Zero) | 0x02)
20688 ^^MBID.WMBX (0x5A, 0x04, Local1, 0x05, Zero, 0x14, Zero)
20689 Local0 = ^^MBID.RMBX (0x5A, 0x80D8, Zero, Zero, Zero, Zero)
20690 ADBG ("Value@offset: 0x80d8, Before Write @HostMode")
20691 ADBG (Local0)
20692 Local0 &= 0xFFEFFFFF
20693 Local0 |= 0x00200800
20694 If ((Arg0 == One))
20695 {
20696 Local0 |= 0x01000000
20697 }
20698 Else
20699 {
20700 Local0 &= 0xFEFFFFFF
20701 }
20702
20703 Local1 = (^^MBID.RMBX (0x5A, 0x04, 0x04, Zero, 0x14, Zero) | 0x02)
20704 ^^MBID.WMBX (0x5A, 0x04, Local1, 0x05, Zero, 0x14, Zero)
20705 ^^MBID.WMBX (0x5A, 0x80D8, Local0, One, Zero, Zero, Zero)
20706 }
20707 }
20708
20709 Method (CDRD, 1, Serialized)
20710 {
20711 If ((DAMT == Zero))
20712 {
20713 BT11 = One
20714 BT20 = One
20715 BT21 = One
20716 If ((Arg0 == Zero))
20717 {
20718 BT24 = Zero
20719 }
20720 Else
20721 {
20722 BT24 = One
20723 }
20724 }
20725 Else
20726 {
20727 Local1 = (^^MBID.RMBX (0x5A, 0x04, 0x04, Zero, 0x14, Zero) | 0x02)
20728 ^^MBID.WMBX (0x5A, 0x04, Local1, 0x05, Zero, 0x14, Zero)
20729 Local0 = ^^MBID.RMBX (0x5A, 0x80D8, Zero, Zero, Zero, Zero)
20730 ADBG ("Value@offset: 0x80d8, Before Write@devicemode")
20731 ADBG (Local0)
20732 Local0 |= 0x00300800
20733 If ((Arg0 == One))
20734 {
20735 Local0 |= 0x01000000
20736 }
20737 Else
20738 {
20739 Local0 &= 0xFEFFFFFF
20740 }
20741
20742 Local1 = (^^MBID.RMBX (0x5A, 0x04, 0x04, Zero, 0x14, Zero) | 0x02)
20743 ^^MBID.WMBX (0x5A, 0x04, Local1, 0x05, Zero, 0x14, Zero)
20744 ^^MBID.WMBX (0x5A, 0x80D8, Local0, One, Zero, Zero, Zero)
20745 }
20746 }
20747
20748 Method (_INI, 0, NotSerialized) // _INI: Initialize
20749 {
20750 OSYS = 0x07D0
20751 If (CondRefOf (\_OSI, Local0))
20752 {
20753 If (_OSI ("Windows 2001"))
20754 {
20755 OSYS = 0x07D1
20756 }
20757
20758 If (_OSI ("Windows 2001 SP1"))
20759 {
20760 OSYS = 0x07D1
20761 }
20762
20763 If (_OSI ("Windows 2001 SP2"))
20764 {
20765 OSYS = 0x07D2
20766 }
20767
20768 If (_OSI ("Windows 2006"))
20769 {
20770 OSYS = 0x07D6
20771 }
20772
20773 If (_OSI ("Windows 2009"))
20774 {
20775 OSYS = 0x07D9
20776 }
20777
20778 If (_OSI ("Windows 2012"))
20779 {
20780 OSYS = 0x07DC
20781 }
20782
20783 If (_OSI ("Windows 2013"))
20784 {
20785 OSYS = 0x07DD
20786 }
20787
20788 If (_OSI ("Windows 2015"))
20789 {
20790 OSYS = 0x07DF
20791 }
20792 }
20793 }
20794
20795 Method (NHPG, 0, Serialized)
20796 {
20797 }
20798
20799 Method (NPME, 0, Serialized)
20800 {
20801 }
20802 }
20803
20804 Device (GPED)
20805 {
20806 Name (_ADR, Zero) // _ADR: Address
20807 Name (_HID, "INT0002" /* Virtual GPIO Controller */) // _HID: Hardware ID
20808 Name (_CID, "INT0002" /* Virtual GPIO Controller */) // _CID: Compatible ID
20809 Name (_DDN, "Virtual GPIO controller") // _DDN: DOS Device Name
20810 Name (_UID, One) // _UID: Unique ID
20811 Name (INST, One)
20812 Name (XTMP, Zero)
20813 OperationRegion (SCIS, SystemMemory, 0xFED030C0, 0x04)
20814 Field (SCIS, DWordAcc, NoLock, Preserve)
20815 {
20816 , 1,
20817 LHAD, 1,
20818 LATA, 1,
20819 LDIO, 1,
20820 LARD, 1,
20821 LIO1, 1,
20822 LCEP, 1,
20823 LANB, 1,
20824 LHCI, 1,
20825 LOTG, 1,
20826 LECI, 1,
20827 LHSI, 1
20828 }
20829
20830 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
20831 {
20832 If ((Arg0 == ToUUID ("8b38b469-6f95-4b08-9b02-2defcc2d2c35")))
20833 {
20834 If ((Arg2 == Zero))
20835 {
20836 If ((Arg1 == One))
20837 {
20838 Return (Buffer (One)
20839 {
20840 0x03 // .
20841 })
20842 }
20843 }
20844
20845 If ((Arg2 == One))
20846 {
20847 Return ((PMBS + 0x20))
20848 }
20849
20850 Return (Zero)
20851 }
20852 Else
20853 {
20854 Return (Buffer (One)
20855 {
20856 0x00 // .
20857 })
20858 }
20859 }
20860
20861 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
20862 {
20863 Name (RBUF, ResourceTemplate ()
20864 {
20865 Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
20866 {
20867 0x00000009,
20868 }
20869 })
20870 Return (RBUF) /* \_SB_.GPED._CRS.RBUF */
20871 }
20872
20873 Method (_STA, 0, NotSerialized) // _STA: Status
20874 {
20875 If ((SOCS <= 0x04))
20876 {
20877 Return (0x0F)
20878 }
20879 Else
20880 {
20881 Return (Zero)
20882 }
20883 }
20884
20885 Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
20886 {
20887 Name (RBUF, ResourceTemplate ()
20888 {
20889 GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
20890 "\\_SB.GPED", 0x00, ResourceConsumer, ,
20891 )
20892 { // Pin list
20893 0x0002
20894 }
20895 })
20896 Return (RBUF) /* \_SB_.GPED._AEI.RBUF */
20897 }
20898
20899 Method (_L02, 0, NotSerialized) // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
20900 {
20901 If ((XHCI == Zero)){}
20902 ElseIf ((^^PCI0.XHC1.PMES == One))
20903 {
20904 ^^PCI0.XHC1.PMES = One
20905 Notify (^^PCI0.XHC1, 0x02) // Device Wake
20906 }
20907
20908 If ((OTGM != Zero))
20909 {
20910 If ((^^PCI0.OTG1.PMES == One))
20911 {
20912 ADBG ("OTG wake")
20913 ^^PCI0.OTG1.PMEE = Zero
20914 ^^PCI0.OTG1.CPME = Zero
20915 ^^PCI0.OTG1.U2EN = Zero
20916 ^^PCI0.OTG1.U3EN = Zero
20917 Notify (^^PCI0.OTG1, 0x02) // Device Wake
20918 }
20919 }
20920
20921 If ((^^PCI0.SEC0.PMES == One))
20922 {
20923 ^^PCI0.SEC0.PMEE = Zero
20924 Local0 = ^^PCI0.SEC0.PMEE /* \_SB_.PCI0.SEC0.PMEE */
20925 Notify (^^PCI0.SEC0, 0x02) // Device Wake
20926 }
20927 }
20928 }
20929
20930 Device (GPO0)
20931 {
20932 Name (_ADR, Zero) // _ADR: Address
20933 Name (_HID, "INT33FF") // _HID: Hardware ID
20934 Name (_CID, "INT33FF") // _CID: Compatible ID
20935 Name (_DDN, "General Purpose Input/Output (GPIO) controller - SOUTHWEST") // _DDN: DOS Device Name
20936 Name (_UID, One) // _UID: Unique ID
20937 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
20938 {
20939 Name (RBUF, ResourceTemplate ()
20940 {
20941 Memory32Fixed (ReadWrite,
20942 0xFED80000, // Address Base
20943 0x00008000, // Address Length
20944 )
20945 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
20946 {
20947 0x00000031,
20948 }
20949 })
20950 Return (RBUF) /* \_SB_.GPO0._CRS.RBUF */
20951 }
20952
20953 Method (_STA, 0, NotSerialized) // _STA: Status
20954 {
20955 Return (0x0F)
20956 }
20957
20958 OperationRegion (GPAP, SystemMemory, 0xFED84C18, 0x04)
20959 Field (GPAP, DWordAcc, Lock, Preserve)
20960 {
20961 APP1, 1
20962 }
20963
20964 OperationRegion (GP0D, SystemMemory, 0xFED84C00, 0x04)
20965 Field (GP0D, DWordAcc, Lock, Preserve)
20966 {
20967 DKCD, 1
20968 }
20969
20970 OperationRegion (GP0C, SystemMemory, 0xFED85800, 0x04)
20971 Field (GP0C, DWordAcc, Lock, Preserve)
20972 {
20973 CRDT, 1
20974 }
20975
20976 OperationRegion (GP0K, SystemMemory, 0xFED85818, 0x04)
20977 Field (GP0K, DWordAcc, Lock, Preserve)
20978 {
20979 KBDT, 1
20980 }
20981
20982 OperationRegion (GP0T, SystemMemory, 0xFED84838, 0x04)
20983 Field (GP0T, DWordAcc, Lock, Preserve)
20984 {
20985 , 1,
20986 MCUW, 1
20987 }
20988
20989 OperationRegion (GP0S, SystemMemory, 0xFED84830, 0x04)
20990 Field (GP0S, DWordAcc, Lock, Preserve)
20991 {
20992 SARG, 1
20993 }
20994
20995 Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
20996 {
20997 Name (WBUF, ResourceTemplate ()
20998 {
20999 GpioInt (Edge, ActiveBoth, Exclusive, PullUp, 0x0000,
21000 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
21001 )
21002 { // Pin list
21003 0x0015
21004 }
21005 GpioInt (Edge, ActiveBoth, Exclusive, PullUp, 0x0000,
21006 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
21007 )
21008 { // Pin list
21009 0x001E
21010 }
21011 GpioInt (Edge, ActiveBoth, Exclusive, PullUp, 0x0000,
21012 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
21013 )
21014 { // Pin list
21015 0x0021
21016 }
21017 })
21018 Name (WBWB, ResourceTemplate ()
21019 {
21020 GpioInt (Edge, ActiveBoth, Exclusive, PullUp, 0x0000,
21021 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
21022 )
21023 { // Pin list
21024 0x0015
21025 }
21026 GpioInt (Edge, ActiveBoth, Exclusive, PullUp, 0x0000,
21027 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
21028 )
21029 { // Pin list
21030 0x001E
21031 }
21032 })
21033 If ((OSID == One))
21034 {
21035 If ((BTMD == One))
21036 {
21037 Return (WBWB) /* \_SB_.GPO0._AEI.WBWB */
21038 }
21039 Else
21040 {
21041 Return (WBUF) /* \_SB_.GPO0._AEI.WBUF */
21042 }
21043 }
21044 }
21045
21046 OperationRegion (XCFG, SystemMemory, 0xE00A0000, 0x40)
21047 Field (XCFG, DWordAcc, NoLock, Preserve)
21048 {
21049 Offset (0x10),
21050 XBAD, 32
21051 }
21052
21053 OperationRegion (BADR, SystemMemory, XBAD, 0x04E0)
21054 Field (BADR, DWordAcc, NoLock, Preserve)
21055 {
21056 Offset (0x4CC),
21057 STTD, 32
21058 }
21059
21060 Method (_E15, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
21061 {
21062 SARF = One
21063 Notify (FEXT, 0x80) // Status Change
21064 }
21065
21066 Method (_E1E, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
21067 {
21068 PREF = One
21069 Notify (FEXT, 0x80) // Status Change
21070 }
21071
21072 Method (_E21, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
21073 {
21074 APPE = One
21075 Notify (FEXT, 0x80) // Status Change
21076 }
21077
21078 Name (AVBL, Zero)
21079 Name (AMMR, Zero)
21080 Method (_REG, 2, NotSerialized) // _REG: Region Availability
21081 {
21082 If ((Arg0 == 0x08))
21083 {
21084 AVBL = Arg1
21085 }
21086 ElseIf ((Arg0 == 0x91))
21087 {
21088 AMMR = Arg1
21089 }
21090 }
21091
21092 OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0C)
21093 Field (GPOP, ByteAcc, NoLock, Preserve)
21094 {
21095 Connection (
21096 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21097 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
21098 )
21099 { // Pin list
21100 0x0035
21101 }
21102 ),
21103 BTD3, 1,
21104 Connection (
21105 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21106 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
21107 )
21108 { // Pin list
21109 0x003A
21110 }
21111 ),
21112 SUSB, 1,
21113 Connection (
21114 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21115 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
21116 )
21117 { // Pin list
21118 0x003B
21119 }
21120 ),
21121 SHD3, 1
21122 }
21123
21124 OperationRegion (GMMR, 0x91, Zero, 0x8000)
21125 Field (GMMR, DWordAcc, NoLock, Preserve)
21126 {
21127 Offset (0x5420),
21128 Offset (0x5421),
21129 I4AF, 3,
21130 , 4,
21131 I4AE, 1,
21132 , 4,
21133 I4AD, 4,
21134 Offset (0x5438),
21135 Offset (0x5439),
21136 I4CF, 3,
21137 , 4,
21138 I4CE, 1,
21139 , 4,
21140 I4CD, 4
21141 }
21142 }
21143
21144 Device (GPO1)
21145 {
21146 Name (_ADR, Zero) // _ADR: Address
21147 Name (_HID, "INT33FF") // _HID: Hardware ID
21148 Name (_CID, "INT33FF") // _CID: Compatible ID
21149 Name (_DDN, "General Purpose Input/Output (GPIO) controller - NORTH") // _DDN: DOS Device Name
21150 Name (_UID, 0x02) // _UID: Unique ID
21151 OperationRegion (GP1L, SystemMemory, 0xFED8C438, 0x04)
21152 Field (GP1L, DWordAcc, Lock, Preserve)
21153 {
21154 LLVL, 1
21155 }
21156
21157 Name (_DEP, Package (0x01) // _DEP: Dependencies
21158 {
21159 MBID
21160 })
21161 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
21162 {
21163 Name (RBUF, ResourceTemplate ()
21164 {
21165 Memory32Fixed (ReadWrite,
21166 0xFED88000, // Address Base
21167 0x00008000, // Address Length
21168 )
21169 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
21170 {
21171 0x00000030,
21172 }
21173 })
21174 Return (RBUF) /* \_SB_.GPO1._CRS.RBUF */
21175 }
21176
21177 Method (_STA, 0, NotSerialized) // _STA: Status
21178 {
21179 Return (0x0F)
21180 }
21181
21182 Name (BUFF, Buffer (0x03){})
21183 CreateByteField (BUFF, Zero, STAT)
21184 CreateByteField (BUFF, 0x02, DATA)
21185 Name (CHTY, Zero)
21186 Method (FICH, 0, NotSerialized)
21187 {
21188 ADBG ("FICH")
21189 If ((^^PCI0.I2C3.AVBL == One))
21190 {
21191 BUFF = ^^PCI0.I2C3.RG08 /* \_SB_.PCI0.I2C3.RG08 */
21192 DATA >>= 0x06
21193 DATA &= 0x03
21194 CHTY = DATA /* \_SB_.GPO1.DATA */
21195 }
21196 }
21197
21198 Method (OTCF, 1, NotSerialized)
21199 {
21200 If ((^^PCI0.I2C3.AVBL == One))
21201 {
21202 BUFF = ^^PCI0.I2C3.RG01 /* \_SB_.PCI0.I2C3.RG01 */
21203 If ((ToInteger (Arg0) == One))
21204 {
21205 ADBG ("Enable VBUS")
21206 If ((^^PCI0.I2C7.AVBL == One))
21207 {
21208 BUFF = ^^PCI0.I2C7.P0DT /* \_SB_.PCI0.I2C7.P0DT */
21209 DATA |= 0x20
21210 ^^PCI0.I2C7.P0DT = BUFF /* \_SB_.GPO1.BUFF */
21211 }
21212 }
21213 Else
21214 {
21215 DATA &= 0xDF
21216 }
21217
21218 ^^PCI0.I2C3.RG01 = BUFF /* \_SB_.GPO1.BUFF */
21219 }
21220 }
21221
21222 Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
21223 {
21224 Name (CBUF, ResourceTemplate ()
21225 {
21226 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
21227 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21228 )
21229 { // Pin list
21230 0x0003
21231 }
21232 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
21233 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21234 )
21235 { // Pin list
21236 0x0005
21237 }
21238 })
21239 Name (RBUF, ResourceTemplate ()
21240 {
21241 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
21242 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21243 )
21244 { // Pin list
21245 0x0005
21246 }
21247 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
21248 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21249 )
21250 { // Pin list
21251 0x0007
21252 }
21253 })
21254 If ((OSID == One))
21255 {
21256 If ((BDID == One))
21257 {
21258 Return (CBUF) /* \_SB_.GPO1._AEI.CBUF */
21259 }
21260 Else
21261 {
21262 Return (RBUF) /* \_SB_.GPO1._AEI.RBUF */
21263 }
21264 }
21265 }
21266
21267 Method (_E03, 0, Serialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
21268 {
21269 If (((BDID == One) && (PMID == One)))
21270 {
21271 If ((USBI == Zero))
21272 {
21273 ^^PCI0.CDRH (Zero)
21274 If ((^^PCI0.I2C7.AVBL == One))
21275 {
21276 BUFF = ^^PCI0.I2C7.P0DT /* \_SB_.PCI0.I2C7.P0DT */
21277 DATA |= Zero
21278 ^^PCI0.I2C7.P0DT = BUFF /* \_SB_.GPO1.BUFF */
21279 DATA = 0xDF
21280 ^^PCI0.I2C7.P0CF = BUFF /* \_SB_.GPO1.BUFF */
21281 BUFF = ^^PCI0.I2C7.P0DT /* \_SB_.PCI0.I2C7.P0DT */
21282 DATA |= 0x20
21283 ^^PCI0.I2C7.P0DT = BUFF /* \_SB_.GPO1.BUFF */
21284 }
21285
21286 If ((^^PCI0.I2C3.AVBL == One))
21287 {
21288 BUFF = ^^PCI0.I2C3.P0TG /* \_SB_.PCI0.I2C3.P0TG */
21289 DATA |= 0x20
21290 ^^PCI0.I2C3.P0TG = BUFF /* \_SB_.GPO1.BUFF */
21291 }
21292
21293 If ((^^GPO3.AMMR == One))
21294 {
21295 ^^GPO3.DMTX = 0x8102
21296 }
21297 }
21298 Else
21299 {
21300 If ((^^GPO3.AMMR == One))
21301 {
21302 ^^GPO3.DMTX = 0x8100
21303 }
21304
21305 If ((^^PCI0.I2C3.AVBL == One))
21306 {
21307 BUFF = ^^PCI0.I2C3.P0TG /* \_SB_.PCI0.I2C3.P0TG */
21308 DATA &= 0xDF
21309 ^^PCI0.I2C3.P0TG = BUFF /* \_SB_.GPO1.BUFF */
21310 }
21311
21312 If ((DSFG == One))
21313 {
21314 ^^PCI0.CDRH (Zero)
21315 }
21316 Else
21317 {
21318 ^^PCI0.CDRD (Zero)
21319 }
21320 }
21321 }
21322 ElseIf (((BDID == One) && (PMID == 0x02)))
21323 {
21324 If ((USBI == Zero))
21325 {
21326 ^^PCI0.CDRH (Zero)
21327 If ((AVBL == One))
21328 {
21329 GN66 = One
21330 }
21331
21332 If ((^^GPO3.AMMR == One))
21333 {
21334 ^^GPO3.DMTX = 0x8102
21335 }
21336 }
21337 ElseIf ((DSFG == One))
21338 {
21339 ^^PCI0.CDRH (Zero)
21340 If ((^^GPO3.AMMR == One))
21341 {
21342 ^^GPO3.DMTX = 0x8102
21343 }
21344 }
21345 Else
21346 {
21347 ^^PCI0.CDRD (Zero)
21348 If ((^^GPO3.AMMR == One))
21349 {
21350 ^^GPO3.DMTX = 0x8100
21351 }
21352
21353 If ((AVBL == One))
21354 {
21355 GN66 = Zero
21356 }
21357 }
21358 }
21359 }
21360
21361 Method (_E05, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
21362 {
21363 If ((BDID != One))
21364 {
21365 If ((^^PCI0.I2C1.AVBL == One))
21366 {
21367 If (CondRefOf (\_SB.PCI0.I2C1.BATC, Local1))
21368 {
21369 Local0 = ^^PCI0.I2C1.BATC.INTC ()
21370 If ((One == Local0))
21371 {
21372 Notify (ADP1, 0x80) // Status Change
21373 Notify (^^PCI0.I2C1.BATC, 0x80) // Status Change
21374 Notify (^^PCI0.I2C1.BATC, 0x81) // Information Change
21375 }
21376 }
21377
21378 If (CondRefOf (\_SB.DPTF, Local3))
21379 {
21380 If ((One == Local0))
21381 {
21382 ADBG ("DPTFNOTIFY")
21383 Notify (DPTF, 0x86) // Device-Specific
21384 Notify (TCHG, 0x80) // Status Change
21385 }
21386 }
21387 }
21388 }
21389 }
21390
21391 Method (_E07, 0, Serialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
21392 {
21393 Sleep (0x01F4)
21394 ^^GPO3.TPE1 = LLVL /* \_SB_.GPO1.LLVL */
21395 If ((TPDI == One))
21396 {
21397 ^^GPO3.TPE1 = Zero
21398 }
21399
21400 Notify (LID, 0x80) // Status Change
21401 }
21402
21403 Name (AVBL, Zero)
21404 Name (AMMR, Zero)
21405 Method (_REG, 2, NotSerialized) // _REG: Region Availability
21406 {
21407 If ((Arg0 == 0x08))
21408 {
21409 AVBL = Arg1
21410 }
21411 ElseIf ((Arg0 == 0x92))
21412 {
21413 AMMR = Arg1
21414 }
21415 }
21416
21417 OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x11)
21418 Field (GPOP, ByteAcc, NoLock, Preserve)
21419 {
21420 Connection (
21421 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21422 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21423 )
21424 { // Pin list
21425 0x0000
21426 }
21427 ),
21428 MPD3, 1,
21429 Connection (
21430 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21431 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21432 )
21433 { // Pin list
21434 0x0002
21435 }
21436 ),
21437 MRD3, 1,
21438 Connection (
21439 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21440 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21441 )
21442 { // Pin list
21443 0x0014
21444 }
21445 ),
21446 TCD3, 1,
21447 Connection (
21448 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21449 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21450 )
21451 { // Pin list
21452 0x0037
21453 }
21454 ),
21455 CRST, 1,
21456 Connection (
21457 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21458 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21459 )
21460 { // Pin list
21461 0x0017
21462 }
21463 ),
21464 WLD3, 1,
21465 Connection (
21466 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21467 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21468 )
21469 { // Pin list
21470 0x0019
21471 }
21472 ),
21473 TCTL, 1,
21474 Connection (
21475 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21476 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21477 )
21478 { // Pin list
21479 0x0042
21480 }
21481 ),
21482 GN66, 1
21483 }
21484
21485 OperationRegion (GMMR, 0x92, Zero, 0x8000)
21486 Field (GMMR, DWordAcc, NoLock, Preserve)
21487 {
21488 Offset (0x4418),
21489 USBI, 1,
21490 Offset (0x4818),
21491 Offset (0x4819),
21492 GPSC, 3,
21493 , 4,
21494 GPSE, 1,
21495 Offset (0x5460),
21496 COPM, 1
21497 }
21498 }
21499
21500 Device (GPO2)
21501 {
21502 Name (_ADR, Zero) // _ADR: Address
21503 Name (_HID, "INT33FF") // _HID: Hardware ID
21504 Name (_CID, "INT33FF") // _CID: Compatible ID
21505 Name (_DDN, "General Purpose Input/Output (GPIO) controller - EAST") // _DDN: DOS Device Name
21506 Name (_UID, 0x03) // _UID: Unique ID
21507 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
21508 {
21509 Name (RBUF, ResourceTemplate ()
21510 {
21511 Memory32Fixed (ReadWrite,
21512 0xFED90000, // Address Base
21513 0x00008000, // Address Length
21514 )
21515 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
21516 {
21517 0x00000032,
21518 }
21519 })
21520 Return (RBUF) /* \_SB_.GPO2._CRS.RBUF */
21521 }
21522
21523 Method (_STA, 0, NotSerialized) // _STA: Status
21524 {
21525 Return (0x0F)
21526 }
21527
21528 Name (BUFF, Buffer (0x07)
21529 {
21530 0xFF // .
21531 })
21532 CreateByteField (BUFF, Zero, STAT)
21533 CreateByteField (BUFF, One, LEN)
21534 CreateByteField (BUFF, 0x02, TMP0)
21535 CreateByteField (BUFF, 0x03, AX00)
21536 CreateByteField (BUFF, 0x04, AX01)
21537 CreateByteField (BUFF, 0x05, AX10)
21538 CreateByteField (BUFF, 0x06, AX11)
21539 }
21540
21541 Device (GPO3)
21542 {
21543 Name (_ADR, Zero) // _ADR: Address
21544 Name (_HID, "INT33FF") // _HID: Hardware ID
21545 Name (_CID, "INT33FF") // _CID: Compatible ID
21546 Name (_DDN, "General Purpose Input/Output (GPIO) controller - SOUTHEAST") // _DDN: DOS Device Name
21547 Name (_UID, 0x04) // _UID: Unique ID
21548 OperationRegion (GP3T, SystemMemory, 0xFED9D020, 0x04)
21549 Field (GP3T, DWordAcc, Lock, Preserve)
21550 {
21551 , 1,
21552 TPE1, 1
21553 }
21554
21555 OperationRegion (GP3U, SystemMemory, 0xFED9D420, 0x04)
21556 Field (GP3U, DWordAcc, Lock, Preserve)
21557 {
21558 , 1,
21559 TRSR, 1
21560 }
21561
21562 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
21563 {
21564 Name (RBUF, ResourceTemplate ()
21565 {
21566 Memory32Fixed (ReadWrite,
21567 0xFED98000, // Address Base
21568 0x00008000, // Address Length
21569 )
21570 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
21571 {
21572 0x0000005B,
21573 }
21574 })
21575 Return (RBUF) /* \_SB_.GPO3._CRS.RBUF */
21576 }
21577
21578 Method (_STA, 0, NotSerialized) // _STA: Status
21579 {
21580 Return (0x0F)
21581 }
21582
21583 Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
21584 {
21585 Name (CBUF, ResourceTemplate ()
21586 {
21587 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
21588 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
21589 )
21590 { // Pin list
21591 0x003D
21592 }
21593 })
21594 Name (WBUF, ResourceTemplate ()
21595 {
21596 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
21597 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
21598 )
21599 { // Pin list
21600 0x0001
21601 }
21602 })
21603 If (((BDID == 0x02) && (OSID == One)))
21604 {
21605 Return (CBUF) /* \_SB_.GPO3._AEI.CBUF */
21606 }
21607 ElseIf (((BDID != One) && (OSID == One)))
21608 {
21609 Return (WBUF) /* \_SB_.GPO3._AEI.WBUF */
21610 }
21611 }
21612
21613 Method (_E01, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
21614 {
21615 ADBG ("BINTR")
21616 If ((BDID == 0x08))
21617 {
21618 If (CondRefOf (\_SB.PCI0.I2C7.BATC, Local1))
21619 {
21620 Local0 = ^^PCI0.I2C7.BATC.INTF ()
21621 ADBG (Local0)
21622 }
21623
21624 Notify (ADP1, 0x80) // Status Change
21625 Notify (^^PCI0.I2C7.BATC, 0x80) // Status Change
21626 Notify (^^PCI0.I2C7.BATC, 0x81) // Information Change
21627 }
21628 ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
21629 {
21630 If ((^^PCI0.I2C7.WIDR.AVBL == One))
21631 {
21632 Notify (ADP1, 0x80) // Status Change
21633 Notify (^^PCI0.I2C7.WIDR, 0x87) // Device-Specific
21634 }
21635 }
21636 ElseIf ((^^PCI0.I2C1.AVBL == One))
21637 {
21638 If (CondRefOf (\_SB.PCI0.I2C1.BATC, Local1))
21639 {
21640 Local0 = ^^PCI0.I2C1.BATC.INTF ()
21641 ADBG (Local0)
21642 }
21643
21644 Notify (ADP1, 0x80) // Status Change
21645 Notify (^^PCI0.I2C1.BATC, 0x80) // Status Change
21646 Notify (^^PCI0.I2C1.BATC, 0x81) // Information Change
21647 }
21648 }
21649
21650 Method (_E3D, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
21651 {
21652 ADBG ("BINTR")
21653 If ((^^PCI0.I2C1.AVBL == One))
21654 {
21655 If (CondRefOf (\_SB.PCI0.I2C1.BATC, Local1))
21656 {
21657 Local0 = ^^PCI0.I2C1.BATC.INTF ()
21658 ADBG (Local0)
21659 }
21660
21661 Notify (ADP1, 0x80) // Status Change
21662 Notify (^^PCI0.I2C1.BATC, 0x80) // Status Change
21663 Notify (^^PCI0.I2C1.BATC, 0x81) // Information Change
21664 }
21665 }
21666
21667 Name (AVBL, Zero)
21668 Name (AMMR, Zero)
21669 Method (_REG, 2, NotSerialized) // _REG: Region Availability
21670 {
21671 If ((Arg0 == 0x08))
21672 {
21673 AVBL = Arg1
21674 }
21675 ElseIf ((Arg0 == 0x94))
21676 {
21677 AMMR = Arg1
21678 }
21679 }
21680
21681 Name (GMOD, ResourceTemplate ()
21682 {
21683 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21684 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
21685 )
21686 { // Pin list
21687 0x004B
21688 }
21689 })
21690 OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0C)
21691 Field (GPOP, ByteAcc, NoLock, Preserve)
21692 {
21693 Connection (GMOD),
21694 WFD3, 1
21695 }
21696
21697 OperationRegion (GMMR, 0x94, Zero, 0x8000)
21698 Field (GMMR, DWordAcc, NoLock, Preserve)
21699 {
21700 Offset (0x5420),
21701 FGGP, 32,
21702 Offset (0x5448),
21703 DMTX, 32
21704 }
21705 }
21706
21707 Device (GPO4)
21708 {
21709 Name (_ADR, Zero) // _ADR: Address
21710 Name (_HID, "INT33FF") // _HID: Hardware ID
21711 Name (_CID, "INT33FF") // _CID: Compatible ID
21712 Name (_DDN, "General Purpose Input/Output (GPIO) controller - GPIO VIRTUAL") // _DDN: DOS Device Name
21713 Name (_UID, 0x05) // _UID: Unique ID
21714 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
21715 {
21716 Name (RBUF, ResourceTemplate ()
21717 {
21718 Memory32Fixed (ReadWrite,
21719 0xFEDA0000, // Address Base
21720 0x00008000, // Address Length
21721 )
21722 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
21723 {
21724 0x0000006C,
21725 }
21726 })
21727 Return (RBUF) /* \_SB_.GPO4._CRS.RBUF */
21728 }
21729
21730 Method (_STA, 0, NotSerialized) // _STA: Status
21731 {
21732 If ((SOCS <= 0x04))
21733 {
21734 Return (Zero)
21735 }
21736 Else
21737 {
21738 Return (0x0F)
21739 }
21740 }
21741
21742 Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
21743 {
21744 Name (RBUF, ResourceTemplate ()
21745 {
21746 GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
21747 "\\_SB.GPO4", 0x00, ResourceConsumer, ,
21748 )
21749 { // Pin list
21750 0x0006
21751 }
21752 })
21753 Return (RBUF) /* \_SB_.GPO4._AEI.RBUF */
21754 }
21755
21756 Name (AVBL, Zero)
21757 Method (_REG, 2, NotSerialized) // _REG: Region Availability
21758 {
21759 If ((Arg0 == 0x08))
21760 {
21761 AVBL = Arg1
21762 }
21763 }
21764
21765 Method (_L06, 0, NotSerialized) // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
21766 {
21767 If ((XHCI != Zero))
21768 {
21769 If ((^^PCI0.XHC1.PMES == One))
21770 {
21771 ^^PCI0.XHC1.PMES = One
21772 Notify (^^PCI0.XHC1, 0x02) // Device Wake
21773 }
21774 }
21775
21776 If ((OTGM != Zero))
21777 {
21778 If ((^^PCI0.OTG1.PMES == One))
21779 {
21780 ADBG ("OTG wake")
21781 ^^PCI0.OTG1.PMEE = Zero
21782 ^^PCI0.OTG1.CPME = Zero
21783 ^^PCI0.OTG1.U2EN = Zero
21784 ^^PCI0.OTG1.U3EN = Zero
21785 Notify (^^PCI0.OTG1, 0x02) // Device Wake
21786 }
21787 }
21788
21789 If ((^^PCI0.SEC0.PMES == One))
21790 {
21791 ^^PCI0.SEC0.PMEE = Zero
21792 Local0 = ^^PCI0.SEC0.PMEE /* \_SB_.PCI0.SEC0.PMEE */
21793 Notify (^^PCI0.SEC0, 0x02) // Device Wake
21794 }
21795
21796 Stall (0x0A)
21797 PMEB = One
21798 Stall (0x0A)
21799 }
21800 }
21801
21802 Device (WLCH)
21803 {
21804 Name (_HID, "INTA4321") // _HID: Hardware ID
21805 Name (_CID, "INTA4321") // _CID: Compatible ID
21806 Name (_DDN, "WIRELESS CHARGER") // _DDN: DOS Device Name
21807 Name (_DEP, Package (0x03) // _DEP: Dependencies
21808 {
21809 ^PCI0.I2C1,
21810 GPO3,
21811 GPO0
21812 })
21813 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
21814 {
21815 Name (RBUF, ResourceTemplate ()
21816 {
21817 I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80,
21818 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
21819 0x00, ResourceConsumer, , Exclusive,
21820 )
21821 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
21822 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
21823 )
21824 { // Pin list
21825 0x0032
21826 }
21827 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
21828 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
21829 )
21830 { // Pin list
21831 0x004D
21832 }
21833 })
21834 Return (RBUF) /* \_SB_.WLCH._CRS.RBUF */
21835 }
21836
21837 Method (_STA, 0, NotSerialized) // _STA: Status
21838 {
21839 If (((BDID == 0x0A) && (OSID != One)))
21840 {
21841 Return (0x0F)
21842 }
21843
21844 Return (Zero)
21845 }
21846 }
21847
21848 Device (WCH2)
21849 {
21850 Name (_HID, "INTA4322") // _HID: Hardware ID
21851 Name (_CID, "INTA4322") // _CID: Compatible ID
21852 Name (_DDN, "WIRELESS CHARGER 2") // _DDN: DOS Device Name
21853 Name (_DEP, Package (0x02) // _DEP: Dependencies
21854 {
21855 GPO3,
21856 GPO1
21857 })
21858 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
21859 {
21860 Name (RBUF, ResourceTemplate ()
21861 {
21862 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21863 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
21864 )
21865 { // Pin list
21866 0x0031
21867 }
21868 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21869 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
21870 )
21871 { // Pin list
21872 0x003E
21873 }
21874 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21875 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
21876 )
21877 { // Pin list
21878 0x0040
21879 }
21880 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21881 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
21882 )
21883 { // Pin list
21884 0x003C
21885 }
21886 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
21887 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
21888 )
21889 { // Pin list
21890 0x003D
21891 }
21892 })
21893 Return (RBUF) /* \_SB_.WCH2._CRS.RBUF */
21894 }
21895
21896 Method (_STA, 0, NotSerialized) // _STA: Status
21897 {
21898 If (((BDID == 0x0A) && (OSID != One)))
21899 {
21900 Return (0x0F)
21901 }
21902
21903 Return (Zero)
21904 }
21905 }
21906
21907 Device (FLDM)
21908 {
21909 Name (_ADR, Zero) // _ADR: Address
21910 Name (_HID, "INT34D0") // _HID: Hardware ID
21911 Name (_CID, "INT34D0") // _CID: Compatible ID
21912 Name (_DDN, "Modem Reset device for CHT") // _DDN: DOS Device Name
21913 Name (_UID, One) // _UID: Unique ID
21914 Name (_DEP, Package (0x03) // _DEP: Dependencies
21915 {
21916 GPO1,
21917 ^PCI0.I2C7,
21918 ^PCI0.I2C7.PMIC
21919 })
21920 Name (WDEP, Package (0x03)
21921 {
21922 GPO1,
21923 ^PCI0.I2C7,
21924 ^PCI0.I2C7.PMI5
21925 })
21926 Method (_STA, 0, NotSerialized) // _STA: Status
21927 {
21928 If ((FMDM == One))
21929 {
21930 Return (0x0F)
21931 }
21932
21933 Return (Zero)
21934 }
21935
21936 OperationRegion (BADR, SystemMemory, 0xFED8C410, 0x08)
21937 Field (BADR, DWordAcc, NoLock, Preserve)
21938 {
21939 MRB0, 32,
21940 MRB1, 32
21941 }
21942
21943 OperationRegion (BAD1, SystemMemory, 0xFED8C400, 0x08)
21944 Field (BAD1, DWordAcc, NoLock, Preserve)
21945 {
21946 MRP0, 32,
21947 MRP1, 32
21948 }
21949
21950 OperationRegion (CFG1, SystemMemory, 0xE00A0000, 0x40)
21951 Field (CFG1, DWordAcc, NoLock, Preserve)
21952 {
21953 Offset (0x10),
21954 BAD2, 32
21955 }
21956
21957 OperationRegion (ADR3, SystemMemory, BAD2, 0x0560)
21958 Field (ADR3, DWordAcc, NoLock, Preserve)
21959 {
21960 Offset (0x52C),
21961 STTD, 32
21962 }
21963
21964 Method (MDON, 0, NotSerialized)
21965 {
21966 If ((PMID == 0x03))
21967 {
21968 ^^PCI0.I2C7.PMI5.MOXX = One
21969 }
21970 ElseIf ((PMID == Zero))
21971 {
21972 ^^PCI0.I2C7.PMIC.MOXX = One
21973 }
21974
21975 Stall (0xFF)
21976 If ((^^GPO1.AVBL == One))
21977 {
21978 Stall (0x0A)
21979 ^^GPO1.MRD3 = One
21980 Stall (0x0A)
21981 ^^GPO1.MPD3 = Zero
21982 Stall (0x0A)
21983 ^^GPO1.MPD3 = One
21984 Stall (0x4B)
21985 ^^GPO1.MPD3 = Zero
21986 }
21987
21988 Stall (0xFF)
21989 Local1 = (STTD & 0xFFFEFE1D)
21990 STTD = (Local1 | 0x00010000)
21991 Stall (0xFF)
21992 If ((STTD == 0x02F0))
21993 {
21994 Local2 = (STTD & 0xFFFEFC0D)
21995 STTD = (Local2 | 0x00010000)
21996 }
21997
21998 Stall (0xFF)
21999 If ((STTD == 0x0E0002F0))
22000 {
22001 Local3 = (STTD & 0xFFFEFC0D)
22002 STTD = (Local3 | 0x00010000)
22003 }
22004 }
22005
22006 Method (MOFF, 0, NotSerialized)
22007 {
22008 Local1 = (STTD & 0xFFFEFE1D)
22009 STTD = (Local1 | 0x00010000)
22010 Stall (0xFF)
22011 If ((^^GPO1.AVBL == One))
22012 {
22013 ^^GPO1.MRD3 = Zero
22014 Stall (0xFF)
22015 }
22016
22017 If ((PMID == 0x03))
22018 {
22019 ^^PCI0.I2C7.PMI5.MOXX = Zero
22020 }
22021 ElseIf ((PMID == Zero))
22022 {
22023 ^^PCI0.I2C7.PMIC.MOXX = Zero
22024 }
22025
22026 Stall (0xFF)
22027 }
22028
22029 Method (MRST, 0, NotSerialized)
22030 {
22031 If ((PSSE == One))
22032 {
22033 If ((^^PCI0.XHC1.XCD3 == One))
22034 {
22035 ^^PCI0.XHC1.XHD3 = One
22036 Notify (^^PCI0.XHC1, 0x02) // Device Wake
22037 }
22038 Else
22039 {
22040 ^^PCI0.XHC1.XHD3 = Zero
22041 MOFF ()
22042 ^^PCI0.XHC1.S1PD = Zero
22043 ^^PCI0.XHC1.S1PU = One
22044 ^^PCI0.XHC1.S1PD = One
22045 Stall (0xFF)
22046 MDON ()
22047 ^^PCI0.XHC1.S1PD = Zero
22048 ^^PCI0.XHC1.S1PU = Zero
22049 ^^PCI0.XHC1.S1PD = One
22050 Stall (0xFF)
22051 If ((^^PCI0.XHC1.XCD3 == One))
22052 {
22053 ^^PCI0.XHC1.XHD3 = One
22054 Notify (^^PCI0.XHC1, 0x02) // Device Wake
22055 }
22056 }
22057 }
22058 }
22059
22060 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
22061 {
22062 If ((Arg0 == ToUUID ("ac340cb7-e901-45bf-b7e6-2b34ec931e23")))
22063 {
22064 If ((Arg2 == Zero))
22065 {
22066 Return (0x03)
22067 }
22068
22069 Switch (Arg2)
22070 {
22071 Case (One)
22072 {
22073 MOFF ()
22074 }
22075 Case (0x02)
22076 {
22077 MDON ()
22078 }
22079 Case (0x03)
22080 {
22081 MRST ()
22082 }
22083
22084 }
22085 }
22086 Else
22087 {
22088 Return (Zero)
22089 }
22090 }
22091 }
22092
22093 Scope (PCI0.I2C7)
22094 {
22095 OperationRegion (DZFG, GenericSerialBus, Zero, 0x0100)
22096 Field (DZFG, BufferAcc, NoLock, Preserve)
22097 {
22098 Connection (
22099 I2cSerialBusV2 (0x005E, ControllerInitiated, 0x000F4240,
22100 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
22101 0x00, ResourceConsumer, , Exclusive,
22102 )
22103 ),
22104 Offset (0x47),
22105 AccessAs (BufferAcc, AttribByte),
22106 DL03, 8,
22107 DL02, 8
22108 }
22109
22110 OperationRegion (XOPR, GenericSerialBus, Zero, 0x20)
22111 Field (XOPR, BufferAcc, NoLock, Preserve)
22112 {
22113 Connection (
22114 I2cSerialBusV2 (0x0034, ControllerInitiated, 0x000F4240,
22115 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
22116 0x00, ResourceConsumer, , Exclusive,
22117 )
22118 ),
22119 Offset (0x12),
22120 AccessAs (BufferAcc, AttribByte),
22121 XD31, 8,
22122 Offset (0x16),
22123 AccessAs (BufferAcc, AttribByte),
22124 XD33, 8,
22125 XD32, 8
22126 }
22127
22128 Device (PMI1)
22129 {
22130 Name (_ADR, Zero) // _ADR: Address
22131 Name (_HID, "INT33F4" /* XPOWER PMIC Controller */) // _HID: Hardware ID
22132 Name (_CID, "INT33F4" /* XPOWER PMIC Controller */) // _CID: Compatible ID
22133 Name (_DDN, "XPOWER PMIC Controller") // _DDN: DOS Device Name
22134 Name (_HRV, 0x03) // _HRV: Hardware Revision
22135 Name (_UID, One) // _UID: Unique ID
22136 Name (_DEP, Package (0x02) // _DEP: Dependencies
22137 {
22138 I2C7,
22139 GPO1
22140 })
22141 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
22142 {
22143 Name (SBUF, ResourceTemplate ()
22144 {
22145 I2cSerialBusV2 (0x0034, ControllerInitiated, 0x000F4240,
22146 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
22147 0x00, ResourceConsumer, , Exclusive,
22148 )
22149 GpioInt (Level, ActiveLow, Shared, PullDefault, 0x0000,
22150 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
22151 )
22152 { // Pin list
22153 0x000F
22154 }
22155 })
22156 Name (ABUF, ResourceTemplate ()
22157 {
22158 I2cSerialBusV2 (0x0034, ControllerInitiated, 0x000F4240,
22159 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
22160 0x00, ResourceConsumer, , Exclusive,
22161 )
22162 GpioInt (Level, ActiveHigh, Shared, PullDefault, 0x0000,
22163 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
22164 )
22165 { // Pin list
22166 0x000F
22167 }
22168 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22169 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
22170 )
22171 { // Pin list
22172 0x0045
22173 }
22174 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22175 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
22176 )
22177 { // Pin list
22178 0x0042
22179 }
22180 })
22181 If ((OSID != One))
22182 {
22183 Return (ABUF) /* \_SB_.PCI0.I2C7.PMI1._CRS.ABUF */
22184 }
22185 Else
22186 {
22187 Return (SBUF) /* \_SB_.PCI0.I2C7.PMI1._CRS.SBUF */
22188 }
22189 }
22190
22191 Method (_STA, 0, NotSerialized) // _STA: Status
22192 {
22193 If ((PMEN == Zero))
22194 {
22195 Return (Zero)
22196 }
22197
22198 If ((PMID == 0x02))
22199 {
22200 ADBG ("XPWR_DCOVE")
22201 Return (0x0F)
22202 }
22203
22204 Return (Zero)
22205 }
22206
22207 OperationRegion (PMOP, 0x8D, Zero, 0x0100)
22208 Field (PMOP, DWordAcc, NoLock, Preserve)
22209 {
22210 ALD1, 32,
22211 ALD2, 32,
22212 ALD3, 32,
22213 DLD1, 32,
22214 DLD2, 32,
22215 DLD3, 32,
22216 DLD4, 32,
22217 ELD1, 32,
22218 ELD2, 32,
22219 ELD3, 32,
22220 FLD1, 32,
22221 FLD2, 32,
22222 FLD3, 32,
22223 BUC1, 32,
22224 BUC2, 32,
22225 BUC3, 32,
22226 BUC4, 32,
22227 BUC5, 32,
22228 BUC6, 32,
22229 GPI1, 32
22230 }
22231
22232 OperationRegion (DPTF, 0x8C, Zero, 0x0100)
22233 Field (DPTF, DWordAcc, NoLock, Preserve)
22234 {
22235 TMP0, 32,
22236 AX00, 32,
22237 AX01, 32,
22238 TMP1, 32,
22239 AX10, 32,
22240 AX11, 32,
22241 TMP2, 32,
22242 AX20, 32,
22243 AX21, 32,
22244 TMP3, 32,
22245 AX30, 32,
22246 AX31, 32,
22247 TMP4, 32,
22248 AX40, 32,
22249 AX41, 32,
22250 TMP5, 32,
22251 AX50, 32,
22252 AX51, 32,
22253 PEN0, 32,
22254 PEN1, 32,
22255 PEN2, 32,
22256 PEN3, 32,
22257 PEN4, 32,
22258 PEN5, 32
22259 }
22260
22261 Name (LPAT, Package (0x44)
22262 {
22263 0x091B,
22264 0x00029462,
22265 0x094D,
22266 0x0001DABB,
22267 0x097F,
22268 0x000158E2,
22269 0x09B1,
22270 0xFD17,
22271 0x09E3,
22272 0xBB86,
22273 0x0A15,
22274 0x8C3C,
22275 0x0A47,
22276 0x69CE,
22277 0x0A79,
22278 0x5083,
22279 0x0AAB,
22280 0x3DC4,
22281 0x0ADD,
22282 0x2FC2,
22283 0x0B0F,
22284 0x2535,
22285 0x0B41,
22286 0x1D33,
22287 0x0B73,
22288 0x1713,
22289 0x0BA5,
22290 0x125C,
22291 0x0BD7,
22292 0x0EB3,
22293 0x0C09,
22294 0x0BD8,
22295 0x0C3B,
22296 0x099A,
22297 0x0C6D,
22298 0x07D4,
22299 0x0C9F,
22300 0x066B,
22301 0x0CD1,
22302 0x054A,
22303 0x0D03,
22304 0x0462,
22305 0x0D35,
22306 0x03A6,
22307 0x0D67,
22308 0x030D,
22309 0x0D99,
22310 0x0291,
22311 0x0DCB,
22312 0x022A,
22313 0x0DFD,
22314 0x01D6,
22315 0x0E2F,
22316 0x0190,
22317 0x0E61,
22318 0x0156,
22319 0x0E93,
22320 0x0125,
22321 0x0EC5,
22322 0xFC,
22323 0x0EF7,
22324 0xDA,
22325 0x0F29,
22326 0xBD,
22327 0x0F5B,
22328 0xA4,
22329 0x0F8D,
22330 0x8F
22331 })
22332 OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0100)
22333 Field (GPOP, ByteAcc, NoLock, Preserve)
22334 {
22335 Connection (
22336 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22337 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22338 )
22339 { // Pin list
22340 0x0020
22341 }
22342 ),
22343 GMP0, 1,
22344 Connection (
22345 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22346 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22347 )
22348 { // Pin list
22349 0x0021
22350 }
22351 ),
22352 GX00, 1,
22353 Connection (
22354 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22355 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22356 )
22357 { // Pin list
22358 0x0022
22359 }
22360 ),
22361 GX01, 1,
22362 Connection (
22363 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22364 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22365 )
22366 { // Pin list
22367 0x0023
22368 }
22369 ),
22370 GMP1, 1,
22371 Connection (
22372 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22373 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22374 )
22375 { // Pin list
22376 0x0024
22377 }
22378 ),
22379 GX10, 1,
22380 Connection (
22381 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22382 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22383 )
22384 { // Pin list
22385 0x0025
22386 }
22387 ),
22388 GX11, 1,
22389 Connection (
22390 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22391 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22392 )
22393 { // Pin list
22394 0x0026
22395 }
22396 ),
22397 GMP2, 1,
22398 Connection (
22399 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22400 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22401 )
22402 { // Pin list
22403 0x0027
22404 }
22405 ),
22406 GX20, 1,
22407 Connection (
22408 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22409 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22410 )
22411 { // Pin list
22412 0x0028
22413 }
22414 ),
22415 GX21, 1,
22416 Connection (
22417 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22418 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22419 )
22420 { // Pin list
22421 0x0029
22422 }
22423 ),
22424 GMP3, 1,
22425 Connection (
22426 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22427 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22428 )
22429 { // Pin list
22430 0x002A
22431 }
22432 ),
22433 GX30, 1,
22434 Connection (
22435 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22436 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22437 )
22438 { // Pin list
22439 0x002B
22440 }
22441 ),
22442 GX31, 1,
22443 Connection (
22444 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22445 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22446 )
22447 { // Pin list
22448 0x002C
22449 }
22450 ),
22451 GMP4, 1,
22452 Connection (
22453 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22454 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22455 )
22456 { // Pin list
22457 0x002D
22458 }
22459 ),
22460 GX40, 1,
22461 Connection (
22462 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22463 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22464 )
22465 { // Pin list
22466 0x002E
22467 }
22468 ),
22469 GX41, 1,
22470 Connection (
22471 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22472 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22473 )
22474 { // Pin list
22475 0x002F
22476 }
22477 ),
22478 GMP5, 1,
22479 Connection (
22480 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22481 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22482 )
22483 { // Pin list
22484 0x0030
22485 }
22486 ),
22487 GX50, 1,
22488 Connection (
22489 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22490 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22491 )
22492 { // Pin list
22493 0x0031
22494 }
22495 ),
22496 GX51, 1,
22497 Connection (
22498 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22499 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22500 )
22501 { // Pin list
22502 0x0032
22503 }
22504 ),
22505 GEN0, 1,
22506 Connection (
22507 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22508 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22509 )
22510 { // Pin list
22511 0x0033
22512 }
22513 ),
22514 GEN1, 1,
22515 Connection (
22516 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22517 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22518 )
22519 { // Pin list
22520 0x0034
22521 }
22522 ),
22523 GEN2, 1,
22524 Connection (
22525 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22526 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22527 )
22528 { // Pin list
22529 0x0035
22530 }
22531 ),
22532 GEN3, 1,
22533 Connection (
22534 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22535 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22536 )
22537 { // Pin list
22538 0x0036
22539 }
22540 ),
22541 GEN4, 1,
22542 Connection (
22543 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22544 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22545 )
22546 { // Pin list
22547 0x0037
22548 }
22549 ),
22550 GEN5, 1,
22551 Connection (
22552 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22553 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22554 )
22555 { // Pin list
22556 0x0040
22557 }
22558 ),
22559 G28X, 1,
22560 Connection (
22561 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22562 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22563 )
22564 { // Pin list
22565 0x0046
22566 }
22567 ),
22568 G06X, 1,
22569 Connection (
22570 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22571 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22572 )
22573 { // Pin list
22574 0x0048
22575 }
22576 ),
22577 G18X, 1,
22578 Connection (
22579 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22580 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22581 )
22582 { // Pin list
22583 0x0053
22584 }
22585 ),
22586 GSDX, 1
22587 }
22588
22589 Name (AVBL, Zero)
22590 Name (AVBD, Zero)
22591 Name (AVBG, Zero)
22592 Method (_REG, 2, NotSerialized) // _REG: Region Availability
22593 {
22594 If ((Arg0 == 0x08))
22595 {
22596 AVBG = Arg1
22597 }
22598
22599 If ((Arg0 == 0x8D))
22600 {
22601 AVBL = Arg1
22602 }
22603
22604 If ((Arg0 == 0x8C))
22605 {
22606 AVBD = Arg1
22607 }
22608 }
22609
22610 Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
22611 {
22612 Name (RBUF, ResourceTemplate ()
22613 {
22614 GpioInt (Edge, ActiveLow, Exclusive, PullNone, 0x0000,
22615 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22616 )
22617 { // Pin list
22618 0x0011
22619 }
22620 GpioInt (Edge, ActiveLow, Exclusive, PullNone, 0x0000,
22621 "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
22622 )
22623 { // Pin list
22624 0x0013
22625 }
22626 })
22627 Return (RBUF) /* \_SB_.PCI0.I2C7.PMI1._AEI.RBUF */
22628 }
22629
22630 Method (_E11, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
22631 {
22632 If ((OSID == One))
22633 {
22634 If ((^^^^GPO1.USBI != Zero))
22635 {
22636 If ((^^AVBL == One))
22637 {
22638 Notify (BMDR, 0x87) // Device-Specific
22639 }
22640 }
22641 }
22642 }
22643
22644 Method (_E13, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
22645 {
22646 If ((OSID == One))
22647 {
22648 If ((^^^^GPO1.USBI != Zero))
22649 {
22650 If ((^^AVBL == One))
22651 {
22652 Notify (BMDR, 0x87) // Device-Specific
22653 }
22654 }
22655 }
22656 }
22657 }
22658
22659 Device (PMI2)
22660 {
22661 Name (_ADR, Zero) // _ADR: Address
22662 Name (_HID, "INT33F5" /* TI PMIC Controller */) // _HID: Hardware ID
22663 Name (_CID, "INT33F5" /* TI PMIC Controller */) // _CID: Compatible ID
22664 Name (_DDN, "TI PMIC Controller") // _DDN: DOS Device Name
22665 Name (_HRV, 0x03) // _HRV: Hardware Revision
22666 Name (_UID, One) // _UID: Unique ID
22667 Name (_DEP, Package (0x02) // _DEP: Dependencies
22668 {
22669 I2C7,
22670 GPO1
22671 })
22672 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
22673 {
22674 Name (SBUF, ResourceTemplate ()
22675 {
22676 I2cSerialBusV2 (0x005E, ControllerInitiated, 0x000F4240,
22677 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
22678 0x00, ResourceConsumer, , Exclusive,
22679 )
22680 GpioInt (Level, ActiveHigh, Shared, PullDefault, 0x0000,
22681 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
22682 )
22683 { // Pin list
22684 0x000F
22685 }
22686 })
22687 Return (SBUF) /* \_SB_.PCI0.I2C7.PMI2._CRS.SBUF */
22688 }
22689
22690 Method (_STA, 0, NotSerialized) // _STA: Status
22691 {
22692 If ((PMEN == Zero))
22693 {
22694 Return (Zero)
22695 }
22696
22697 If ((PMID == One))
22698 {
22699 ADBG ("TI_DCOVE")
22700 Return (0x0F)
22701 }
22702
22703 Return (Zero)
22704 }
22705
22706 OperationRegion (PMOP, 0x8D, Zero, 0x0100)
22707 Field (PMOP, DWordAcc, NoLock, Preserve)
22708 {
22709 LDO1, 32,
22710 LDO2, 32,
22711 LDO3, 32,
22712 LDO5, 32,
22713 LDO6, 32,
22714 LDO7, 32,
22715 LDO8, 32,
22716 LDO9, 32,
22717 LD10, 32,
22718 LD11, 32,
22719 LD12, 32,
22720 LD13, 32,
22721 LD14, 32
22722 }
22723
22724 OperationRegion (DPTF, 0x8C, Zero, 0x0100)
22725 Field (DPTF, DWordAcc, NoLock, Preserve)
22726 {
22727 TMP0, 32,
22728 AX00, 32,
22729 AX01, 32,
22730 TMP1, 32,
22731 AX10, 32,
22732 AX11, 32,
22733 TMP2, 32,
22734 AX20, 32,
22735 AX21, 32,
22736 TMP3, 32,
22737 AX30, 32,
22738 AX31, 32,
22739 TMP4, 32,
22740 AX40, 32,
22741 AX41, 32,
22742 TMP5, 32,
22743 AX50, 32,
22744 AX51, 32,
22745 PEN0, 32,
22746 PEN1, 32,
22747 PEN2, 32,
22748 PEN3, 32,
22749 PEN4, 32,
22750 PEN5, 32
22751 }
22752
22753 Name (LPAT, Package (0x44)
22754 {
22755 0x091B,
22756 0x03F1,
22757 0x094D,
22758 0x03EB,
22759 0x097F,
22760 0x03E4,
22761 0x09B1,
22762 0x03DA,
22763 0x09E3,
22764 0x03CE,
22765 0x0A15,
22766 0x03BE,
22767 0x0A47,
22768 0x03AA,
22769 0x0A79,
22770 0x0392,
22771 0x0AAB,
22772 0x0375,
22773 0x0ADD,
22774 0x0353,
22775 0x0B0F,
22776 0x032C,
22777 0x0B41,
22778 0x0300,
22779 0x0B73,
22780 0x02D0,
22781 0x0BA5,
22782 0x029D,
22783 0x0BD7,
22784 0x0268,
22785 0x0C09,
22786 0x0232,
22787 0x0C3B,
22788 0x01FD,
22789 0x0C6D,
22790 0x01C9,
22791 0x0C9F,
22792 0x0197,
22793 0x0CD1,
22794 0x0169,
22795 0x0D03,
22796 0x013E,
22797 0x0D35,
22798 0x0117,
22799 0x0D67,
22800 0xF5,
22801 0x0D99,
22802 0xD6,
22803 0x0DCB,
22804 0xBB,
22805 0x0DFD,
22806 0xA3,
22807 0x0E2F,
22808 0x8E,
22809 0x0E61,
22810 0x7C,
22811 0x0E93,
22812 0x6C,
22813 0x0EC5,
22814 0x5E,
22815 0x0EF7,
22816 0x53,
22817 0x0F29,
22818 0x48,
22819 0x0F5B,
22820 0x3F,
22821 0x0F8D,
22822 0x38
22823 })
22824 OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0100)
22825 Field (GPOP, ByteAcc, NoLock, Preserve)
22826 {
22827 Connection (
22828 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22829 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22830 )
22831 { // Pin list
22832 0x0020
22833 }
22834 ),
22835 GMP0, 1,
22836 Connection (
22837 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22838 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22839 )
22840 { // Pin list
22841 0x0021
22842 }
22843 ),
22844 GX00, 1,
22845 Connection (
22846 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22847 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22848 )
22849 { // Pin list
22850 0x0022
22851 }
22852 ),
22853 GX01, 1,
22854 Connection (
22855 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22856 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22857 )
22858 { // Pin list
22859 0x0023
22860 }
22861 ),
22862 GMP1, 1,
22863 Connection (
22864 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22865 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22866 )
22867 { // Pin list
22868 0x0024
22869 }
22870 ),
22871 GX10, 1,
22872 Connection (
22873 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22874 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22875 )
22876 { // Pin list
22877 0x0025
22878 }
22879 ),
22880 GX11, 1,
22881 Connection (
22882 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22883 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22884 )
22885 { // Pin list
22886 0x0026
22887 }
22888 ),
22889 GMP2, 1,
22890 Connection (
22891 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22892 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22893 )
22894 { // Pin list
22895 0x0027
22896 }
22897 ),
22898 GX20, 1,
22899 Connection (
22900 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22901 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22902 )
22903 { // Pin list
22904 0x0028
22905 }
22906 ),
22907 GX21, 1,
22908 Connection (
22909 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22910 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22911 )
22912 { // Pin list
22913 0x0029
22914 }
22915 ),
22916 GMP3, 1,
22917 Connection (
22918 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22919 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22920 )
22921 { // Pin list
22922 0x002A
22923 }
22924 ),
22925 GX30, 1,
22926 Connection (
22927 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22928 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22929 )
22930 { // Pin list
22931 0x002B
22932 }
22933 ),
22934 GX31, 1,
22935 Connection (
22936 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22937 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22938 )
22939 { // Pin list
22940 0x002C
22941 }
22942 ),
22943 GMP4, 1,
22944 Connection (
22945 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22946 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22947 )
22948 { // Pin list
22949 0x002D
22950 }
22951 ),
22952 GX40, 1,
22953 Connection (
22954 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22955 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22956 )
22957 { // Pin list
22958 0x002E
22959 }
22960 ),
22961 GX41, 1,
22962 Connection (
22963 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22964 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22965 )
22966 { // Pin list
22967 0x002F
22968 }
22969 ),
22970 GMP5, 1,
22971 Connection (
22972 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22973 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22974 )
22975 { // Pin list
22976 0x0030
22977 }
22978 ),
22979 GX50, 1,
22980 Connection (
22981 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22982 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22983 )
22984 { // Pin list
22985 0x0031
22986 }
22987 ),
22988 GX51, 1,
22989 Connection (
22990 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
22991 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
22992 )
22993 { // Pin list
22994 0x0032
22995 }
22996 ),
22997 GEN0, 1,
22998 Connection (
22999 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23000 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23001 )
23002 { // Pin list
23003 0x0033
23004 }
23005 ),
23006 GEN1, 1,
23007 Connection (
23008 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23009 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23010 )
23011 { // Pin list
23012 0x0034
23013 }
23014 ),
23015 GEN2, 1,
23016 Connection (
23017 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23018 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23019 )
23020 { // Pin list
23021 0x0035
23022 }
23023 ),
23024 GEN3, 1,
23025 Connection (
23026 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23027 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23028 )
23029 { // Pin list
23030 0x0036
23031 }
23032 ),
23033 GEN4, 1,
23034 Connection (
23035 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23036 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23037 )
23038 { // Pin list
23039 0x0037
23040 }
23041 ),
23042 GEN5, 1,
23043 Connection (
23044 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23045 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23046 )
23047 { // Pin list
23048 0x0044
23049 }
23050 ),
23051 GSDX, 1,
23052 Connection (
23053 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23054 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23055 )
23056 { // Pin list
23057 0x0047
23058 }
23059 ),
23060 G28X, 1,
23061 Connection (
23062 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23063 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23064 )
23065 { // Pin list
23066 0x0048
23067 }
23068 ),
23069 G18U, 1,
23070 Connection (
23071 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23072 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23073 )
23074 { // Pin list
23075 0x0049
23076 }
23077 ),
23078 G18X, 1,
23079 Connection (
23080 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23081 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23082 )
23083 { // Pin list
23084 0x004B
23085 }
23086 ),
23087 G3P3, 1,
23088 Connection (
23089 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23090 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23091 )
23092 { // Pin list
23093 0x004C
23094 }
23095 ),
23096 G12T, 1
23097 }
23098
23099 Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
23100 {
23101 Name (RBUF, ResourceTemplate ()
23102 {
23103 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
23104 "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
23105 )
23106 { // Pin list
23107 0x0011
23108 }
23109 })
23110 Return (RBUF) /* \_SB_.PCI0.I2C7.PMI2._AEI.RBUF */
23111 }
23112
23113 Method (_E11, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
23114 {
23115 If ((OSID == One))
23116 {
23117 If ((^^^^GPO1.USBI != Zero))
23118 {
23119 If ((^^^I2C3.AVBL == One))
23120 {
23121 Notify (^^^I2C3.TIDR, 0x87) // Device-Specific
23122 }
23123 }
23124 }
23125 }
23126
23127 Name (AVBL, Zero)
23128 Name (AVBD, Zero)
23129 Name (AVBG, Zero)
23130 Method (_REG, 2, NotSerialized) // _REG: Region Availability
23131 {
23132 If ((Arg0 == 0x08))
23133 {
23134 AVBG = Arg1
23135 }
23136
23137 If ((Arg0 == 0x8D))
23138 {
23139 AVBL = Arg1
23140 }
23141
23142 If ((Arg0 == 0x8C))
23143 {
23144 AVBD = Arg1
23145 }
23146 }
23147 }
23148
23149 Device (PMI5)
23150 {
23151 Name (_ADR, Zero) // _ADR: Address
23152 Name (_HID, "INT34D3") // _HID: Hardware ID
23153 Name (_CID, "INT34D3") // _CID: Compatible ID
23154 Name (_DDN, "WHISKEY COVE AIC") // _DDN: DOS Device Name
23155 Name (_HRV, 0x03) // _HRV: Hardware Revision
23156 Name (_UID, One) // _UID: Unique ID
23157 Name (ADEP, Package (0x03)
23158 {
23159 I2C7,
23160 GPO1,
23161 GPO3
23162 })
23163 Name (_DEP, Package (0x03) // _DEP: Dependencies
23164 {
23165 I2C7,
23166 GPO1,
23167 MBID
23168 })
23169 Name (ACDC, One)
23170 Name (SBUF, ResourceTemplate ()
23171 {
23172 I2cSerialBusV2 (0x004F, ControllerInitiated, 0x000F4240,
23173 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
23174 0x00, ResourceConsumer, , Exclusive,
23175 )
23176 I2cSerialBusV2 (0x005E, ControllerInitiated, 0x000F4240,
23177 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
23178 0x00, ResourceConsumer, , Exclusive,
23179 )
23180 I2cSerialBusV2 (0x006E, ControllerInitiated, 0x000F4240,
23181 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
23182 0x00, ResourceConsumer, , Exclusive,
23183 )
23184 GpioInt (Level, ActiveHigh, Shared, PullDefault, 0x0000,
23185 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
23186 )
23187 { // Pin list
23188 0x000F
23189 }
23190 })
23191 Name (HBUF, ResourceTemplate ()
23192 {
23193 I2cSerialBusV2 (0x004F, ControllerInitiated, 0x000F4240,
23194 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
23195 0x00, ResourceConsumer, , Exclusive,
23196 )
23197 I2cSerialBusV2 (0x005E, ControllerInitiated, 0x000F4240,
23198 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
23199 0x00, ResourceConsumer, , Exclusive,
23200 )
23201 I2cSerialBusV2 (0x006E, ControllerInitiated, 0x000F4240,
23202 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
23203 0x00, ResourceConsumer, , Exclusive,
23204 )
23205 GpioInt (Level, ActiveHigh, Shared, PullDefault, 0x0000,
23206 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
23207 )
23208 { // Pin list
23209 0x000F
23210 }
23211 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
23212 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
23213 )
23214 { // Pin list
23215 0x003D
23216 }
23217 })
23218 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
23219 {
23220 If (((BDID == 0x0A) && (OSID == 0x04)))
23221 {
23222 Return (HBUF) /* \_SB_.PCI0.I2C7.PMI5.HBUF */
23223 }
23224 Else
23225 {
23226 Return (SBUF) /* \_SB_.PCI0.I2C7.PMI5.SBUF */
23227 }
23228 }
23229
23230 Method (_STA, 0, NotSerialized) // _STA: Status
23231 {
23232 If ((PMEN == Zero))
23233 {
23234 Return (Zero)
23235 }
23236
23237 If ((PMID == 0x03))
23238 {
23239 ADBG ("W_COVE")
23240 Return (0x0F)
23241 }
23242
23243 Return (Zero)
23244 }
23245
23246 OperationRegion (DPTF, 0x8C, Zero, 0x0100)
23247 Field (DPTF, DWordAcc, NoLock, Preserve)
23248 {
23249 TMP0, 32,
23250 AX00, 32,
23251 AX01, 32,
23252 TMP1, 32,
23253 AX10, 32,
23254 AX11, 32,
23255 TMP2, 32,
23256 AX20, 32,
23257 AX21, 32,
23258 TMP3, 32,
23259 AX30, 32,
23260 AX31, 32,
23261 TMP4, 32,
23262 AX40, 32,
23263 AX41, 32,
23264 TMP5, 32,
23265 AX50, 32,
23266 AX51, 32,
23267 PEN0, 32,
23268 PEN1, 32,
23269 PEN2, 32,
23270 PEN3, 32,
23271 PEN4, 32,
23272 PEN5, 32
23273 }
23274
23275 OperationRegion (PMOP, 0x8D, Zero, 0x0100)
23276 Field (PMOP, DWordAcc, NoLock, Preserve)
23277 {
23278 V18A, 32,
23279 V18X, 32,
23280 VDDQ, 32,
23281 V12A, 32,
23282 V12X, 32,
23283 V28X, 32,
23284 V33A, 32,
23285 V3SD, 32,
23286 VSD, 32,
23287 VSW2, 32,
23288 VSW1, 32,
23289 VUPY, 32,
23290 VRSO, 32,
23291 VP1A, 32,
23292 VP1B, 32,
23293 VP1F, 32,
23294 VP2D, 32,
23295 VP3A, 32,
23296 VP3B, 32,
23297 VP4A, 32,
23298 VP4B, 32,
23299 VP4C, 32,
23300 VP4D, 32,
23301 VP5A, 32,
23302 VP5B, 32,
23303 VP6A, 32,
23304 VP6B, 32,
23305 VP7A, 32
23306 }
23307
23308 OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0100)
23309 Field (GPOP, ByteAcc, NoLock, Preserve)
23310 {
23311 Connection (
23312 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23313 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23314 )
23315 { // Pin list
23316 0x0020
23317 }
23318 ),
23319 GMP0, 1,
23320 Connection (
23321 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23322 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23323 )
23324 { // Pin list
23325 0x0021
23326 }
23327 ),
23328 GX00, 1,
23329 Connection (
23330 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23331 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23332 )
23333 { // Pin list
23334 0x0022
23335 }
23336 ),
23337 GX01, 1,
23338 Connection (
23339 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23340 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23341 )
23342 { // Pin list
23343 0x0023
23344 }
23345 ),
23346 GMP1, 1,
23347 Connection (
23348 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23349 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23350 )
23351 { // Pin list
23352 0x0024
23353 }
23354 ),
23355 GX10, 1,
23356 Connection (
23357 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23358 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23359 )
23360 { // Pin list
23361 0x0025
23362 }
23363 ),
23364 GX11, 1,
23365 Connection (
23366 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23367 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23368 )
23369 { // Pin list
23370 0x0026
23371 }
23372 ),
23373 GMP2, 1,
23374 Connection (
23375 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23376 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23377 )
23378 { // Pin list
23379 0x0027
23380 }
23381 ),
23382 GX20, 1,
23383 Connection (
23384 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23385 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23386 )
23387 { // Pin list
23388 0x0028
23389 }
23390 ),
23391 GX21, 1,
23392 Connection (
23393 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23394 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23395 )
23396 { // Pin list
23397 0x0029
23398 }
23399 ),
23400 GMP3, 1,
23401 Connection (
23402 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23403 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23404 )
23405 { // Pin list
23406 0x002A
23407 }
23408 ),
23409 GX30, 1,
23410 Connection (
23411 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23412 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23413 )
23414 { // Pin list
23415 0x002B
23416 }
23417 ),
23418 GX31, 1,
23419 Connection (
23420 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23421 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23422 )
23423 { // Pin list
23424 0x002C
23425 }
23426 ),
23427 GMP4, 1,
23428 Connection (
23429 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23430 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23431 )
23432 { // Pin list
23433 0x002D
23434 }
23435 ),
23436 GX40, 1,
23437 Connection (
23438 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23439 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23440 )
23441 { // Pin list
23442 0x002E
23443 }
23444 ),
23445 GX41, 1,
23446 Connection (
23447 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23448 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23449 )
23450 { // Pin list
23451 0x002F
23452 }
23453 ),
23454 GMP5, 1,
23455 Connection (
23456 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23457 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23458 )
23459 { // Pin list
23460 0x0030
23461 }
23462 ),
23463 GX50, 1,
23464 Connection (
23465 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23466 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23467 )
23468 { // Pin list
23469 0x0031
23470 }
23471 ),
23472 GX51, 1,
23473 Connection (
23474 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23475 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23476 )
23477 { // Pin list
23478 0x0032
23479 }
23480 ),
23481 GEN0, 1,
23482 Connection (
23483 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23484 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23485 )
23486 { // Pin list
23487 0x0033
23488 }
23489 ),
23490 GEN1, 1,
23491 Connection (
23492 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23493 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23494 )
23495 { // Pin list
23496 0x0034
23497 }
23498 ),
23499 GEN2, 1,
23500 Connection (
23501 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23502 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23503 )
23504 { // Pin list
23505 0x0035
23506 }
23507 ),
23508 GEN3, 1,
23509 Connection (
23510 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23511 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23512 )
23513 { // Pin list
23514 0x0036
23515 }
23516 ),
23517 GEN4, 1,
23518 Connection (
23519 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23520 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23521 )
23522 { // Pin list
23523 0x0037
23524 }
23525 ),
23526 GEN5, 1,
23527 Connection (
23528 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23529 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23530 )
23531 { // Pin list
23532 0x0040
23533 }
23534 ),
23535 G18A, 1,
23536 Connection (
23537 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23538 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23539 )
23540 { // Pin list
23541 0x0041
23542 }
23543 ),
23544 G18X, 1,
23545 Connection (
23546 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23547 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23548 )
23549 { // Pin list
23550 0x0042
23551 }
23552 ),
23553 GDDQ, 1,
23554 Connection (
23555 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23556 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23557 )
23558 { // Pin list
23559 0x0043
23560 }
23561 ),
23562 G12A, 1,
23563 Connection (
23564 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23565 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23566 )
23567 { // Pin list
23568 0x0044
23569 }
23570 ),
23571 G12X, 1,
23572 Connection (
23573 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23574 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23575 )
23576 { // Pin list
23577 0x0045
23578 }
23579 ),
23580 G28X, 1,
23581 Connection (
23582 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23583 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23584 )
23585 { // Pin list
23586 0x0046
23587 }
23588 ),
23589 G33A, 1,
23590 Connection (
23591 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23592 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23593 )
23594 { // Pin list
23595 0x0047
23596 }
23597 ),
23598 G3SD, 1,
23599 Connection (
23600 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23601 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23602 )
23603 { // Pin list
23604 0x0048
23605 }
23606 ),
23607 GSD, 1,
23608 Connection (
23609 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23610 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23611 )
23612 { // Pin list
23613 0x0049
23614 }
23615 ),
23616 GSW2, 1,
23617 Connection (
23618 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23619 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23620 )
23621 { // Pin list
23622 0x004A
23623 }
23624 ),
23625 GSW1, 1,
23626 Connection (
23627 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23628 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23629 )
23630 { // Pin list
23631 0x004B
23632 }
23633 ),
23634 GUPY, 1,
23635 Connection (
23636 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23637 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23638 )
23639 { // Pin list
23640 0x004C
23641 }
23642 ),
23643 GRS0, 1,
23644 Connection (
23645 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23646 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23647 )
23648 { // Pin list
23649 0x004D
23650 }
23651 ),
23652 GP1A, 1,
23653 Connection (
23654 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23655 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23656 )
23657 { // Pin list
23658 0x004E
23659 }
23660 ),
23661 GP1B, 1,
23662 Connection (
23663 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23664 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23665 )
23666 { // Pin list
23667 0x004F
23668 }
23669 ),
23670 GP1F, 1,
23671 Connection (
23672 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23673 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23674 )
23675 { // Pin list
23676 0x0050
23677 }
23678 ),
23679 GP2D, 1,
23680 Connection (
23681 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23682 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23683 )
23684 { // Pin list
23685 0x0051
23686 }
23687 ),
23688 GP3A, 1,
23689 Connection (
23690 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23691 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23692 )
23693 { // Pin list
23694 0x0052
23695 }
23696 ),
23697 GP3B, 1,
23698 Connection (
23699 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23700 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23701 )
23702 { // Pin list
23703 0x0053
23704 }
23705 ),
23706 GP4A, 1,
23707 Connection (
23708 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23709 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23710 )
23711 { // Pin list
23712 0x0054
23713 }
23714 ),
23715 GP4B, 1,
23716 Connection (
23717 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23718 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23719 )
23720 { // Pin list
23721 0x0055
23722 }
23723 ),
23724 GP4C, 1,
23725 Connection (
23726 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23727 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23728 )
23729 { // Pin list
23730 0x0056
23731 }
23732 ),
23733 GP4D, 1,
23734 Connection (
23735 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23736 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23737 )
23738 { // Pin list
23739 0x0057
23740 }
23741 ),
23742 GP5A, 1,
23743 Connection (
23744 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23745 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23746 )
23747 { // Pin list
23748 0x0058
23749 }
23750 ),
23751 GP5B, 1,
23752 Connection (
23753 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23754 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23755 )
23756 { // Pin list
23757 0x0059
23758 }
23759 ),
23760 GP6A, 1,
23761 Connection (
23762 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23763 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23764 )
23765 { // Pin list
23766 0x005A
23767 }
23768 ),
23769 GP6B, 1,
23770 Connection (
23771 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23772 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23773 )
23774 { // Pin list
23775 0x005B
23776 }
23777 ),
23778 GP7A, 1,
23779 Connection (
23780 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23781 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23782 )
23783 { // Pin list
23784 0x005D
23785 }
23786 ),
23787 MOXX, 1,
23788 Connection (
23789 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23790 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23791 )
23792 { // Pin list
23793 0x005F
23794 }
23795 ),
23796 GPRW, 1,
23797 Connection (
23798 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
23799 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23800 )
23801 { // Pin list
23802 0x0009
23803 }
23804 ),
23805 G1P1, 1
23806 }
23807
23808 OperationRegion (REGS, 0x8F, Zero, 0x50)
23809 Field (REGS, ByteAcc, NoLock, Preserve)
23810 {
23811 CLNT, 8,
23812 SA, 8,
23813 OFF, 8,
23814 VAL, 8,
23815 RWM, 8
23816 }
23817
23818 Name (AVBL, Zero)
23819 Name (AVBD, Zero)
23820 Name (AVBG, Zero)
23821 Name (AVBE, Zero)
23822 Method (_REG, 2, NotSerialized) // _REG: Region Availability
23823 {
23824 If ((Arg0 == 0x08))
23825 {
23826 AVBG = Arg1
23827 }
23828
23829 If ((Arg0 == 0x8D))
23830 {
23831 AVBL = Arg1
23832 }
23833
23834 If ((Arg0 == 0x8C))
23835 {
23836 AVBD = Arg1
23837 }
23838
23839 If ((Arg0 == 0x8F))
23840 {
23841 AVBE = Arg1
23842 }
23843 }
23844
23845 Method (GET, 3, Serialized)
23846 {
23847 If ((AVBE == One))
23848 {
23849 CLNT = Arg0
23850 SA = Arg1
23851 OFF = Arg2
23852 RWM = Zero
23853 If ((AVBG == One))
23854 {
23855 GPRW = Zero
23856 }
23857 }
23858
23859 Return (VAL) /* \_SB_.PCI0.I2C7.PMI5.VAL_ */
23860 }
23861
23862 Method (SET, 4, Serialized)
23863 {
23864 If ((AVBE == One))
23865 {
23866 CLNT = Arg0
23867 SA = Arg1
23868 OFF = Arg2
23869 VAL = Arg3
23870 RWM = One
23871 If ((AVBG == One))
23872 {
23873 GPRW = One
23874 }
23875 }
23876 }
23877
23878 Method (EOTG, 0, NotSerialized)
23879 {
23880 ADBG ("PH2")
23881 Local0 = GET (One, 0x5E, 0x17)
23882 Local0 |= 0x40
23883 SET (One, 0x5E, 0x17, Local0)
23884 SET (One, 0x5E, 0x25, 0x6B)
23885 SET (One, 0x5E, 0x26, 0x05)
23886 SET (One, 0x5E, 0x24, 0x02)
23887 Local0 = GET (One, 0x5E, 0x28)
23888 ADBG ("B4 Set")
23889 ADBG (Local0)
23890 Local0 &= 0xCF
23891 SET (One, 0x5E, 0x25, 0x6B)
23892 SET (One, 0x5E, 0x26, 0x05)
23893 SET (One, 0x5E, 0x27, Local0)
23894 SET (One, 0x5E, 0x24, One)
23895 SET (One, 0x5E, 0x25, 0x6B)
23896 SET (One, 0x5E, 0x26, 0x05)
23897 SET (One, 0x5E, 0x24, 0x02)
23898 Local0 = GET (One, 0x5E, 0x28)
23899 ADBG ("After Set")
23900 ADBG ("REG05")
23901 ADBG (Local0)
23902 SET (One, 0x5E, 0x25, 0x6B)
23903 SET (One, 0x5E, 0x26, One)
23904 SET (One, 0x5E, 0x24, 0x02)
23905 Local0 = GET (One, 0x5E, 0x28)
23906 Local0 &= 0xEF
23907 Local0 |= 0x20
23908 SET (One, 0x5E, 0x25, 0x6B)
23909 SET (One, 0x5E, 0x26, One)
23910 SET (One, 0x5E, 0x27, Local0)
23911 SET (One, 0x5E, 0x24, One)
23912 SET (One, 0x5E, 0x25, 0x6B)
23913 SET (One, 0x5E, 0x26, 0x08)
23914 SET (One, 0x5E, 0x24, 0x02)
23915 Local0 = GET (One, 0x5E, 0x28)
23916 ADBG ("PH3")
23917 Local0 >>= 0x06
23918 If ((Local0 == One))
23919 {
23920 ADBG ("USB Host")
23921 }
23922 ElseIf ((Local0 == 0x03))
23923 {
23924 ADBG ("REG08 St OTG")
23925 }
23926 }
23927
23928 Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
23929 {
23930 Name (HBUF, ResourceTemplate ()
23931 {
23932 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0000,
23933 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23934 )
23935 { // Pin list
23936 0x001F
23937 }
23938 })
23939 Name (WBUF, ResourceTemplate ()
23940 {
23941 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
23942 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23943 )
23944 { // Pin list
23945 0x0012
23946 }
23947 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0000,
23948 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
23949 )
23950 { // Pin list
23951 0x001F
23952 }
23953 })
23954 If ((((BDID == 0x09) || (BDID == 0x0A)) && (OSID == One)))
23955 {
23956 Return (HBUF) /* \_SB_.PCI0.I2C7.PMI5._AEI.HBUF */
23957 }
23958 ElseIf (((BDID == 0x08) && (OSID == One)))
23959 {
23960 Return (WBUF) /* \_SB_.PCI0.I2C7.PMI5._AEI.WBUF */
23961 }
23962 }
23963
23964 Method (_E12, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
23965 {
23966 If ((BDID == 0x08))
23967 {
23968 Sleep (0x0384)
23969 If (CondRefOf (\_SB.PCI0.I2C7.BATC, Local1))
23970 {
23971 Local0 = GET (One, 0x6E, 0x1E)
23972 Local0 >>= 0x03
23973 Local0 &= 0x03
23974 If ((Local0 != One))
23975 {
23976 Local0 = GET (One, 0x5E, 0x29)
23977 Local0 >>= 0x02
23978 Local0 &= 0x0F
23979 Local0 = ^^BATC.INTC ()
23980 If ((One == Local0))
23981 {
23982 ADBG ("BADP1")
23983 Notify (ADP1, 0x80) // Status Change
23984 ADBG ("AfADP1")
23985 Notify (BATC, 0x80) // Status Change
23986 Notify (BATC, 0x81) // Information Change
23987 ADBG ("PINTC")
23988 }
23989
23990 If (CondRefOf (\_SB.DPTF, Local3))
23991 {
23992 If ((One == Local0))
23993 {
23994 ADBG ("DPTFNOTIFY")
23995 Notify (^^^^DPTF, 0x86) // Device-Specific
23996 Notify (TCHG, 0x80) // Status Change
23997 }
23998 }
23999 }
24000 }
24001 }
24002 }
24003
24004 Method (_E1F, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF
24005 {
24006 If (((BDID == 0x08) || ((BDID == 0x09) || (BDID == 0x0A))))
24007 {
24008 If ((AVBL == One))
24009 {
24010 Local0 = GET (One, 0x6E, 0x1E)
24011 Local0 >>= 0x03
24012 Local0 &= 0x03
24013 If ((Local0 == Zero)){}
24014 ElseIf ((Local0 == One))
24015 {
24016 ADBG ("RID_GND")
24017 Local0 = GET (One, 0x5E, 0x07)
24018 Local0 |= One
24019 ADBG (Local0)
24020 SET (One, 0x5E, 0x07, Local0)
24021 CDRH (Zero)
24022 ADBG ("PH1")
24023 EOTG ()
24024 }
24025 ElseIf ((Local0 == 0x02))
24026 {
24027 Local0 = GET (One, 0x6E, 0x1E)
24028 Local0 >>= 0x03
24029 Local0 &= 0x03
24030 If ((Local0 != Zero))
24031 {
24032 Local0 = GET (One, 0x5E, 0x07)
24033 Local0 &= 0xFE
24034 SET (One, 0x5E, 0x07, Local0)
24035 Local0 = GET (One, 0x5E, 0x17)
24036 Local0 |= 0x40
24037 SET (One, 0x5E, 0x17, Local0)
24038 SET (One, 0x5E, 0x25, 0x6B)
24039 SET (One, 0x5E, 0x26, One)
24040 SET (One, 0x5E, 0x24, 0x02)
24041 Local0 = GET (One, 0x5E, 0x28)
24042 Local0 |= 0x10
24043 Local0 &= 0xDF
24044 SET (One, 0x5E, 0x25, 0x6B)
24045 SET (One, 0x5E, 0x26, One)
24046 SET (One, 0x5E, 0x27, Local0)
24047 SET (One, 0x5E, 0x24, One)
24048 Local0 = GET (One, 0x5E, 0x17)
24049 Local0 &= 0xBF
24050 SET (One, 0x5E, 0x17, Local0)
24051 }
24052 }
24053 Else
24054 {
24055 ADBG ("Reserved")
24056 If ((DSFG == One))
24057 {
24058 CDRH (Zero)
24059 }
24060 Else
24061 {
24062 CDRD (Zero)
24063 }
24064 }
24065 }
24066 }
24067 }
24068
24069 Method (SRCD, 0, Serialized)
24070 {
24071 If ((AVBL == One))
24072 {
24073 ADBG ("ACDC")
24074 ADBG (ACDC)
24075 Return (ACDC) /* \_SB_.PCI0.I2C7.PMI5.ACDC */
24076 }
24077 Else
24078 {
24079 ADBG ("SRCD AC, PMIC Unavailable")
24080 Return (One)
24081 }
24082 }
24083
24084 Name (LPAT, Package (0x3C)
24085 {
24086 0x09E3,
24087 0x00076272,
24088 0x0A15,
24089 0x00058192,
24090 0x0A47,
24091 0x00042551,
24092 0x0A79,
24093 0x0003267F,
24094 0x0AAB,
24095 0x00026A06,
24096 0x0ADD,
24097 0x0001DD93,
24098 0x0B0F,
24099 0x000173FB,
24100 0x0B41,
24101 0x000123EA,
24102 0x0B73,
24103 0xE6B9,
24104 0x0BA5,
24105 0xB798,
24106 0x0BD7,
24107 0x930B,
24108 0x0C09,
24109 0x767E,
24110 0x0C3B,
24111 0x600F,
24112 0x0C6D,
24113 0x4E50,
24114 0x0C9F,
24115 0x4031,
24116 0x0CD1,
24117 0x34E3,
24118 0x0D03,
24119 0x2BC9,
24120 0x0D35,
24121 0x2470,
24122 0x0D67,
24123 0x1E76,
24124 0x0D99,
24125 0x1990,
24126 0x0DCB,
24127 0x158E,
24128 0x0DFD,
24129 0x1242,
24130 0x0E2F,
24131 0x0F84,
24132 0x0E61,
24133 0x0D3C,
24134 0x0E93,
24135 0x0B56,
24136 0x0EC5,
24137 0x09BE,
24138 0x0EF7,
24139 0x0866,
24140 0x0F29,
24141 0x0744,
24142 0x0F5B,
24143 0x064F,
24144 0x0F8D,
24145 0x057E
24146 })
24147 }
24148
24149 Device (PMIF)
24150 {
24151 Name (_ADR, Zero) // _ADR: Address
24152 Name (_HID, "DMY0001") // _HID: Hardware ID
24153 Name (_CID, "DMY0001") // _CID: Compatible ID
24154 Name (_DDN, "Dummy PMIC controller") // _DDN: DOS Device Name
24155 Name (_HRV, Zero) // _HRV: Hardware Revision
24156 Name (_UID, One) // _UID: Unique ID
24157 Name (_DEP, Package (0x01) // _DEP: Dependencies
24158 {
24159 I2C7
24160 })
24161 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
24162 {
24163 Name (SBUF, ResourceTemplate ()
24164 {
24165 I2cSerialBusV2 (0x005E, ControllerInitiated, 0x000F4240,
24166 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
24167 0x00, ResourceConsumer, , Exclusive,
24168 )
24169 Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
24170 {
24171 0x00000043,
24172 }
24173 Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
24174 {
24175 0x00000043,
24176 }
24177 Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
24178 {
24179 0x00000043,
24180 }
24181 })
24182 Return (SBUF) /* \_SB_.PCI0.I2C7.PMIF._CRS.SBUF */
24183 }
24184
24185 Method (_STA, 0, NotSerialized) // _STA: Status
24186 {
24187 If ((PMEN == Zero))
24188 {
24189 Return (Zero)
24190 }
24191
24192 If ((PMID == 0xFE))
24193 {
24194 ADBG ("DMPMIC")
24195 Return (0x0F)
24196 }
24197
24198 Return (Zero)
24199 }
24200 }
24201
24202 Device (PMIC)
24203 {
24204 Name (_ADR, Zero) // _ADR: Address
24205 Name (_HID, "INT33FD" /* Intel Baytrail Power Management IC */) // _HID: Hardware ID
24206 Name (_CID, "INT33FD" /* Intel Baytrail Power Management IC */) // _CID: Compatible ID
24207 Name (_DDN, "CRYSTAL COVE+ AIC") // _DDN: DOS Device Name
24208 Name (_HRV, 0x03) // _HRV: Hardware Revision
24209 Name (_UID, One) // _UID: Unique ID
24210 Name (_DEP, Package (0x02) // _DEP: Dependencies
24211 {
24212 I2C7,
24213 GPO1
24214 })
24215 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
24216 {
24217 Name (SBUF, ResourceTemplate ()
24218 {
24219 I2cSerialBusV2 (0x006E, ControllerInitiated, 0x000F4240,
24220 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
24221 0x00, ResourceConsumer, , Exclusive,
24222 )
24223 GpioInt (Level, ActiveHigh, Shared, PullDefault, 0x0000,
24224 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
24225 )
24226 { // Pin list
24227 0x000F
24228 }
24229 })
24230 Return (SBUF) /* \_SB_.PCI0.I2C7.PMIC._CRS.SBUF */
24231 }
24232
24233 Method (_STA, 0, NotSerialized) // _STA: Status
24234 {
24235 If ((PMEN == Zero))
24236 {
24237 Return (Zero)
24238 }
24239
24240 If ((PMID == Zero))
24241 {
24242 Return (0x0F)
24243 }
24244
24245 Return (Zero)
24246 }
24247
24248 OperationRegion (DPTF, 0x8C, Zero, 0x0100)
24249 Field (DPTF, DWordAcc, NoLock, Preserve)
24250 {
24251 TMP0, 32,
24252 AX00, 32,
24253 AX01, 32,
24254 TMP1, 32,
24255 AX10, 32,
24256 AX11, 32,
24257 TMP2, 32,
24258 AX20, 32,
24259 AX21, 32,
24260 TMP3, 32,
24261 AX30, 32,
24262 AX31, 32,
24263 TMP4, 32,
24264 AX40, 32,
24265 AX41, 32,
24266 TMP5, 32,
24267 AX50, 32,
24268 AX51, 32,
24269 PEN0, 32,
24270 PEN1, 32,
24271 PEN2, 32,
24272 PEN3, 32,
24273 PEN4, 32,
24274 PEN5, 32
24275 }
24276
24277 OperationRegion (PMOP, 0x8D, Zero, 0x0100)
24278 Field (PMOP, DWordAcc, NoLock, Preserve)
24279 {
24280 VSYS, 32,
24281 SYSX, 32,
24282 SYSU, 32,
24283 SYSS, 32,
24284 V50S, 32,
24285 HOST, 32,
24286 VBUS, 32,
24287 HDMI, 32,
24288 S285, 32,
24289 X285, 32,
24290 V33A, 32,
24291 V33S, 32,
24292 V33U, 32,
24293 V33I, 32,
24294 V18A, 32,
24295 REFQ, 32,
24296 V12A, 32,
24297 V18S, 32,
24298 V18X, 32,
24299 V18U, 32,
24300 V12X, 32,
24301 V12S, 32,
24302 V10A, 32,
24303 V10S, 32,
24304 V10X, 32,
24305 V105, 32,
24306 V33X, 32
24307 }
24308
24309 OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0100)
24310 Field (GPOP, ByteAcc, NoLock, Preserve)
24311 {
24312 Connection (
24313 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24314 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24315 )
24316 { // Pin list
24317 0x0020
24318 }
24319 ),
24320 GMP0, 1,
24321 Connection (
24322 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24323 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24324 )
24325 { // Pin list
24326 0x0021
24327 }
24328 ),
24329 GX00, 1,
24330 Connection (
24331 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24332 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24333 )
24334 { // Pin list
24335 0x0022
24336 }
24337 ),
24338 GX01, 1,
24339 Connection (
24340 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24341 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24342 )
24343 { // Pin list
24344 0x0023
24345 }
24346 ),
24347 GMP1, 1,
24348 Connection (
24349 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24350 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24351 )
24352 { // Pin list
24353 0x0024
24354 }
24355 ),
24356 GX10, 1,
24357 Connection (
24358 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24359 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24360 )
24361 { // Pin list
24362 0x0025
24363 }
24364 ),
24365 GX11, 1,
24366 Connection (
24367 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24368 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24369 )
24370 { // Pin list
24371 0x0026
24372 }
24373 ),
24374 GMP2, 1,
24375 Connection (
24376 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24377 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24378 )
24379 { // Pin list
24380 0x0027
24381 }
24382 ),
24383 GX20, 1,
24384 Connection (
24385 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24386 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24387 )
24388 { // Pin list
24389 0x0028
24390 }
24391 ),
24392 GX21, 1,
24393 Connection (
24394 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24395 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24396 )
24397 { // Pin list
24398 0x0029
24399 }
24400 ),
24401 GMP3, 1,
24402 Connection (
24403 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24404 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24405 )
24406 { // Pin list
24407 0x002A
24408 }
24409 ),
24410 GX30, 1,
24411 Connection (
24412 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24413 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24414 )
24415 { // Pin list
24416 0x002B
24417 }
24418 ),
24419 GX31, 1,
24420 Connection (
24421 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24422 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24423 )
24424 { // Pin list
24425 0x002C
24426 }
24427 ),
24428 GMP4, 1,
24429 Connection (
24430 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24431 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24432 )
24433 { // Pin list
24434 0x002D
24435 }
24436 ),
24437 GX40, 1,
24438 Connection (
24439 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24440 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24441 )
24442 { // Pin list
24443 0x002E
24444 }
24445 ),
24446 GX41, 1,
24447 Connection (
24448 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24449 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24450 )
24451 { // Pin list
24452 0x002F
24453 }
24454 ),
24455 GMP5, 1,
24456 Connection (
24457 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24458 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24459 )
24460 { // Pin list
24461 0x0030
24462 }
24463 ),
24464 GX50, 1,
24465 Connection (
24466 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24467 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24468 )
24469 { // Pin list
24470 0x0031
24471 }
24472 ),
24473 GX51, 1,
24474 Connection (
24475 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24476 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24477 )
24478 { // Pin list
24479 0x0032
24480 }
24481 ),
24482 GEN0, 1,
24483 Connection (
24484 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24485 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24486 )
24487 { // Pin list
24488 0x0033
24489 }
24490 ),
24491 GEN1, 1,
24492 Connection (
24493 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24494 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24495 )
24496 { // Pin list
24497 0x0034
24498 }
24499 ),
24500 GEN2, 1,
24501 Connection (
24502 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24503 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24504 )
24505 { // Pin list
24506 0x0035
24507 }
24508 ),
24509 GEN3, 1,
24510 Connection (
24511 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24512 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24513 )
24514 { // Pin list
24515 0x0036
24516 }
24517 ),
24518 GEN4, 1,
24519 Connection (
24520 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24521 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24522 )
24523 { // Pin list
24524 0x0037
24525 }
24526 ),
24527 GEN5, 1,
24528 Connection (
24529 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24530 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24531 )
24532 { // Pin list
24533 0x0040
24534 }
24535 ),
24536 GSYS, 1,
24537 Connection (
24538 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24539 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24540 )
24541 { // Pin list
24542 0x0041
24543 }
24544 ),
24545 GYSX, 1,
24546 Connection (
24547 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24548 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24549 )
24550 { // Pin list
24551 0x0042
24552 }
24553 ),
24554 GYSU, 1,
24555 Connection (
24556 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24557 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24558 )
24559 { // Pin list
24560 0x0043
24561 }
24562 ),
24563 GYSS, 1,
24564 Connection (
24565 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24566 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24567 )
24568 { // Pin list
24569 0x0044
24570 }
24571 ),
24572 G50S, 1,
24573 Connection (
24574 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24575 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24576 )
24577 { // Pin list
24578 0x0045
24579 }
24580 ),
24581 GOST, 1,
24582 Connection (
24583 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24584 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24585 )
24586 { // Pin list
24587 0x0046
24588 }
24589 ),
24590 GBUS, 1,
24591 Connection (
24592 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24593 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24594 )
24595 { // Pin list
24596 0x0047
24597 }
24598 ),
24599 GDMI, 1,
24600 Connection (
24601 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24602 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24603 )
24604 { // Pin list
24605 0x0048
24606 }
24607 ),
24608 G28S, 1,
24609 Connection (
24610 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24611 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24612 )
24613 { // Pin list
24614 0x0049
24615 }
24616 ),
24617 G28X, 1,
24618 Connection (
24619 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24620 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24621 )
24622 { // Pin list
24623 0x004A
24624 }
24625 ),
24626 G33A, 1,
24627 Connection (
24628 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24629 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24630 )
24631 { // Pin list
24632 0x004B
24633 }
24634 ),
24635 G33S, 1,
24636 Connection (
24637 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24638 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24639 )
24640 { // Pin list
24641 0x004C
24642 }
24643 ),
24644 G33U, 1,
24645 Connection (
24646 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24647 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24648 )
24649 { // Pin list
24650 0x004D
24651 }
24652 ),
24653 G33I, 1,
24654 Connection (
24655 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24656 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24657 )
24658 { // Pin list
24659 0x004E
24660 }
24661 ),
24662 G18A, 1,
24663 Connection (
24664 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24665 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24666 )
24667 { // Pin list
24668 0x004F
24669 }
24670 ),
24671 GEFQ, 1,
24672 Connection (
24673 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24674 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24675 )
24676 { // Pin list
24677 0x0050
24678 }
24679 ),
24680 G12A, 1,
24681 Connection (
24682 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24683 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24684 )
24685 { // Pin list
24686 0x0051
24687 }
24688 ),
24689 G18S, 1,
24690 Connection (
24691 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24692 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24693 )
24694 { // Pin list
24695 0x0052
24696 }
24697 ),
24698 G18X, 1,
24699 Connection (
24700 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24701 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24702 )
24703 { // Pin list
24704 0x0053
24705 }
24706 ),
24707 G18U, 1,
24708 Connection (
24709 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24710 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24711 )
24712 { // Pin list
24713 0x0054
24714 }
24715 ),
24716 G12X, 1,
24717 Connection (
24718 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24719 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24720 )
24721 { // Pin list
24722 0x0055
24723 }
24724 ),
24725 G12S, 1,
24726 Connection (
24727 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24728 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24729 )
24730 { // Pin list
24731 0x0056
24732 }
24733 ),
24734 G10A, 1,
24735 Connection (
24736 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24737 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24738 )
24739 { // Pin list
24740 0x0057
24741 }
24742 ),
24743 G10S, 1,
24744 Connection (
24745 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24746 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24747 )
24748 { // Pin list
24749 0x0058
24750 }
24751 ),
24752 G10X, 1,
24753 Connection (
24754 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24755 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24756 )
24757 { // Pin list
24758 0x0059
24759 }
24760 ),
24761 G105, 1,
24762 Connection (
24763 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24764 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24765 )
24766 { // Pin list
24767 0x005E
24768 }
24769 ),
24770 FCOT, 1,
24771 Connection (
24772 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24773 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24774 )
24775 { // Pin list
24776 0x005D
24777 }
24778 ),
24779 MOXX, 1,
24780 Connection (
24781 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24782 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24783 )
24784 { // Pin list
24785 0x000B
24786 }
24787 ),
24788 TCON, 1,
24789 Connection (
24790 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
24791 "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
24792 )
24793 { // Pin list
24794 0x005A
24795 }
24796 ),
24797 G33X, 1
24798 }
24799
24800 Name (AVBL, Zero)
24801 Name (AVBD, Zero)
24802 Name (AVBG, Zero)
24803 Method (_REG, 2, NotSerialized) // _REG: Region Availability
24804 {
24805 If ((Arg0 == 0x08))
24806 {
24807 AVBG = Arg1
24808 }
24809
24810 If ((Arg0 == 0x8D))
24811 {
24812 AVBL = Arg1
24813 }
24814
24815 If ((Arg0 == 0x8C))
24816 {
24817 AVBD = Arg1
24818 }
24819 }
24820
24821 Name (LPAT, Package (0x30)
24822 {
24823 0x09E3,
24824 0x03D1,
24825 0x0A15,
24826 0x03C1,
24827 0x0A47,
24828 0x03AD,
24829 0x0A79,
24830 0x0395,
24831 0x0AAB,
24832 0x0377,
24833 0x0ADD,
24834 0x0355,
24835 0x0B0F,
24836 0x032D,
24837 0x0B41,
24838 0x0301,
24839 0x0B73,
24840 0x02D0,
24841 0x0BA5,
24842 0x029D,
24843 0x0BD7,
24844 0x0267,
24845 0x0C09,
24846 0x0231,
24847 0x0C3B,
24848 0x01FC,
24849 0x0C6D,
24850 0x01C8,
24851 0x0C9F,
24852 0x0197,
24853 0x0CD1,
24854 0x0165,
24855 0x0D03,
24856 0x013B,
24857 0x0D35,
24858 0x0115,
24859 0x0D67,
24860 0xF3,
24861 0x0D99,
24862 0xD4,
24863 0x0DCB,
24864 0xBA,
24865 0x0DFD,
24866 0xA2,
24867 0x0E2F,
24868 0x8C,
24869 0x0E93,
24870 0x6B
24871 })
24872 }
24873 }
24874
24875 Scope (PCI0.I2C1)
24876 {
24877 Device (IMP3)
24878 {
24879 Name (_ADR, Zero) // _ADR: Address
24880 Name (_HID, "IMPJ0003") // _HID: Hardware ID
24881 Name (_CID, "IMPJ0003") // _CID: Compatible ID
24882 Name (_UID, One) // _UID: Unique ID
24883 Method (_STA, 0, NotSerialized) // _STA: Status
24884 {
24885 If ((BDID == One))
24886 {
24887 Return (Zero)
24888 }
24889
24890 If ((PSDE == 0x02))
24891 {
24892 Return (0x0F)
24893 }
24894
24895 Return (Zero)
24896 }
24897
24898 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
24899 {
24900 Name (SBUF, ResourceTemplate ()
24901 {
24902 I2cSerialBusV2 (0x006E, ControllerInitiated, 0x000186A0,
24903 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
24904 0x00, ResourceConsumer, , Exclusive,
24905 )
24906 })
24907 Return (SBUF) /* \_SB_.PCI0.I2C1.IMP3._CRS.SBUF */
24908 }
24909 }
24910 }
24911
24912 Scope (PCI0.I2C2)
24913 {
24914 Device (IMP3)
24915 {
24916 Name (_ADR, Zero) // _ADR: Address
24917 Name (_HID, "IMPJ0003") // _HID: Hardware ID
24918 Name (_CID, "IMPJ0003") // _CID: Compatible ID
24919 Name (_UID, One) // _UID: Unique ID
24920 Method (_STA, 0, NotSerialized) // _STA: Status
24921 {
24922 If ((BDID != One))
24923 {
24924 Return (Zero)
24925 }
24926
24927 If ((PSDE == 0x02))
24928 {
24929 Return (0x0F)
24930 }
24931
24932 Return (Zero)
24933 }
24934
24935 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
24936 {
24937 Name (SBUF, ResourceTemplate ()
24938 {
24939 I2cSerialBusV2 (0x006E, ControllerInitiated, 0x000186A0,
24940 AddressingMode7Bit, "\\_SB.PCI0.I2C2",
24941 0x00, ResourceConsumer, , Exclusive,
24942 )
24943 })
24944 Return (SBUF) /* \_SB_.PCI0.I2C2.IMP3._CRS.SBUF */
24945 }
24946 }
24947 }
24948
24949 PowerResource (P28X, 0x05, 0x0008)
24950 {
24951 Name (_DEP, Package (0x02) // _DEP: Dependencies
24952 {
24953 ^PCI0.I2C7,
24954 ^PCI0.I2C7.PMIC
24955 })
24956 Method (_STA, 0, NotSerialized) // _STA: Status
24957 {
24958 If ((^^PCI0.I2C7.PMIC.AVBG == One))
24959 {
24960 ^^PCI0.I2C7.PMIC.G28X = Zero
24961 If ((^^PCI0.I2C7.PMIC.AVBL == One))
24962 {
24963 Return (^^PCI0.I2C7.PMIC.X285) /* \_SB_.PCI0.I2C7.PMIC.X285 */
24964 }
24965 }
24966
24967 Return (Zero)
24968 }
24969
24970 Method (_ON, 0, NotSerialized) // _ON_: Power On
24971 {
24972 If ((^^PCI0.I2C7.PMIC.AVBL == One))
24973 {
24974 ^^PCI0.I2C7.PMIC.X285 = One
24975 If ((^^PCI0.I2C7.PMIC.AVBG == One))
24976 {
24977 ^^PCI0.I2C7.PMIC.G28X = One
24978 Sleep (0x1E)
24979 }
24980 }
24981 }
24982
24983 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
24984 {
24985 If ((^^PCI0.I2C7.PMIC.AVBL == One))
24986 {
24987 ^^PCI0.I2C7.PMIC.X285 = Zero
24988 If ((^^PCI0.I2C7.PMIC.AVBG == One))
24989 {
24990 ^^PCI0.I2C7.PMIC.G28X = One
24991 Sleep (0x1E)
24992 }
24993 }
24994 }
24995 }
24996
24997 PowerResource (P18X, 0x05, 0x0002)
24998 {
24999 Name (_DEP, Package (0x02) // _DEP: Dependencies
25000 {
25001 ^PCI0.I2C7,
25002 ^PCI0.I2C7.PMIC
25003 })
25004 Method (_STA, 0, NotSerialized) // _STA: Status
25005 {
25006 If ((^^PCI0.I2C7.PMIC.AVBG == One))
25007 {
25008 ^^PCI0.I2C7.PMIC.G18X = Zero
25009 If ((^^PCI0.I2C7.PMIC.AVBL == One))
25010 {
25011 Return (^^PCI0.I2C7.PMIC.V18X) /* \_SB_.PCI0.I2C7.PMIC.V18X */
25012 }
25013 }
25014
25015 Return (Zero)
25016 }
25017
25018 Method (_ON, 0, NotSerialized) // _ON_: Power On
25019 {
25020 If ((^^PCI0.I2C7.PMIC.AVBL == One))
25021 {
25022 ^^PCI0.I2C7.PMIC.V18X = One
25023 If ((^^PCI0.I2C7.PMIC.AVBG == One))
25024 {
25025 ^^PCI0.I2C7.PMIC.G18X = One
25026 Sleep (0x1E)
25027 }
25028 }
25029 }
25030
25031 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25032 {
25033 If ((^^PCI0.I2C7.PMIC.AVBL == One))
25034 {
25035 ^^PCI0.I2C7.PMIC.V18X = Zero
25036 If ((^^PCI0.I2C7.PMIC.AVBG == One))
25037 {
25038 ^^PCI0.I2C7.PMIC.G18X = One
25039 Sleep (0x1E)
25040 }
25041 }
25042 }
25043 }
25044
25045 PowerResource (P12X, 0x05, 0x0000)
25046 {
25047 Name (_DEP, Package (0x02) // _DEP: Dependencies
25048 {
25049 ^PCI0.I2C7,
25050 ^PCI0.I2C7.PMIC
25051 })
25052 Method (_STA, 0, NotSerialized) // _STA: Status
25053 {
25054 If ((^^PCI0.I2C7.PMIC.AVBG == One))
25055 {
25056 ^^PCI0.I2C7.PMIC.G12X = Zero
25057 If ((^^PCI0.I2C7.PMIC.AVBL == One))
25058 {
25059 Return (^^PCI0.I2C7.PMIC.V12X) /* \_SB_.PCI0.I2C7.PMIC.V12X */
25060 }
25061 }
25062
25063 Return (Zero)
25064 }
25065
25066 Method (_ON, 0, NotSerialized) // _ON_: Power On
25067 {
25068 If ((^^PCI0.I2C7.PMIC.AVBL == One))
25069 {
25070 ^^PCI0.I2C7.PMIC.V12X = One
25071 If ((^^PCI0.I2C7.PMIC.AVBG == One))
25072 {
25073 ^^PCI0.I2C7.PMIC.G12X = One
25074 Sleep (0x1E)
25075 }
25076 }
25077 }
25078
25079 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25080 {
25081 If ((^^PCI0.I2C7.PMIC.AVBL == One))
25082 {
25083 ^^PCI0.I2C7.PMIC.V12X = Zero
25084 If ((^^PCI0.I2C7.PMIC.AVBG == One))
25085 {
25086 ^^PCI0.I2C7.PMIC.G12X = One
25087 Sleep (0x1E)
25088 }
25089 }
25090 }
25091 }
25092
25093 PowerResource (P28P, 0x05, 0x0000)
25094 {
25095 Name (_DEP, Package (0x02) // _DEP: Dependencies
25096 {
25097 ^PCI0.I2C7,
25098 ^PCI0.I2C7.PMI1
25099 })
25100 Method (_STA, 0, NotSerialized) // _STA: Status
25101 {
25102 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25103 {
25104 ^^PCI0.I2C7.PMI1.G28X = Zero
25105 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25106 {
25107 Return (^^PCI0.I2C7.PMI1.ALD1) /* \_SB_.PCI0.I2C7.PMI1.ALD1 */
25108 }
25109 }
25110
25111 Return (Zero)
25112 }
25113
25114 Method (_ON, 0, NotSerialized) // _ON_: Power On
25115 {
25116 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25117 {
25118 ^^PCI0.I2C7.PMI1.ALD1 = One
25119 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25120 {
25121 ^^PCI0.I2C7.PMI1.G28X = One
25122 Sleep (0x1E)
25123 }
25124 }
25125 }
25126
25127 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25128 {
25129 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25130 {
25131 ^^PCI0.I2C7.PMI1.ALD1 = Zero
25132 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25133 {
25134 ^^PCI0.I2C7.PMI1.G28X = One
25135 Sleep (0x1E)
25136 }
25137 }
25138 }
25139 }
25140
25141 PowerResource (P18P, 0x05, 0x0000)
25142 {
25143 Name (_DEP, Package (0x02) // _DEP: Dependencies
25144 {
25145 ^PCI0.I2C7,
25146 ^PCI0.I2C7.PMI1
25147 })
25148 Method (_STA, 0, NotSerialized) // _STA: Status
25149 {
25150 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25151 {
25152 ^^PCI0.I2C7.PMI1.G18X = Zero
25153 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25154 {
25155 Return (^^PCI0.I2C7.PMI1.ELD2) /* \_SB_.PCI0.I2C7.PMI1.ELD2 */
25156 }
25157 }
25158
25159 Return (Zero)
25160 }
25161
25162 Method (_ON, 0, NotSerialized) // _ON_: Power On
25163 {
25164 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25165 {
25166 ^^PCI0.I2C7.PMI1.ELD2 = One
25167 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25168 {
25169 ^^PCI0.I2C7.PMI1.G18X = One
25170 Sleep (0x1E)
25171 }
25172 }
25173 }
25174
25175 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25176 {
25177 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25178 {
25179 ^^PCI0.I2C7.PMI1.ELD2 = Zero
25180 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25181 {
25182 ^^PCI0.I2C7.PMI1.G18X = One
25183 Sleep (0x1E)
25184 }
25185 }
25186 }
25187 }
25188
25189 PowerResource (P19X, 0x05, 0x0000)
25190 {
25191 Name (_DEP, Package (0x02) // _DEP: Dependencies
25192 {
25193 ^PCI0.I2C7,
25194 ^PCI0.I2C7.PMI1
25195 })
25196 Method (_STA, 0, NotSerialized) // _STA: Status
25197 {
25198 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25199 {
25200 ^^PCI0.I2C7.PMI1.GSDX = Zero
25201 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25202 {
25203 Return (^^PCI0.I2C7.PMI1.GPI1) /* \_SB_.PCI0.I2C7.PMI1.GPI1 */
25204 }
25205 }
25206
25207 Return (Zero)
25208 }
25209
25210 Method (_ON, 0, NotSerialized) // _ON_: Power On
25211 {
25212 If ((OSID == 0x04))
25213 {
25214 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25215 {
25216 ^^PCI0.I2C7.PMI1.GPI1 = One
25217 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25218 {
25219 ^^PCI0.I2C7.PMI1.GSDX = One
25220 Sleep (0x1E)
25221 }
25222 }
25223 }
25224 }
25225
25226 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25227 {
25228 If ((OSID == 0x04))
25229 {
25230 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25231 {
25232 ^^PCI0.I2C7.PMI1.GPI1 = Zero
25233 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25234 {
25235 ^^PCI0.I2C7.PMI1.GSDX = One
25236 Sleep (0x1E)
25237 }
25238 }
25239 }
25240 }
25241 }
25242
25243 PowerResource (P06X, 0x05, 0x0000)
25244 {
25245 Name (_DEP, Package (0x02) // _DEP: Dependencies
25246 {
25247 ^PCI0.I2C7,
25248 ^PCI0.I2C7.PMI1
25249 })
25250 Method (_STA, 0, NotSerialized) // _STA: Status
25251 {
25252 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25253 {
25254 ^^PCI0.I2C7.PMI1.G06X = Zero
25255 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25256 {
25257 Return (^^PCI0.I2C7.PMI1.DLD4) /* \_SB_.PCI0.I2C7.PMI1.DLD4 */
25258 }
25259 }
25260
25261 Return (Zero)
25262 }
25263
25264 Method (_ON, 0, NotSerialized) // _ON_: Power On
25265 {
25266 If ((OSID == 0x04))
25267 {
25268 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25269 {
25270 ^^PCI0.I2C7.PMI1.DLD4 = One
25271 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25272 {
25273 ^^PCI0.I2C7.PMI1.G06X = One
25274 Sleep (0x1E)
25275 }
25276 }
25277 }
25278 }
25279
25280 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25281 {
25282 If ((OSID == 0x04))
25283 {
25284 If ((^^PCI0.I2C7.PMI1.AVBL == One))
25285 {
25286 ^^PCI0.I2C7.PMI1.DLD4 = Zero
25287 If ((^^PCI0.I2C7.PMI1.AVBG == One))
25288 {
25289 ^^PCI0.I2C7.PMI1.G06X = One
25290 Sleep (0x1E)
25291 }
25292 }
25293 }
25294 }
25295 }
25296
25297 PowerResource (P28T, 0x05, 0x0000)
25298 {
25299 Name (_DEP, Package (0x02) // _DEP: Dependencies
25300 {
25301 ^PCI0.I2C7,
25302 ^PCI0.I2C7.PMI2
25303 })
25304 Method (_STA, 0, NotSerialized) // _STA: Status
25305 {
25306 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25307 {
25308 ^^PCI0.I2C7.PMI2.G28X = Zero
25309 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25310 {
25311 Return (^^PCI0.I2C7.PMI2.LDO9) /* \_SB_.PCI0.I2C7.PMI2.LDO9 */
25312 }
25313 }
25314
25315 Return (Zero)
25316 }
25317
25318 Method (_ON, 0, NotSerialized) // _ON_: Power On
25319 {
25320 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25321 {
25322 ^^PCI0.I2C7.PMI2.LDO9 = One
25323 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25324 {
25325 ^^PCI0.I2C7.PMI2.G28X = One
25326 Sleep (0x1E)
25327 }
25328 }
25329 }
25330
25331 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25332 {
25333 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25334 {
25335 ^^PCI0.I2C7.PMI2.LDO9 = Zero
25336 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25337 {
25338 ^^PCI0.I2C7.PMI2.G28X = One
25339 Sleep (0x1E)
25340 }
25341 }
25342 }
25343 }
25344
25345 PowerResource (P18D, 0x05, 0x0000)
25346 {
25347 Name (_DEP, Package (0x02) // _DEP: Dependencies
25348 {
25349 ^PCI0.I2C7,
25350 ^PCI0.I2C7.PMI2
25351 })
25352 Method (_STA, 0, NotSerialized) // _STA: Status
25353 {
25354 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25355 {
25356 ^^PCI0.I2C7.PMI2.G18U = Zero
25357 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25358 {
25359 Return (^^PCI0.I2C7.PMI2.LD10) /* \_SB_.PCI0.I2C7.PMI2.LD10 */
25360 }
25361 }
25362
25363 Return (Zero)
25364 }
25365
25366 Method (_ON, 0, NotSerialized) // _ON_: Power On
25367 {
25368 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25369 {
25370 ^^PCI0.I2C7.PMI2.LD10 = One
25371 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25372 {
25373 ^^PCI0.I2C7.PMI2.G18U = One
25374 Sleep (0x1E)
25375 }
25376 }
25377 }
25378
25379 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25380 {
25381 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25382 {
25383 ^^PCI0.I2C7.PMI2.LD10 = Zero
25384 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25385 {
25386 ^^PCI0.I2C7.PMI2.G18U = One
25387 Sleep (0x1E)
25388 }
25389 }
25390 }
25391 }
25392
25393 PowerResource (P18T, 0x05, 0x0000)
25394 {
25395 Name (_DEP, Package (0x02) // _DEP: Dependencies
25396 {
25397 ^PCI0.I2C7,
25398 ^PCI0.I2C7.PMI2
25399 })
25400 Method (_STA, 0, NotSerialized) // _STA: Status
25401 {
25402 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25403 {
25404 ^^PCI0.I2C7.PMI2.G18X = Zero
25405 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25406 {
25407 Return (^^PCI0.I2C7.PMI2.LD11) /* \_SB_.PCI0.I2C7.PMI2.LD11 */
25408 }
25409 }
25410
25411 Return (Zero)
25412 }
25413
25414 Method (_ON, 0, NotSerialized) // _ON_: Power On
25415 {
25416 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25417 {
25418 ^^PCI0.I2C7.PMI2.LD11 = One
25419 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25420 {
25421 ^^PCI0.I2C7.PMI2.G18X = One
25422 Sleep (0x1E)
25423 }
25424 }
25425 }
25426
25427 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25428 {
25429 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25430 {
25431 ^^PCI0.I2C7.PMI2.LD11 = Zero
25432 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25433 {
25434 ^^PCI0.I2C7.PMI2.G18X = One
25435 Sleep (0x1E)
25436 }
25437 }
25438 }
25439 }
25440
25441 PowerResource (P3P3, 0x05, 0x0000)
25442 {
25443 Name (_DEP, Package (0x02) // _DEP: Dependencies
25444 {
25445 ^PCI0.I2C7,
25446 ^PCI0.I2C7.PMI2
25447 })
25448 Method (_STA, 0, NotSerialized) // _STA: Status
25449 {
25450 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25451 {
25452 ^^PCI0.I2C7.PMI2.G3P3 = Zero
25453 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25454 {
25455 Return (^^PCI0.I2C7.PMI2.LD13) /* \_SB_.PCI0.I2C7.PMI2.LD13 */
25456 }
25457 }
25458
25459 Return (Zero)
25460 }
25461
25462 Method (_ON, 0, NotSerialized) // _ON_: Power On
25463 {
25464 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25465 {
25466 ^^PCI0.I2C7.PMI2.LD13 = One
25467 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25468 {
25469 ^^PCI0.I2C7.PMI2.G3P3 = One
25470 Sleep (0x1E)
25471 }
25472 }
25473 }
25474
25475 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25476 {
25477 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25478 {
25479 ^^PCI0.I2C7.PMI2.LD13 = Zero
25480 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25481 {
25482 ^^PCI0.I2C7.PMI2.G3P3 = One
25483 Sleep (0x1E)
25484 }
25485 }
25486 }
25487 }
25488
25489 PowerResource (P12T, 0x05, 0x0000)
25490 {
25491 Name (_DEP, Package (0x02) // _DEP: Dependencies
25492 {
25493 ^PCI0.I2C7,
25494 ^PCI0.I2C7.PMI2
25495 })
25496 Method (_STA, 0, NotSerialized) // _STA: Status
25497 {
25498 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25499 {
25500 ^^PCI0.I2C7.PMI2.G12T = Zero
25501 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25502 {
25503 Return (^^PCI0.I2C7.PMI2.LD14) /* \_SB_.PCI0.I2C7.PMI2.LD14 */
25504 }
25505 }
25506
25507 Return (Zero)
25508 }
25509
25510 Method (_ON, 0, NotSerialized) // _ON_: Power On
25511 {
25512 If ((OSID == 0x04))
25513 {
25514 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25515 {
25516 ^^PCI0.I2C7.PMI2.LD14 = One
25517 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25518 {
25519 ^^PCI0.I2C7.PMI2.G12T = One
25520 Sleep (One)
25521 }
25522 }
25523 }
25524 }
25525
25526 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25527 {
25528 If ((OSID == 0x04))
25529 {
25530 If ((^^PCI0.I2C7.PMI2.AVBL == One))
25531 {
25532 ^^PCI0.I2C7.PMI2.LD14 = Zero
25533 If ((^^PCI0.I2C7.PMI2.AVBG == One))
25534 {
25535 ^^PCI0.I2C7.PMI2.G12T = One
25536 Sleep (One)
25537 }
25538 }
25539 }
25540 }
25541 }
25542
25543 PowerResource (P28W, 0x05, 0x0000)
25544 {
25545 Name (_DEP, Package (0x02) // _DEP: Dependencies
25546 {
25547 ^PCI0.I2C7,
25548 ^PCI0.I2C7.PMI5
25549 })
25550 Method (_STA, 0, NotSerialized) // _STA: Status
25551 {
25552 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25553 {
25554 ^^PCI0.I2C7.PMI5.G28X = Zero
25555 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25556 {
25557 Return (^^PCI0.I2C7.PMI5.V28X) /* \_SB_.PCI0.I2C7.PMI5.V28X */
25558 }
25559 }
25560
25561 Return (Zero)
25562 }
25563
25564 Method (_ON, 0, NotSerialized) // _ON_: Power On
25565 {
25566 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25567 {
25568 ^^PCI0.I2C7.PMI5.V28X = One
25569 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25570 {
25571 ^^PCI0.I2C7.PMI5.G28X = One
25572 Sleep (0x1E)
25573 }
25574 }
25575 }
25576
25577 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25578 {
25579 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25580 {
25581 ^^PCI0.I2C7.PMI5.V28X = Zero
25582 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25583 {
25584 ^^PCI0.I2C7.PMI5.G28X = One
25585 Sleep (0x1E)
25586 }
25587 }
25588 }
25589 }
25590
25591 PowerResource (P18W, 0x05, 0x0000)
25592 {
25593 Name (_DEP, Package (0x02) // _DEP: Dependencies
25594 {
25595 ^PCI0.I2C7,
25596 ^PCI0.I2C7.PMI5
25597 })
25598 Method (_STA, 0, NotSerialized) // _STA: Status
25599 {
25600 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25601 {
25602 ^^PCI0.I2C7.PMI5.G18X = Zero
25603 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25604 {
25605 Return (^^PCI0.I2C7.PMI5.V18X) /* \_SB_.PCI0.I2C7.PMI5.V18X */
25606 }
25607 }
25608
25609 Return (Zero)
25610 }
25611
25612 Method (_ON, 0, NotSerialized) // _ON_: Power On
25613 {
25614 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25615 {
25616 ^^PCI0.I2C7.PMI5.V18X = One
25617 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25618 {
25619 ^^PCI0.I2C7.PMI5.G18X = One
25620 Sleep (0x1E)
25621 }
25622 }
25623 }
25624
25625 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25626 {
25627 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25628 {
25629 ^^PCI0.I2C7.PMI5.V18X = Zero
25630 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25631 {
25632 ^^PCI0.I2C7.PMI5.G18X = One
25633 Sleep (0x1E)
25634 }
25635 }
25636 }
25637 }
25638
25639 PowerResource (P12W, 0x05, 0x0000)
25640 {
25641 Name (_DEP, Package (0x02) // _DEP: Dependencies
25642 {
25643 ^PCI0.I2C7,
25644 ^PCI0.I2C7.PMI5
25645 })
25646 Method (_STA, 0, NotSerialized) // _STA: Status
25647 {
25648 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25649 {
25650 ^^PCI0.I2C7.PMI5.G12X = Zero
25651 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25652 {
25653 Return (^^PCI0.I2C7.PMI5.V12X) /* \_SB_.PCI0.I2C7.PMI5.V12X */
25654 }
25655 }
25656
25657 Return (Zero)
25658 }
25659
25660 Method (_ON, 0, NotSerialized) // _ON_: Power On
25661 {
25662 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25663 {
25664 ^^PCI0.I2C7.PMI5.V12X = One
25665 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25666 {
25667 ^^PCI0.I2C7.PMI5.G12X = One
25668 Sleep (0x1E)
25669 }
25670 }
25671 }
25672
25673 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25674 {
25675 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25676 {
25677 ^^PCI0.I2C7.PMI5.V12X = Zero
25678 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25679 {
25680 ^^PCI0.I2C7.PMI5.G12X = One
25681 Sleep (0x1E)
25682 }
25683 }
25684 }
25685 }
25686
25687 PowerResource (P33W, 0x05, 0x0000)
25688 {
25689 Name (_DEP, Package (0x02) // _DEP: Dependencies
25690 {
25691 ^PCI0.I2C7,
25692 ^PCI0.I2C7.PMI5
25693 })
25694 Method (_STA, 0, NotSerialized) // _STA: Status
25695 {
25696 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25697 {
25698 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25699 {
25700 Return (^^PCI0.I2C7.PMI5.G1P1) /* \_SB_.PCI0.I2C7.PMI5.G1P1 */
25701 }
25702 }
25703
25704 Return (Zero)
25705 }
25706
25707 Method (_ON, 0, NotSerialized) // _ON_: Power On
25708 {
25709 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25710 {
25711 If (((OSID == One) || (OSYS == 0x07DF)))
25712 {
25713 ^^PCI0.I2C7.PMI5.G1P1 = One
25714 Sleep (0x1E)
25715 }
25716 }
25717 }
25718
25719 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25720 {
25721 Local2 = ^^PCI0.GFX0.PSPS /* \_SB_.PCI0.GFX0.PSPS */
25722 Local2 &= 0x03
25723 If ((Local2 == 0x03))
25724 {
25725 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25726 {
25727 ^^PCI0.I2C7.PMI5.G1P1 = Zero
25728 Sleep (0x1E)
25729 }
25730 }
25731 }
25732 }
25733
25734 PowerResource (P33X, 0x05, 0x0000)
25735 {
25736 Name (_DEP, Package (0x02) // _DEP: Dependencies
25737 {
25738 ^PCI0.I2C7,
25739 ^PCI0.I2C7.PMIC
25740 })
25741 Method (_STA, 0, NotSerialized) // _STA: Status
25742 {
25743 If ((^^PCI0.I2C7.PMIC.AVBG == One))
25744 {
25745 ^^PCI0.I2C7.PMIC.G33X = Zero
25746 If ((^^PCI0.I2C7.PMIC.AVBL == One))
25747 {
25748 Return (^^PCI0.I2C7.PMIC.V33X) /* \_SB_.PCI0.I2C7.PMIC.V33X */
25749 }
25750 }
25751
25752 Return (Zero)
25753 }
25754
25755 Method (_ON, 0, NotSerialized) // _ON_: Power On
25756 {
25757 If ((^^PCI0.I2C7.PMIC.AVBL == One))
25758 {
25759 ^^PCI0.I2C7.PMIC.V33X = One
25760 If ((^^PCI0.I2C7.PMIC.AVBG == One))
25761 {
25762 ^^PCI0.I2C7.PMIC.G33X = One
25763 Sleep (0x1E)
25764 }
25765 }
25766 }
25767
25768 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25769 {
25770 Local2 = ^^PCI0.GFX0.PSPS /* \_SB_.PCI0.GFX0.PSPS */
25771 Local2 &= 0x03
25772 If ((Local2 == 0x03))
25773 {
25774 If ((^^PCI0.I2C7.PMIC.AVBL == One))
25775 {
25776 ^^PCI0.I2C7.PMIC.V33X = Zero
25777 If ((^^PCI0.I2C7.PMIC.AVBG == One))
25778 {
25779 ^^PCI0.I2C7.PMIC.G33X = One
25780 Sleep (0x1E)
25781 }
25782 }
25783 }
25784 }
25785 }
25786
25787 PowerResource (P4BW, 0x05, 0x0000)
25788 {
25789 Name (_DEP, Package (0x02) // _DEP: Dependencies
25790 {
25791 ^PCI0.I2C7,
25792 ^PCI0.I2C7.PMI5
25793 })
25794 Method (_STA, 0, NotSerialized) // _STA: Status
25795 {
25796 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25797 {
25798 ^^PCI0.I2C7.PMI5.GP4B = Zero
25799 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25800 {
25801 Return (^^PCI0.I2C7.PMI5.VP4B) /* \_SB_.PCI0.I2C7.PMI5.VP4B */
25802 }
25803 }
25804
25805 Return (Zero)
25806 }
25807
25808 Method (_ON, 0, NotSerialized) // _ON_: Power On
25809 {
25810 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25811 {
25812 ^^PCI0.I2C7.PMI5.VP4B = One
25813 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25814 {
25815 ^^PCI0.I2C7.PMI5.GP4B = One
25816 Sleep (0x1E)
25817 }
25818 }
25819 }
25820
25821 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
25822 {
25823 If ((^^PCI0.I2C7.PMI5.AVBL == One))
25824 {
25825 ^^PCI0.I2C7.PMI5.VP4B = Zero
25826 If ((^^PCI0.I2C7.PMI5.AVBG == One))
25827 {
25828 ^^PCI0.I2C7.PMI5.GP4B = One
25829 Sleep (0x1E)
25830 }
25831 }
25832 }
25833 }
25834
25835 Device (BTNS)
25836 {
25837 Name (_HID, "ACPI0011" /* Generic Buttons Device */) // _HID: Hardware ID
25838 Name (_DDN, "Generic HID over Interrupt Button Interface") // _DDN: DOS Device Name
25839 Name (_DEP, Package (0x05) // _DEP: Dependencies
25840 {
25841 GPO0,
25842 GPO2,
25843 GPO1,
25844 ^PCI0.I2C7,
25845 ^PCI0.I2C7.PMIC
25846 })
25847 Name (WDEP, Package (0x05)
25848 {
25849 GPO0,
25850 GPO2,
25851 GPO1,
25852 ^PCI0.I2C7,
25853 ^PCI0.I2C7.PMI5
25854 })
25855 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
25856 {
25857 Name (CBUF, ResourceTemplate ()
25858 {
25859 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
25860 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
25861 )
25862 { // Pin list
25863 0x0008
25864 }
25865 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25866 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25867 )
25868 { // Pin list
25869 0x005D
25870 }
25871 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25872 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
25873 )
25874 { // Pin list
25875 0x0008
25876 }
25877 })
25878 Name (CBWB, ResourceTemplate ()
25879 {
25880 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
25881 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
25882 )
25883 { // Pin list
25884 0x0008
25885 }
25886 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25887 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25888 )
25889 { // Pin list
25890 0x005D
25891 }
25892 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25893 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
25894 )
25895 { // Pin list
25896 0x0008
25897 }
25898 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25899 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25900 )
25901 { // Pin list
25902 0x0021
25903 }
25904 })
25905 Name (WBUF, ResourceTemplate ()
25906 {
25907 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0BB8,
25908 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
25909 )
25910 { // Pin list
25911 0x0000
25912 }
25913 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
25914 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
25915 )
25916 { // Pin list
25917 0x0008
25918 }
25919 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25920 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25921 )
25922 { // Pin list
25923 0x005D
25924 }
25925 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25926 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
25927 )
25928 { // Pin list
25929 0x0008
25930 }
25931 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25932 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25933 )
25934 { // Pin list
25935 0x004D
25936 }
25937 })
25938 Name (FBUF, ResourceTemplate ()
25939 {
25940 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDefault, 0x0BB8,
25941 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25942 )
25943 { // Pin list
25944 0x005F
25945 }
25946 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
25947 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
25948 )
25949 { // Pin list
25950 0x0008
25951 }
25952 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25953 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25954 )
25955 { // Pin list
25956 0x005D
25957 }
25958 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25959 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
25960 )
25961 { // Pin list
25962 0x0008
25963 }
25964 })
25965 Name (PBUF, ResourceTemplate ()
25966 {
25967 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDefault, 0x0BB8,
25968 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
25969 )
25970 { // Pin list
25971 0x0008
25972 }
25973 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
25974 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
25975 )
25976 { // Pin list
25977 0x0008
25978 }
25979 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25980 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25981 )
25982 { // Pin list
25983 0x005D
25984 }
25985 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25986 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25987 )
25988 { // Pin list
25989 0x003D
25990 }
25991 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
25992 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
25993 )
25994 { // Pin list
25995 0x004D
25996 }
25997 })
25998 If ((BDID == One))
25999 {
26000 Return (PBUF) /* \_SB_.BTNS._CRS.PBUF */
26001 }
26002 Else
26003 {
26004 If ((PMID == 0x03))
26005 {
26006 If (((BDID == 0x03) || (BDID == 0x02)))
26007 {
26008 Return (WBUF) /* \_SB_.BTNS._CRS.WBUF */
26009 }
26010 Else
26011 {
26012 Return (FBUF) /* \_SB_.BTNS._CRS.FBUF */
26013 }
26014 }
26015
26016 If ((BTMD == One))
26017 {
26018 Return (CBWB) /* \_SB_.BTNS._CRS.CBWB */
26019 }
26020 Else
26021 {
26022 Return (CBUF) /* \_SB_.BTNS._CRS.CBUF */
26023 }
26024 }
26025 }
26026
26027 Method (_STA, 0, NotSerialized) // _STA: Status
26028 {
26029 If (((OSID == One) && (OSYS == 0x07DF)))
26030 {
26031 Return (0x0F)
26032 }
26033
26034 Return (Zero)
26035 }
26036
26037 Name (_DSD, Package (0x02) // _DSD: Device-Specific Data
26038 {
26039 ToUUID ("fa6bd625-9ce8-470d-a2c7-b3ca36c4282e"),
26040 Package (0x05)
26041 {
26042 Package (0x05)
26043 {
26044 Zero,
26045 One,
26046 Zero,
26047 One,
26048 0x0D
26049 },
26050
26051 Package (0x05)
26052 {
26053 One,
26054 Zero,
26055 One,
26056 One,
26057 0x81
26058 },
26059
26060 Package (0x05)
26061 {
26062 One,
26063 One,
26064 One,
26065 0x0C,
26066 0xE9
26067 },
26068
26069 Package (0x05)
26070 {
26071 One,
26072 0x02,
26073 One,
26074 0x0C,
26075 0xEA
26076 },
26077
26078 Package (0x05)
26079 {
26080 One,
26081 0x03,
26082 One,
26083 0x07,
26084 0xE3
26085 }
26086 }
26087 })
26088 }
26089
26090 Device (TCO0)
26091 {
26092 Name (_HID, "8086229C") // _HID: Hardware ID
26093 Name (_DDN, "Watchdog Timer Device") // _DDN: DOS Device Name
26094 Name (_UID, One) // _UID: Unique ID
26095 Name (_GPE, 0x0E) // _GPE: General Purpose Events
26096 Method (_STA, 0, NotSerialized) // _STA: Status
26097 {
26098 If ((OSID == 0x04))
26099 {
26100 Return (0x0F)
26101 }
26102
26103 Return (Zero)
26104 }
26105 }
26106
26107 Device (TBAD)
26108 {
26109 Name (_HID, "INTCFD9" /* Intel Baytrail SOC GPIO Controller */) // _HID: Hardware ID
26110 Name (_CID, "PNP0C40" /* Standard Button Controller */) // _CID: Compatible ID
26111 Name (_DDN, "Keyboard less system - 5 Button Array Device") // _DDN: DOS Device Name
26112 Name (_DEP, Package (0x05) // _DEP: Dependencies
26113 {
26114 GPO0,
26115 GPO2,
26116 GPO1,
26117 ^PCI0.I2C7,
26118 ^PCI0.I2C7.PMIC
26119 })
26120 Name (WDEP, Package (0x05)
26121 {
26122 GPO0,
26123 GPO2,
26124 GPO1,
26125 ^PCI0.I2C7,
26126 ^PCI0.I2C7.PMI5
26127 })
26128 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
26129 {
26130 Name (CBUF, ResourceTemplate ()
26131 {
26132 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
26133 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
26134 )
26135 { // Pin list
26136 0x0008
26137 }
26138 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
26139 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26140 )
26141 { // Pin list
26142 0x0043
26143 }
26144 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26145 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26146 )
26147 { // Pin list
26148 0x005D
26149 }
26150 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26151 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
26152 )
26153 { // Pin list
26154 0x0008
26155 }
26156 })
26157 Name (CBWB, ResourceTemplate ()
26158 {
26159 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
26160 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
26161 )
26162 { // Pin list
26163 0x0008
26164 }
26165 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26166 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26167 )
26168 { // Pin list
26169 0x0021
26170 }
26171 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26172 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26173 )
26174 { // Pin list
26175 0x005D
26176 }
26177 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26178 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
26179 )
26180 { // Pin list
26181 0x0008
26182 }
26183 })
26184 Name (WBUF, ResourceTemplate ()
26185 {
26186 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
26187 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
26188 )
26189 { // Pin list
26190 0x0008
26191 }
26192 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0BB8,
26193 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
26194 )
26195 { // Pin list
26196 0x0000
26197 }
26198 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26199 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26200 )
26201 { // Pin list
26202 0x005D
26203 }
26204 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26205 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
26206 )
26207 { // Pin list
26208 0x0008
26209 }
26210 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26211 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26212 )
26213 { // Pin list
26214 0x004D
26215 }
26216 })
26217 Name (PBUF, ResourceTemplate ()
26218 {
26219 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
26220 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
26221 )
26222 { // Pin list
26223 0x0008
26224 }
26225 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDefault, 0x0BB8,
26226 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
26227 )
26228 { // Pin list
26229 0x0008
26230 }
26231 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26232 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26233 )
26234 { // Pin list
26235 0x005D
26236 }
26237 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26238 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26239 )
26240 { // Pin list
26241 0x003D
26242 }
26243 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26244 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26245 )
26246 { // Pin list
26247 0x004D
26248 }
26249 })
26250 Name (RBUF, ResourceTemplate ()
26251 {
26252 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
26253 "\\_SB.GPO2", 0x00, ResourceConsumer, ,
26254 )
26255 { // Pin list
26256 0x0008
26257 }
26258 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26259 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26260 )
26261 { // Pin list
26262 0x005F
26263 }
26264 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26265 "\\_SB.GPO0", 0x00, ResourceConsumer, ,
26266 )
26267 { // Pin list
26268 0x005D
26269 }
26270 GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
26271 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
26272 )
26273 { // Pin list
26274 0x0008
26275 }
26276 })
26277 If (((BDID == 0x09) || (BDID == 0x0A)))
26278 {
26279 Return (RBUF) /* \_SB_.TBAD._CRS.RBUF */
26280 }
26281
26282 If ((BDID == One))
26283 {
26284 Return (PBUF) /* \_SB_.TBAD._CRS.PBUF */
26285 }
26286 Else
26287 {
26288 If ((PMID == 0x03))
26289 {
26290 Return (WBUF) /* \_SB_.TBAD._CRS.WBUF */
26291 }
26292
26293 If ((BTMD == One))
26294 {
26295 Return (CBWB) /* \_SB_.TBAD._CRS.CBWB */
26296 }
26297 Else
26298 {
26299 Return (CBUF) /* \_SB_.TBAD._CRS.CBUF */
26300 }
26301 }
26302 }
26303
26304 Method (_STA, 0, NotSerialized) // _STA: Status
26305 {
26306 If (((OSID != One) || (OSYS <= 0x07DD)))
26307 {
26308 Return (0x0F)
26309 }
26310
26311 Return (Zero)
26312 }
26313
26314 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
26315 {
26316 Debug = "Method _DSM for Button Device"
26317 If ((PMID == Zero))
26318 {
26319 If ((OSYS == 0x07DD))
26320 {
26321 ^^PCI0.I2C7.PMIC.FCOT = One
26322 }
26323 Else
26324 {
26325 ^^PCI0.I2C7.PMIC.FCOT = Zero
26326 }
26327 }
26328
26329 If ((Arg0 == ToUUID ("dfbcf3c5-e7a5-44e6-9c1f-29c76f6e059c") /* Power Button Device */))
26330 {
26331 Switch (ToInteger (Arg2))
26332 {
26333 Case (Zero)
26334 {
26335 Return (Buffer (One)
26336 {
26337 0x03 // .
26338 })
26339 }
26340 Case (One)
26341 {
26342 Return (0x07)
26343 }
26344
26345 }
26346 }
26347 Else
26348 {
26349 Return (Buffer (One)
26350 {
26351 0x00 // .
26352 })
26353 }
26354
26355 Return (Zero)
26356 }
26357 }
26358
26359 Device (CNIN)
26360 {
26361 Method (_STA, 0, NotSerialized) // _STA: Status
26362 {
26363 Return (0x0F)
26364 }
26365
26366 Method (_HID, 0, NotSerialized) // _HID: Hardware ID
26367 {
26368 Return ("MSFT9001")
26369 }
26370
26371 Name (_CID, "PNP0C60" /* Display Sensor Device */) // _CID: Compatible ID
26372 }
26373
26374 Device (DKIN)
26375 {
26376 Method (_STA, 0, NotSerialized) // _STA: Status
26377 {
26378 Return (0x0F)
26379 }
26380
26381 Method (_HID, 0, NotSerialized) // _HID: Hardware ID
26382 {
26383 Return ("MSFT9002")
26384 }
26385
26386 Name (_CID, "PNP0C70" /* Dock Sensor Device */) // _CID: Compatible ID
26387 }
26388
26389 Device (MBID)
26390 {
26391 Name (_HID, "INT33BD" /* Intel Baytrail Mailbox Device */) // _HID: Hardware ID
26392 Name (_CID, "INT33BD" /* Intel Baytrail Mailbox Device */) // _CID: Compatible ID
26393 Name (_HRV, 0x02) // _HRV: Hardware Revision
26394 Name (_UID, One) // _UID: Unique ID
26395 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
26396 {
26397 Name (RBUF, ResourceTemplate ()
26398 {
26399 Memory32Fixed (ReadWrite,
26400 0xE00000D0, // Address Base
26401 0x00000010, // Address Length
26402 )
26403 })
26404 Return (RBUF) /* \_SB_.MBID._CRS.RBUF */
26405 }
26406
26407 OperationRegion (REGS, 0x87, Zero, 0x30)
26408 Field (REGS, DWordAcc, NoLock, Preserve)
26409 {
26410 PORT, 32,
26411 REG, 32,
26412 DATA, 32,
26413 MASK, 32,
26414 BE, 32,
26415 OP, 32,
26416 CODE, 32,
26417 BAR, 32,
26418 DEV, 32,
26419 FUN, 32
26420 }
26421
26422 Name (AVBL, Zero)
26423 Method (_REG, 2, NotSerialized) // _REG: Region Availability
26424 {
26425 If ((Arg0 == 0x87))
26426 {
26427 AVBL = Arg1
26428 }
26429 }
26430
26431 Method (READ, 3, Serialized)
26432 {
26433 Local0 = 0xFFFFFFFF
26434 If ((AVBL == One))
26435 {
26436 OP = Zero
26437 PORT = Arg0
26438 REG = Arg1
26439 BE = Arg2
26440 Local0 = DATA /* \_SB_.MBID.DATA */
26441 }
26442
26443 Return (Local0)
26444 }
26445
26446 Method (WRIT, 4, Serialized)
26447 {
26448 If ((AVBL == One))
26449 {
26450 OP = One
26451 PORT = Arg0
26452 REG = Arg1
26453 BE = Arg2
26454 DATA = Arg3
26455 }
26456 }
26457
26458 Method (MODI, 5, Serialized)
26459 {
26460 If ((AVBL == One))
26461 {
26462 OP = 0x02
26463 PORT = Arg0
26464 REG = Arg1
26465 BE = Arg2
26466 DATA = Arg3
26467 MASK = Arg4
26468 }
26469 }
26470
26471 Method (RMBX, 6, Serialized)
26472 {
26473 Local0 = 0xFFFFFFFF
26474 If ((AVBL == One))
26475 {
26476 OP = 0x03
26477 PORT = Arg0
26478 REG = Arg1
26479 BE = 0x03
26480 CODE = Arg2
26481 BAR = Arg3
26482 DEV = Arg4
26483 FUN = Arg5
26484 Local0 = DATA /* \_SB_.MBID.DATA */
26485 }
26486
26487 Return (Local0)
26488 }
26489
26490 Method (WMBX, 7, Serialized)
26491 {
26492 If ((AVBL == One))
26493 {
26494 OP = 0x04
26495 PORT = Arg0
26496 REG = Arg1
26497 BE = 0x03
26498 DATA = Arg2
26499 CODE = Arg3
26500 BAR = Arg4
26501 DEV = Arg5
26502 FUN = Arg6
26503 }
26504 }
26505 }
26506
26507 Device (PAGD)
26508 {
26509 Name (_HID, "ACPI000C" /* Processor Aggregator Device */) // _HID: Hardware ID
26510 Name (_CID, "ACPI000C" /* Processor Aggregator Device */) // _CID: Compatible ID
26511 Name (IDCN, Zero)
26512 Name (PURP, Package (0x02)
26513 {
26514 One,
26515 Zero
26516 })
26517 Method (_PUR, 0, Serialized) // _PUR: Processor Utilization Request
26518 {
26519 PURP [One] = IDCN /* \_SB_.PAGD.IDCN */
26520 Return (PURP) /* \_SB_.PAGD.PURP */
26521 }
26522
26523 Method (_OST, 3, Serialized) // _OST: OSPM Status Indication
26524 {
26525 Debug = "_OST is invoked"
26526 }
26527 }
26528 }
26529
26530 Scope (_TZ)
26531 {
26532 ThermalZone (TZ00)
26533 {
26534 Name (_DEP, Package (0x01) // _DEP: Dependencies
26535 {
26536 \_SB.PCI0.I2C7
26537 })
26538 Method (_TMP, 0, Serialized) // _TMP: Temperature
26539 {
26540 If ((PMID == Zero))
26541 {
26542 If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
26543 {
26544 \_SB.PCI0.I2C7.PMIC.GMP2 = Zero
26545 If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
26546 {
26547 Return (\_SB.PCI0.I2C7.PMIC.TMP2)
26548 }
26549 }
26550 }
26551
26552 If ((PMID == 0x03))
26553 {
26554 If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
26555 {
26556 \_SB.PCI0.I2C7.PMI5.GMP2 = Zero
26557 If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
26558 {
26559 Return (\_SB.PCI0.I2C7.PMI5.TMP2)
26560 }
26561 }
26562 }
26563
26564 If ((PMID == One))
26565 {
26566 If ((\_SB.PCI0.I2C7.PMI2.AVBG == One))
26567 {
26568 \_SB.PCI0.I2C7.PMI2.GMP0 = Zero
26569 If ((\_SB.PCI0.I2C7.PMI2.AVBD == One))
26570 {
26571 Return (\_SB.PCI0.I2C7.PMI2.TMP0)
26572 }
26573 }
26574 }
26575
26576 If ((PMID == 0x02))
26577 {
26578 If ((\_SB.PCI0.I2C7.PMI1.AVBG == One))
26579 {
26580 \_SB.PCI0.I2C7.PMI1.GMP0 = Zero
26581 If ((\_SB.PCI0.I2C7.PMI1.AVBD == One))
26582 {
26583 Return (\_SB.PCI0.I2C7.PMI1.TMP0)
26584 }
26585 }
26586 }
26587
26588 Return (0x0AAC)
26589 }
26590
26591 Method (_CRT, 0, Serialized) // _CRT: Critical Temperature
26592 {
26593 Return ((0x0AAC + (CRTT * 0x0A)))
26594 }
26595 }
26596 }
26597
26598 Scope (_SB.PCI0)
26599 {
26600 Device (PDRC)
26601 {
26602 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
26603 Name (_UID, One) // _UID: Unique ID
26604 Name (BUF0, ResourceTemplate ()
26605 {
26606 Memory32Fixed (ReadWrite,
26607 0xE0000000, // Address Base
26608 0x10000000, // Address Length
26609 )
26610 Memory32Fixed (ReadWrite,
26611 0xFEA00000, // Address Base
26612 0x00100000, // Address Length
26613 )
26614 Memory32Fixed (ReadWrite,
26615 0xFED01000, // Address Base
26616 0x00001000, // Address Length
26617 )
26618 Memory32Fixed (ReadWrite,
26619 0xFED03000, // Address Base
26620 0x00001000, // Address Length
26621 )
26622 Memory32Fixed (ReadWrite,
26623 0xFED06000, // Address Base
26624 0x00001000, // Address Length
26625 )
26626 Memory32Fixed (ReadWrite,
26627 0xFED08000, // Address Base
26628 0x00002000, // Address Length
26629 )
26630 Memory32Fixed (ReadWrite,
26631 0xFED80000, // Address Base
26632 0x00040000, // Address Length
26633 )
26634 Memory32Fixed (ReadWrite,
26635 0xFED1C000, // Address Base
26636 0x00001000, // Address Length
26637 )
26638 Memory32Fixed (ReadOnly,
26639 0xFEE00000, // Address Base
26640 0x00100000, // Address Length
26641 )
26642 })
26643 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
26644 {
26645 Return (BUF0) /* \_SB_.PCI0.PDRC.BUF0 */
26646 }
26647 }
26648 }
26649
26650 Method (BRTN, 1, Serialized)
26651 {
26652 If (((DID1 & 0x0F00) == 0x0400))
26653 {
26654 Notify (\_SB.PCI0.GFX0.DD01, Arg0)
26655 }
26656
26657 If (((DID2 & 0x0F00) == 0x0400))
26658 {
26659 Notify (\_SB.PCI0.GFX0.DD02, Arg0)
26660 }
26661
26662 If (((DID3 & 0x0F00) == 0x0400))
26663 {
26664 Notify (\_SB.PCI0.GFX0.DD03, Arg0)
26665 }
26666
26667 If (((DID4 & 0x0F00) == 0x0400))
26668 {
26669 Notify (\_SB.PCI0.GFX0.DD04, Arg0)
26670 }
26671
26672 If (((DID5 & 0x0F00) == 0x0400))
26673 {
26674 Notify (\_SB.PCI0.GFX0.DD05, Arg0)
26675 }
26676
26677 If (CondRefOf (NDN3))
26678 {
26679 NDN3 (Arg0)
26680 }
26681 }
26682
26683 Scope (_SB.PCI0.I2C7)
26684 {
26685 Device (BMDR)
26686 {
26687 Name (_HID, "INT33FE" /* XPOWER Battery Device */) // _HID: Hardware ID
26688 Name (_CID, "INT33FE" /* XPOWER Battery Device */) // _CID: Compatible ID
26689 Name (_DDN, "XPOWER Battery Device") // _DDN: DOS Device Name
26690 Name (_DEP, Package (0x04) // _DEP: Dependencies
26691 {
26692 I2C7,
26693 PMI1,
26694 GPO1,
26695 MBID
26696 })
26697 Name (BCCC, 0x40)
26698 Name (BDCP, 0x189C)
26699 Name (BCCE, One)
26700 Name (BSTP, Package (0x04)
26701 {
26702 Zero,
26703 0xFFFFFFFF,
26704 0xFFFFFFFF,
26705 0xFFFFFFFF
26706 })
26707 Name (BUFF, Buffer (0x03){})
26708 CreateByteField (BUFF, Zero, STAT)
26709 CreateByteField (BUFF, 0x02, DATA)
26710 Name (RBUF, Buffer (0x02)
26711 {
26712 0x79, 0x00 // y.
26713 })
26714 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
26715 {
26716 Return (RBUF) /* \_SB_.PCI0.I2C7.BMDR.RBUF */
26717 }
26718
26719 Method (_STA, 0, NotSerialized) // _STA: Status
26720 {
26721 If ((OSID == One))
26722 {
26723 If (((BDID == One) && (PMID == 0x02)))
26724 {
26725 Return (0x0F)
26726 }
26727 }
26728
26729 Return (Zero)
26730 }
26731
26732 OperationRegion (BMOP, 0x9E, Zero, 0x0100)
26733 Field (BMOP, DWordAcc, NoLock, Preserve)
26734 {
26735 SOC, 32,
26736 FCCP, 32,
26737 CHST, 32,
26738 RMCP, 32,
26739 VOLT, 32,
26740 BATP, 32,
26741 SRP0, 32,
26742 STYP, 32,
26743 CHGC, 32,
26744 STPC, 32,
26745 GADC, 32,
26746 TTEM, 32,
26747 TTCH, 32,
26748 CYCL, 32,
26749 BTP, 32,
26750 DPCU, 32,
26751 DSCP, 32,
26752 CHEN, 32
26753 }
26754
26755 Name (AVBL, Zero)
26756 Method (_REG, 2, NotSerialized) // _REG: Region Availability
26757 {
26758 If ((Arg0 == 0x9E))
26759 {
26760 AVBL = Arg1
26761 }
26762 }
26763
26764 Method (DPTU, 0, NotSerialized)
26765 {
26766 ADBG ("DPTU BMDR")
26767 If ((AVBL == One))
26768 {
26769 DPCU = BCCC /* \_SB_.PCI0.I2C7.BMDR.BCCC */
26770 CHEN = BCCE /* \_SB_.PCI0.I2C7.BMDR.BCCE */
26771 }
26772
26773 Return (One)
26774 }
26775
26776 Method (CMUX, 1, Serialized)
26777 {
26778 If ((^^AVBL == One))
26779 {
26780 If ((^^^^GPO1.AVBL == One))
26781 {
26782 If ((Arg0 != 0x03))
26783 {
26784 CDRD (One)
26785 If ((^^^^GPO3.AMMR == One))
26786 {
26787 ^^^^GPO3.DMTX = 0x8102
26788 }
26789 }
26790 Else
26791 {
26792 CDRD (Zero)
26793 If ((^^^^GPO3.AMMR == One))
26794 {
26795 ^^^^GPO3.DMTX = 0x8100
26796 }
26797 }
26798 }
26799 }
26800 }
26801
26802 Method (SBTP, 0, NotSerialized)
26803 {
26804 ADBG ("SBTP BMDR")
26805 Notify (ADP1, 0x80) // Status Change
26806 If (CondRefOf (\_SB.DPTF, Local3))
26807 {
26808 ADBG ("SBTP Notify DPTF")
26809 Notify (DPTF, 0x86) // Device-Specific
26810 Notify (TCHG, 0x80) // Status Change
26811 }
26812
26813 Return (One)
26814 }
26815
26816 Method (PTYP, 0, NotSerialized)
26817 {
26818 If ((PMID == One))
26819 {
26820 Return (0x06)
26821 }
26822
26823 If ((PMID == 0x02))
26824 {
26825 Return (0x05)
26826 }
26827
26828 Return (Zero)
26829 }
26830
26831 Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
26832 {
26833 Return (_SB) /* \_SB_ */
26834 }
26835
26836 Method (PSOC, 0, NotSerialized)
26837 {
26838 ADBG ("PSOC")
26839 If ((AVBL == One))
26840 {
26841 Local1 = SOC /* \_SB_.PCI0.I2C7.BMDR.SOC_ */
26842 Return (Local1)
26843 }
26844
26845 Return (Zero)
26846 }
26847
26848 Method (PMAX, 0, NotSerialized)
26849 {
26850 ADBG ("PMAX")
26851 If ((AVBL == One))
26852 {
26853 Local1 = FCCP /* \_SB_.PCI0.I2C7.BMDR.FCCP */
26854 Return (Local1)
26855 }
26856
26857 Return (Zero)
26858 }
26859
26860 Method (VMIN, 0, NotSerialized)
26861 {
26862 Return (0x0DAC)
26863 }
26864
26865 Method (APWR, 0, NotSerialized)
26866 {
26867 Return (0x0365C040)
26868 }
26869
26870 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
26871 {
26872 If ((Arg0 == ToUUID ("aa7bcf77-263f-4e28-8e16-9cac5c610928")))
26873 {
26874 If ((Arg2 == One))
26875 {
26876 Return (Zero)
26877 }
26878
26879 If ((Arg2 == 0x02))
26880 {
26881 Return (0x2F)
26882 }
26883
26884 If ((Arg2 == 0x03))
26885 {
26886 Return (0xE0)
26887 }
26888
26889 If ((Arg2 == 0x04))
26890 {
26891 Return (0x03)
26892 }
26893
26894 If ((Arg2 == 0x05))
26895 {
26896 Return (One)
26897 }
26898
26899 If ((Arg2 == 0x06))
26900 {
26901 Return (0x02)
26902 }
26903
26904 If ((Arg2 == 0x07))
26905 {
26906 Return (One)
26907 }
26908
26909 Return (0xFFFFFFFF)
26910 }
26911 }
26912
26913 Method (PSRC, 0, NotSerialized)
26914 {
26915 ADBG ("BMDR PSRC")
26916 If ((AVBL == One))
26917 {
26918 ADBG ("Read STYP")
26919 Local0 = STYP /* \_SB_.PCI0.I2C7.BMDR.STYP */
26920 If ((Local0 == Zero))
26921 {
26922 Return (Zero)
26923 }
26924
26925 If ((Local0 == One))
26926 {
26927 Return (One)
26928 }
26929
26930 If ((Local0 == 0x02))
26931 {
26932 Return (0x02)
26933 }
26934
26935 If ((Local0 == 0x03))
26936 {
26937 Return (0x03)
26938 }
26939
26940 If ((Local0 == 0x04))
26941 {
26942 Return (0x04)
26943 }
26944
26945 If ((Local0 == 0x05))
26946 {
26947 Return (0x05)
26948 }
26949 }
26950
26951 Return (One)
26952 }
26953
26954 Method (BATD, 0, NotSerialized)
26955 {
26956 If ((AVBL == One))
26957 {
26958 ADBG ("BATD")
26959 Local0 = CHST /* \_SB_.PCI0.I2C7.BMDR.CHST */
26960 Local0 &= 0x0F
26961 If ((Local0 == 0x02))
26962 {
26963 Local1 = 0x02
26964 }
26965
26966 If ((Local0 == One))
26967 {
26968 Local1 = One
26969 }
26970
26971 If ((Local0 == 0x08))
26972 {
26973 Local1 = Zero
26974 }
26975
26976 BSTP [Zero] = Local1
26977 BSTP [One] = CHGC /* \_SB_.PCI0.I2C7.BMDR.CHGC */
26978 BSTP [0x02] = RMCP /* \_SB_.PCI0.I2C7.BMDR.RMCP */
26979 BSTP [0x03] = VOLT /* \_SB_.PCI0.I2C7.BMDR.VOLT */
26980 DPCU = BCCC /* \_SB_.PCI0.I2C7.BMDR.BCCC */
26981 }
26982
26983 Return (BSTP) /* \_SB_.PCI0.I2C7.BMDR.BSTP */
26984 }
26985
26986 Method (CTYP, 0, NotSerialized)
26987 {
26988 Return (0x02)
26989 }
26990
26991 Method (ARTG, 0, NotSerialized)
26992 {
26993 Return (0x0365C040)
26994 }
26995
26996 Method (BMDC, 0, NotSerialized)
26997 {
26998 Return (BDCP) /* \_SB_.PCI0.I2C7.BMDR.BDCP */
26999 }
27000 }
27001 }
27002
27003 Scope (_SB.PCI0.I2C3)
27004 {
27005 Device (TIDR)
27006 {
27007 Name (_HID, "INT33FE" /* XPOWER Battery Device */) // _HID: Hardware ID
27008 Name (_CID, "INT33FE" /* XPOWER Battery Device */) // _CID: Compatible ID
27009 Name (_DDN, "TI PMIC Battery Device") // _DDN: DOS Device Name
27010 Name (BCCC, 0x80)
27011 Name (BCCE, One)
27012 Name (OTGS, Zero)
27013 Name (CHPR, One)
27014 Name (FGDV, 0x0A)
27015 Name (BCIL, 0x65)
27016 Name (BCVF, 0x93)
27017 Name (BCFV, 0xED)
27018 Name (BCCH, 0x38)
27019 Name (BCST, 0x05)
27020 Name (BCPE, 0x74)
27021 Name (BCCL, 0xFFFFFFFF)
27022 Name (BCLP, 0x1004)
27023 Name (DSVO, 0x0EA6)
27024 Name (BTPC, Zero)
27025 Name (AVCU, Zero)
27026 Name (BSTP, Package (0x04)
27027 {
27028 Zero,
27029 0xFFFFFFFF,
27030 0xFFFFFFFF,
27031 0xFFFFFFFF
27032 })
27033 Name (_DEP, Package (0x05) // _DEP: Dependencies
27034 {
27035 I2C7,
27036 ^^I2C7.PMI2,
27037 I2C3,
27038 GPO1,
27039 MBID
27040 })
27041 Name (BUFF, Buffer (0x03){})
27042 CreateByteField (BUFF, Zero, STAT)
27043 CreateByteField (BUFF, 0x02, DATA)
27044 Name (RBUF, ResourceTemplate ()
27045 {
27046 I2cSerialBusV2 (0x006B, ControllerInitiated, 0x000186A0,
27047 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
27048 0x00, ResourceConsumer, , Exclusive,
27049 )
27050 })
27051 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
27052 {
27053 Return (RBUF) /* \_SB_.PCI0.I2C3.TIDR.RBUF */
27054 }
27055
27056 Method (_STA, 0, NotSerialized) // _STA: Status
27057 {
27058 If ((OSID == One))
27059 {
27060 If (((BDID == One) && (PMID == One)))
27061 {
27062 Return (0x0F)
27063 }
27064 }
27065
27066 Return (Zero)
27067 }
27068
27069 OperationRegion (BMOP, 0x9E, Zero, 0x0100)
27070 Field (BMOP, DWordAcc, NoLock, Preserve)
27071 {
27072 SOC, 32,
27073 FCCP, 32,
27074 CHST, 32,
27075 RMCP, 32,
27076 VOLT, 32,
27077 BATP, 32,
27078 SRP0, 32,
27079 STYP, 32,
27080 CHGC, 32,
27081 STPC, 32,
27082 GADC, 32,
27083 TTEM, 32,
27084 TTCH, 32,
27085 CYCL, 32,
27086 BTP, 32,
27087 DPCU, 32,
27088 DSCP, 32,
27089 CHEN, 32
27090 }
27091
27092 Name (AVBL, Zero)
27093 Method (_REG, 2, NotSerialized) // _REG: Region Availability
27094 {
27095 If ((Arg0 == 0x9E))
27096 {
27097 AVBL = Arg1
27098 }
27099 }
27100
27101 Method (DPTU, 0, NotSerialized)
27102 {
27103 ADBG ("DPTU TIDR")
27104 If ((AVBL == One))
27105 {
27106 DPCU = BCCC /* \_SB_.PCI0.I2C3.TIDR.BCCC */
27107 CHEN = BCCE /* \_SB_.PCI0.I2C3.TIDR.BCCE */
27108 }
27109
27110 Return (One)
27111 }
27112
27113 Method (CMUX, 1, Serialized)
27114 {
27115 If ((^^^I2C7.AVBL == One))
27116 {
27117 If ((^^^^GPO1.AVBL == One))
27118 {
27119 BUFF = ^^^I2C7.SIRQ /* \_SB_.PCI0.I2C7.SIRQ */
27120 DATA &= 0x20
27121 If ((DATA == 0x20))
27122 {
27123 If ((Arg0 != 0x03))
27124 {
27125 CDRD (One)
27126 If ((^^^^GPO3.AMMR == One))
27127 {
27128 ^^^^GPO3.DMTX = 0x8102
27129 }
27130 }
27131 }
27132 Else
27133 {
27134 CDRD (Zero)
27135 If ((^^^^GPO3.AMMR == One))
27136 {
27137 ^^^^GPO3.DMTX = 0x8100
27138 }
27139 }
27140 }
27141 }
27142 }
27143
27144 Method (SBTP, 0, NotSerialized)
27145 {
27146 ADBG ("SBTP TIDR")
27147 Notify (ADP1, 0x80) // Status Change
27148 If (CondRefOf (\_SB.DPTF, Local3))
27149 {
27150 ADBG ("SBTP Notify DPTF")
27151 Notify (DPTF, 0x86) // Device-Specific
27152 Notify (TCHG, 0x80) // Status Change
27153 }
27154
27155 Return (One)
27156 }
27157
27158 Method (PTYP, 0, NotSerialized)
27159 {
27160 If ((PMID == One))
27161 {
27162 Return (0x06)
27163 }
27164
27165 If ((PMID == 0x02))
27166 {
27167 Return (0x05)
27168 }
27169
27170 Return (Zero)
27171 }
27172
27173 Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
27174 {
27175 Return (_SB) /* \_SB_ */
27176 }
27177
27178 Method (PSOC, 0, NotSerialized)
27179 {
27180 ADBG ("PSOC")
27181 If ((AVBL == One))
27182 {
27183 Local1 = SOC /* \_SB_.PCI0.I2C3.TIDR.SOC_ */
27184 Return (Local1)
27185 }
27186
27187 Return (Zero)
27188 }
27189
27190 Method (PMAX, 0, NotSerialized)
27191 {
27192 ADBG ("PMAX")
27193 If ((AVBL == One))
27194 {
27195 Local1 = FCCP /* \_SB_.PCI0.I2C3.TIDR.FCCP */
27196 Return (Local1)
27197 }
27198
27199 Return (Zero)
27200 }
27201
27202 Method (VMIN, 0, NotSerialized)
27203 {
27204 Return (0x0DAC)
27205 }
27206
27207 Method (APWR, 0, NotSerialized)
27208 {
27209 Return (0x0365C040)
27210 }
27211
27212 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
27213 {
27214 If ((Arg0 == ToUUID ("aa7bcf77-263f-4e28-8e16-9cac5c610928")))
27215 {
27216 If ((Arg2 == One))
27217 {
27218 Return (Zero)
27219 }
27220
27221 If ((Arg2 == 0x02))
27222 {
27223 Return (0x08)
27224 }
27225
27226 If ((Arg2 == 0x03))
27227 {
27228 Return (0xC0)
27229 }
27230
27231 If ((Arg2 == 0x04))
27232 {
27233 Return (0x02)
27234 }
27235
27236 If ((Arg2 == 0x05))
27237 {
27238 Return (One)
27239 }
27240
27241 If ((Arg2 == 0x06))
27242 {
27243 Return (0xFFFFFFFF)
27244 }
27245
27246 If ((Arg2 == 0x07))
27247 {
27248 Return (Zero)
27249 }
27250
27251 Return (0xFFFFFFFF)
27252 }
27253 }
27254
27255 Method (PSRC, 0, NotSerialized)
27256 {
27257 ADBG ("TIDR PSRC")
27258 If ((AVBL == One))
27259 {
27260 ADBG ("Read STYP")
27261 Local0 = STYP /* \_SB_.PCI0.I2C3.TIDR.STYP */
27262 If ((Local0 == Zero))
27263 {
27264 Return (Zero)
27265 }
27266
27267 If ((Local0 == One))
27268 {
27269 Return (One)
27270 }
27271
27272 If ((Local0 == 0x02))
27273 {
27274 Return (0x02)
27275 }
27276
27277 If ((Local0 == 0x03))
27278 {
27279 Return (0x03)
27280 }
27281
27282 If ((Local0 == 0x04))
27283 {
27284 Return (0x04)
27285 }
27286
27287 If ((Local0 == 0x05))
27288 {
27289 Return (0x05)
27290 }
27291 }
27292
27293 Return (One)
27294 }
27295
27296 Method (BATD, 0, NotSerialized)
27297 {
27298 If ((AVBL == One))
27299 {
27300 ADBG ("BATD")
27301 Local0 = CHST /* \_SB_.PCI0.I2C3.TIDR.CHST */
27302 Local0 &= 0x0F
27303 If ((Local0 == 0x02))
27304 {
27305 Local1 = 0x02
27306 }
27307
27308 If ((Local0 == One))
27309 {
27310 Local1 = One
27311 }
27312
27313 If ((Local0 == 0x08))
27314 {
27315 Local1 = Zero
27316 }
27317
27318 BSTP [Zero] = Local1
27319 BSTP [One] = CHGC /* \_SB_.PCI0.I2C3.TIDR.CHGC */
27320 BSTP [0x02] = RMCP /* \_SB_.PCI0.I2C3.TIDR.RMCP */
27321 BSTP [0x03] = VOLT /* \_SB_.PCI0.I2C3.TIDR.VOLT */
27322 DPCU = BCCC /* \_SB_.PCI0.I2C3.TIDR.BCCC */
27323 }
27324
27325 Return (BSTP) /* \_SB_.PCI0.I2C3.TIDR.BSTP */
27326 }
27327
27328 Method (CTYP, 0, NotSerialized)
27329 {
27330 Return (0x02)
27331 }
27332
27333 Method (ARTG, 0, NotSerialized)
27334 {
27335 Return (0x0365C040)
27336 }
27337 }
27338
27339 OperationRegion (POCR, GenericSerialBus, Zero, 0x0100)
27340 Field (POCR, BufferAcc, NoLock, Preserve)
27341 {
27342 Connection (
27343 I2cSerialBusV2 (0x006B, ControllerInitiated, 0x000F4240,
27344 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
27345 0x00, ResourceConsumer, , Exclusive,
27346 )
27347 ),
27348 Offset (0x01),
27349 AccessAs (BufferAcc, AttribByte),
27350 P0TG, 8
27351 }
27352
27353 Device (ABAT)
27354 {
27355 Name (_HID, "TBQ24296" /* Charger */) // _HID: Hardware ID
27356 Name (_CID, "TBQ24296" /* Charger */) // _CID: Compatible ID
27357 Name (_DDN, "TI PMIC Battery Device") // _DDN: DOS Device Name
27358 Name (_DEP, Package (0x03) // _DEP: Dependencies
27359 {
27360 GPO1,
27361 GPO3,
27362 I2C3
27363 })
27364 Name (RBUF, ResourceTemplate ()
27365 {
27366 I2cSerialBusV2 (0x006B, ControllerInitiated, 0x000186A0,
27367 AddressingMode7Bit, "\\_SB.PCI0.I2C3",
27368 0x00, ResourceConsumer, , Exclusive,
27369 )
27370 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
27371 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
27372 )
27373 { // Pin list
27374 0x0005
27375 }
27376 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
27377 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
27378 )
27379 { // Pin list
27380 0x0045
27381 }
27382 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
27383 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
27384 )
27385 { // Pin list
27386 0x0041
27387 }
27388 })
27389 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
27390 {
27391 Return (RBUF) /* \_SB_.PCI0.I2C3.ABAT.RBUF */
27392 }
27393
27394 Method (_STA, 0, NotSerialized) // _STA: Status
27395 {
27396 If (((BDID == One) && (PMID == One)))
27397 {
27398 If ((OSID != One))
27399 {
27400 Return (0x0F)
27401 }
27402 }
27403
27404 Return (Zero)
27405 }
27406 }
27407 }
27408
27409 Scope (_SB.PCI0.I2C1)
27410 {
27411 Device (USTC)
27412 {
27413 Name (_HID, "FUSB0300") // _HID: Hardware ID
27414 Name (_UID, Zero) // _UID: Unique ID
27415 Method (_STA, 0, NotSerialized) // _STA: Status
27416 {
27417 If (((OSID == 0x04) && ((BDID == 0x09) || (BDID == 0x0A))))
27418 {
27419 Return (0x0F)
27420 }
27421
27422 Return (Zero)
27423 }
27424
27425 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
27426 {
27427 Name (SBUF, ResourceTemplate ()
27428 {
27429 I2cSerialBusV2 (0x0022, ControllerInitiated, 0x00061A80,
27430 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
27431 0x00, ResourceConsumer, , Exclusive,
27432 )
27433 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
27434 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
27435 )
27436 { // Pin list
27437 0x0005
27438 }
27439 })
27440 Return (SBUF) /* \_SB_.PCI0.I2C1.USTC._CRS.SBUF */
27441 }
27442 }
27443
27444 Device (PER1)
27445 {
27446 Name (_HID, "PI330532") // _HID: Hardware ID
27447 Name (_UID, Zero) // _UID: Unique ID
27448 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
27449 {
27450 Name (SBUF, ResourceTemplate ()
27451 {
27452 I2cSerialBusV2 (0x0054, ControllerInitiated, 0x00061A80,
27453 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
27454 0x00, ResourceConsumer, , Exclusive,
27455 )
27456 })
27457 Return (SBUF) /* \_SB_.PCI0.I2C1.PER1._CRS.SBUF */
27458 }
27459
27460 Method (_STA, 0, NotSerialized) // _STA: Status
27461 {
27462 If (((OSID == 0x04) && ((BDID == 0x09) || (BDID == 0x0A))))
27463 {
27464 Return (0x0F)
27465 }
27466
27467 Return (Zero)
27468 }
27469 }
27470
27471 Device (ANFG)
27472 {
27473 Name (_HID, "MAX17047" /* Fuel Gauge Controller */) // _HID: Hardware ID
27474 Name (_CID, "MAX17047" /* Fuel Gauge Controller */) // _CID: Compatible ID
27475 Name (_DDN, "Fuel Gauge Controller") // _DDN: DOS Device Name
27476 Name (RBUF, ResourceTemplate ()
27477 {
27478 I2cSerialBusV2 (0x0036, ControllerInitiated, 0x00061A80,
27479 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
27480 0x00, ResourceConsumer, , Exclusive,
27481 )
27482 GpioInt (Level, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
27483 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
27484 )
27485 { // Pin list
27486 0x0001
27487 }
27488 })
27489 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
27490 {
27491 Return (RBUF) /* \_SB_.PCI0.I2C1.ANFG.RBUF */
27492 }
27493
27494 Method (_STA, 0, NotSerialized) // _STA: Status
27495 {
27496 If (((OSID != One) && (BDID != One)))
27497 {
27498 Return (0x0F)
27499 }
27500
27501 Return (Zero)
27502 }
27503 }
27504
27505 Device (ANCG)
27506 {
27507 Name (_HID, "SMB0349" /* Charger */) // _HID: Hardware ID
27508 Name (_CID, "SMB0349" /* Charger */) // _CID: Compatible ID
27509 Name (_DDN, "Charger") // _DDN: DOS Device Name
27510 Name (RBUF, ResourceTemplate ()
27511 {
27512 I2cSerialBusV2 (0x0035, ControllerInitiated, 0x00061A80,
27513 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
27514 0x00, ResourceConsumer, , Exclusive,
27515 )
27516 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
27517 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
27518 )
27519 { // Pin list
27520 0x0005
27521 }
27522 })
27523 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
27524 {
27525 Return (RBUF) /* \_SB_.PCI0.I2C1.ANCG.RBUF */
27526 }
27527
27528 Method (_STA, 0, NotSerialized) // _STA: Status
27529 {
27530 If (((OSID != One) && (BDID != One)))
27531 {
27532 Return (0x0F)
27533 }
27534
27535 Return (Zero)
27536 }
27537 }
27538
27539 Device (ANF1)
27540 {
27541 Name (_HID, "TXN27501") // _HID: Hardware ID
27542 Name (_CID, "TXN27501") // _CID: Compatible ID
27543 Name (_DDN, "TI Fuel Gauge Controller") // _DDN: DOS Device Name
27544 Name (RBUF, ResourceTemplate ()
27545 {
27546 I2cSerialBusV2 (0x006B, ControllerInitiated, 0x00061A80,
27547 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
27548 0x00, ResourceConsumer, , Exclusive,
27549 )
27550 GpioInt (Level, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
27551 "\\_SB.GPO3", 0x00, ResourceConsumer, ,
27552 )
27553 { // Pin list
27554 0x0001
27555 }
27556 })
27557 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
27558 {
27559 Return (RBUF) /* \_SB_.PCI0.I2C1.ANF1.RBUF */
27560 }
27561
27562 Method (_STA, 0, NotSerialized) // _STA: Status
27563 {
27564 If ((OSID != One))
27565 {
27566 Return (0x0F)
27567 }
27568
27569 Return (Zero)
27570 }
27571 }
27572
27573 Device (ANC2)
27574 {
27575 Name (_HID, "TXN24292") // _HID: Hardware ID
27576 Name (_CID, "TXN24292") // _CID: Compatible ID
27577 Name (_DDN, "TI Charger") // _DDN: DOS Device Name
27578 Name (RBUF, ResourceTemplate ()
27579 {
27580 I2cSerialBusV2 (0x0055, ControllerInitiated, 0x00061A80,
27581 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
27582 0x00, ResourceConsumer, , Exclusive,
27583 )
27584 GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
27585 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
27586 )
27587 { // Pin list
27588 0x0005
27589 }
27590 })
27591 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
27592 {
27593 Return (RBUF) /* \_SB_.PCI0.I2C1.ANC2.RBUF */
27594 }
27595
27596 Method (_STA, 0, NotSerialized) // _STA: Status
27597 {
27598 If ((OSID != One))
27599 {
27600 Return (0x0F)
27601 }
27602
27603 Return (Zero)
27604 }
27605 }
27606
27607 Name (LVFG, ResourceTemplate ()
27608 {
27609 I2cSerialBusV2 (0x0033, ControllerInitiated, 0x000186A0,
27610 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
27611 0x00, ResourceConsumer, , Exclusive,
27612 )
27613 })
27614 Name (AVBL, Zero)
27615 Method (_REG, 2, NotSerialized) // _REG: Region Availability
27616 {
27617 If ((Arg0 == 0x09))
27618 {
27619 AVBL = Arg1
27620 }
27621 }
27622
27623 OperationRegion (DVFG, GenericSerialBus, Zero, 0x0100)
27624 Field (DVFG, BufferAcc, NoLock, Preserve)
27625 {
27626 Connection (LVFG),
27627 Offset (0x10),
27628 AccessAs (BufferAcc, AttribBytes (0x02)),
27629 FG10, 8
27630 }
27631
27632 Field (DVFG, BufferAcc, NoLock, Preserve)
27633 {
27634 Connection (LVFG),
27635 Offset (0x12),
27636 AccessAs (BufferAcc, AttribBytes (0x02)),
27637 FG12, 8
27638 }
27639
27640 Field (DVFG, BufferAcc, NoLock, Preserve)
27641 {
27642 Connection (LVFG),
27643 Offset (0x1E),
27644 AccessAs (BufferAcc, AttribBytes (0x02)),
27645 FG1E, 8
27646 }
27647
27648 Field (DVFG, BufferAcc, NoLock, Preserve)
27649 {
27650 Connection (LVFG),
27651 Offset (0x20),
27652 AccessAs (BufferAcc, AttribBytes (0x02)),
27653 FG20, 8
27654 }
27655
27656 Field (DVFG, BufferAcc, NoLock, Preserve)
27657 {
27658 Connection (LVFG),
27659 Offset (0x2E),
27660 AccessAs (BufferAcc, AttribBytes (0x02)),
27661 FG2E, 8
27662 }
27663
27664 Field (DVFG, BufferAcc, NoLock, Preserve)
27665 {
27666 Connection (LVFG),
27667 Offset (0x08),
27668 AccessAs (BufferAcc, AttribBytes (0x02)),
27669 FG08, 8
27670 }
27671
27672 Field (DVFG, BufferAcc, NoLock, Preserve)
27673 {
27674 Connection (LVFG),
27675 Offset (0x14),
27676 AccessAs (BufferAcc, AttribBytes (0x02)),
27677 FG14, 8
27678 }
27679
27680 Field (DVFG, BufferAcc, NoLock, Preserve)
27681 {
27682 Connection (LVFG),
27683 Offset (0x16),
27684 AccessAs (BufferAcc, AttribBytes (0x02)),
27685 FG16, 8
27686 }
27687
27688 Field (DVFG, BufferAcc, NoLock, Preserve)
27689 {
27690 Connection (LVFG),
27691 Offset (0x0A),
27692 AccessAs (BufferAcc, AttribBytes (0x02)),
27693 FG0A, 8
27694 }
27695
27696 Field (DVFG, BufferAcc, NoLock, Preserve)
27697 {
27698 Connection (LVFG),
27699 AccessAs (BufferAcc, AttribBytes (0x02)),
27700 FG00, 8
27701 }
27702
27703 Field (DVFG, BufferAcc, NoLock, Preserve)
27704 {
27705 Connection (LVFG),
27706 Offset (0x40),
27707 AccessAs (BufferAcc, AttribBytes (0x02)),
27708 FG40, 8
27709 }
27710
27711 Field (DVFG, BufferAcc, NoLock, Preserve)
27712 {
27713 Connection (LVFG),
27714 Offset (0x06),
27715 AccessAs (BufferAcc, AttribBytes (0x02)),
27716 THRM, 8
27717 }
27718
27719 Field (DVFG, BufferAcc, NoLock, Preserve)
27720 {
27721 Connection (LVFG),
27722 Offset (0x20),
27723 AccessAs (BufferAcc, AttribBytes (0x02)),
27724 SOCR, 8
27725 }
27726
27727 Field (DVFG, BufferAcc, NoLock, Preserve)
27728 {
27729 Connection (LVFG),
27730 Offset (0x1C),
27731 AccessAs (BufferAcc, AttribBytes (0x02)),
27732 MXCU, 8
27733 }
27734
27735 Device (BATC)
27736 {
27737 Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID
27738 Name (_UID, One) // _UID: Unique ID
27739 Name (BCCE, One)
27740 Name (OTGS, Zero)
27741 Name (HSMD, Zero)
27742 Name (CHPR, Zero)
27743 Name (FGDV, 0x0A)
27744 Name (BCCC, 0x46)
27745 Name (RECT, Zero)
27746 Name (BCCL, 0xFFFFFFFF)
27747 Name (BCLP, 0x1004)
27748 Name (DSCP, 0x2288)
27749 Name (DSVO, 0x0EA6)
27750 Name (BTPC, Zero)
27751 Name (AVCU, Zero)
27752 Name (DCPS, Zero)
27753 Name (_DEP, Package (0x01) // _DEP: Dependencies
27754 {
27755 I2C1
27756 })
27757 Name (BUF1, Buffer (0x06)
27758 {
27759 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ......
27760 })
27761 CreateByteField (BUF1, Zero, BSTA)
27762 CreateByteField (BUF1, One, BLEN)
27763 CreateDWordField (BUF1, 0x02, DAT1)
27764 Name (BUF2, Buffer (0x04)
27765 {
27766 0x00, 0x00, 0x00, 0x00 // ....
27767 })
27768 CreateByteField (BUF2, Zero, BSTS)
27769 CreateByteField (BUF2, One, SLEN)
27770 CreateWordField (BUF2, 0x02, WRD1)
27771 Name (INBU, Buffer (0x08)
27772 {
27773 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
27774 })
27775 CreateByteField (INBU, Zero, INST)
27776 CreateByteField (INBU, One, INLN)
27777 CreateByteField (INBU, 0x02, INT0)
27778 CreateByteField (INBU, 0x03, INT1)
27779 CreateByteField (INBU, 0x04, INT2)
27780 CreateByteField (INBU, 0x05, INT3)
27781 CreateByteField (INBU, 0x06, INT4)
27782 CreateByteField (INBU, 0x07, INT5)
27783 Name (BIXP, Package (0x14)
27784 {
27785 Zero,
27786 One,
27787 0xFFFFFFFF,
27788 0xFFFFFFFF,
27789 One,
27790 0xFFFFFFFF,
27791 0x0A,
27792 0x04,
27793 Zero,
27794 0x00017318,
27795 0xFFFFFFFF,
27796 0xFFFFFFFF,
27797 0x88B8,
27798 0x61A8,
27799 One,
27800 One,
27801 "CP731923-01",
27802 "0000001",
27803 "LION",
27804 "FUJITSU"
27805 })
27806 Name (BSTP, Package (0x04)
27807 {
27808 Zero,
27809 0xFFFFFFFF,
27810 0xFFFFFFFF,
27811 0xFFFFFFFF
27812 })
27813 Method (_BIX, 0, NotSerialized) // _BIX: Battery Information Extended
27814 {
27815 If ((AVBL == One))
27816 {
27817 BUF2 = FG12 /* \_SB_.PCI0.I2C1.FG12 */
27818 If ((BSTS != One))
27819 {
27820 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
27821 BIXP [0x03] = Local1
27822 BCLP = Local1
27823 }
27824
27825 BUF2 = FG1E /* \_SB_.PCI0.I2C1.FG1E */
27826 If ((BSTS != One))
27827 {
27828 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
27829 BIXP [0x08] = Local1
27830 }
27831 }
27832
27833 BIXP [0x02] = DSCP /* \_SB_.PCI0.I2C1.BATC.DSCP */
27834 BIXP [0x05] = DSVO /* \_SB_.PCI0.I2C1.BATC.DSVO */
27835 Divide (DSCP, 0x0A, Local0, Local1)
27836 BIXP [0x06] = Local1
27837 Divide (DSCP, 0x14, Local0, Local1)
27838 BIXP [0x07] = Local1
27839 Return (BIXP) /* \_SB_.PCI0.I2C1.BATC.BIXP */
27840 }
27841
27842 Method (_BST, 0, NotSerialized) // _BST: Battery Status
27843 {
27844 Name (BUFF, Buffer (0x03)
27845 {
27846 0x00, 0x01, 0x00 // ...
27847 })
27848 CreateByteField (BUFF, Zero, BYAT)
27849 CreateByteField (BUFF, 0x02, DATA)
27850 Name (BUFW, Buffer (0x04)
27851 {
27852 0x00, 0x00, 0x00, 0x00 // ....
27853 })
27854 CreateByteField (BUFW, Zero, BSTW)
27855 CreateByteField (BUFW, One, SLEW)
27856 CreateWordField (BUFW, 0x02, WRDW)
27857 BUFW = FG0A /* \_SB_.PCI0.I2C1.FG0A */
27858 If ((AVBL == One))
27859 {
27860 ADBG ("CH PR")
27861 BUFW = FG40 /* \_SB_.PCI0.I2C1.FG40 */
27862 If ((BSTW != One))
27863 {
27864 Local0 = (WRDW >> 0x09)
27865 Local0 &= 0x03
27866 If (((Local0 == One) || (Local0 == 0x02)))
27867 {
27868 Local1 = 0x02
27869 }
27870
27871 If ((Local0 == Zero))
27872 {
27873 Local1 = One
27874 }
27875 Else
27876 {
27877 BUFW = FG0A /* \_SB_.PCI0.I2C1.FG0A */
27878 If ((BSTW != One))
27879 {
27880 Local0 = (WRDW >> 0x09)
27881 Local0 &= One
27882 If ((Local0 == One))
27883 {
27884 Local1 = Zero
27885 }
27886 }
27887 }
27888
27889 BSTP [Zero] = Local1
27890 }
27891
27892 BUF2 = FG14 /* \_SB_.PCI0.I2C1.FG14 */
27893 If ((BSTS != One))
27894 {
27895 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
27896 If ((Local1 & 0x8000))
27897 {
27898 Local1 = (0xFFFF - Local1)
27899 }
27900
27901 BSTP [One] = Local1
27902 }
27903
27904 BUF2 = FG10 /* \_SB_.PCI0.I2C1.FG10 */
27905 If ((BSTS != One))
27906 {
27907 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
27908 BSTP [0x02] = Local1
27909 }
27910
27911 BUF2 = FG08 /* \_SB_.PCI0.I2C1.FG08 */
27912 If ((BSTS != One))
27913 {
27914 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
27915 BSTP [0x03] = Local1
27916 }
27917
27918 BUF2 = FG12 /* \_SB_.PCI0.I2C1.FG12 */
27919 If ((BSTS != One))
27920 {
27921 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
27922 If ((Local1 != BCLP))
27923 {
27924 Notify (BATC, 0x81) // Information Change
27925 }
27926 }
27927 }
27928
27929 Return (BSTP) /* \_SB_.PCI0.I2C1.BATC.BSTP */
27930 }
27931
27932 Method (INTC, 0, NotSerialized)
27933 {
27934 ADBG ("INTC")
27935 Return (One)
27936 }
27937
27938 Method (INTF, 0, NotSerialized)
27939 {
27940 ADBG ("INTF")
27941 If ((AVBL == One))
27942 {
27943 BUF2 = FG0A /* \_SB_.PCI0.I2C1.FG0A */
27944 }
27945
27946 If ((BSTS != One))
27947 {
27948 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
27949 }
27950
27951 Return (One)
27952 }
27953
27954 Method (_BTP, 1, NotSerialized) // _BTP: Battery Trip Point
27955 {
27956 }
27957
27958 Method (_BTM, 1, NotSerialized) // _BTM: Battery Time
27959 {
27960 If ((Arg0 > 0x7530))
27961 {
27962 Return (Zero)
27963 }
27964
27965 If ((AVBL == One))
27966 {
27967 BUF2 = FG16 /* \_SB_.PCI0.I2C1.FG16 */
27968 If ((BSTS != One))
27969 {
27970 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
27971 If ((Arg0 == Zero))
27972 {
27973 Local2 = (Local1 >> 0x05)
27974 Local1 = (Local2 * 0x03)
27975 Local2 = (Local1 * 0x3C)
27976 Return (Local2)
27977 }
27978
27979 BUF2 = FG10 /* \_SB_.PCI0.I2C1.FG10 */
27980 If ((BSTS != One))
27981 {
27982 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
27983 Return (Local1)
27984 }
27985 }
27986 }
27987
27988 Return (0xFFFFFFFF)
27989 }
27990
27991 Method (_BCT, 1, NotSerialized) // _BCT: Battery Charge Time
27992 {
27993 If (((Arg0 > 0x64) || (Arg0 < One)))
27994 {
27995 Return (Zero)
27996 }
27997
27998 If ((AVBL == One))
27999 {
28000 BUF2 = FG10 /* \_SB_.PCI0.I2C1.FG10 */
28001 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
28002 If ((BSTS != One))
28003 {
28004 If ((Arg0 < Local1))
28005 {
28006 Return (Zero)
28007 }
28008
28009 RECT = Local1
28010 }
28011
28012 BUF2 = FG12 /* \_SB_.PCI0.I2C1.FG12 */
28013 If ((BSTS != One))
28014 {
28015 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
28016 BCLP = Local1
28017 }
28018
28019 BUF2 = FG14 /* \_SB_.PCI0.I2C1.FG14 */
28020 If ((BSTS != One))
28021 {
28022 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
28023 If ((Local1 & 0x8000))
28024 {
28025 Return (Zero)
28026 }
28027 }
28028
28029 Local0 = (BCLP * Arg0)
28030 Local0 -= RECT /* \_SB_.PCI0.I2C1.BATC.RECT */
28031 Local0 *= 0x0E10
28032 Divide (Local0, Local1, Local2, Local3)
28033 Return (Local3)
28034 }
28035
28036 Return (0xFFFFFFFF)
28037 }
28038
28039 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
28040 {
28041 If ((Arg0 == ToUUID ("4c2067e3-887d-475c-9720-4af1d3ed602e") /* Battery Thermal Limit */))
28042 {
28043 If ((Arg2 == 0x02))
28044 {
28045 If ((Arg1 == Zero))
28046 {
28047 Return (Buffer (One)
28048 {
28049 0x00 // .
28050 })
28051 }
28052 }
28053 }
28054
28055 Return (Zero)
28056 }
28057
28058 Method (_STA, 0, NotSerialized) // _STA: Status
28059 {
28060 If ((BDID == One))
28061 {
28062 Return (Zero)
28063 }
28064
28065 If ((((BDID == 0x08) || (BDID == 0x0A)) || (BDID == 0x09)))
28066 {
28067 Return (Zero)
28068 }
28069
28070 If ((OSID != One))
28071 {
28072 Return (Zero)
28073 }
28074
28075 If ((AVBL == One))
28076 {
28077 BUF2 = FG10 /* \_SB_.PCI0.I2C1.FG10 */
28078 If ((BSTS != Zero))
28079 {
28080 Return (Zero)
28081 }
28082 }
28083
28084 Return (0x1F)
28085 }
28086
28087 Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
28088 {
28089 Return (_SB) /* \_SB_ */
28090 }
28091
28092 Method (PSOC, 0, NotSerialized)
28093 {
28094 Name (BUFF, Buffer (0x03)
28095 {
28096 0x00, 0x01, 0x00 // ...
28097 })
28098 CreateByteField (BUFF, Zero, BYAT)
28099 CreateByteField (BUFF, 0x02, DATA)
28100 Name (BUF2, Buffer (0x04)
28101 {
28102 0x00, 0x00, 0x00, 0x00 // ....
28103 })
28104 CreateByteField (BUF2, Zero, BSTS)
28105 CreateByteField (BUF2, One, SLEN)
28106 CreateWordField (BUF2, 0x02, WRD1)
28107 If ((AVBL == One))
28108 {
28109 BUF2 = FG12 /* \_SB_.PCI0.I2C1.FG12 */
28110 If ((WRD1 == Zero))
28111 {
28112 MCUR = One
28113 Sleep (0x01F4)
28114 MCUR = Zero
28115 Return (Zero)
28116 }
28117
28118 If ((BMUH == One))
28119 {
28120 BUF2 = FG0A /* \_SB_.PCI0.I2C1.FG0A */
28121 If ((BSTS != One))
28122 {
28123 If ((WRD1 & 0x08))
28124 {
28125 BUF2 = FG20 /* \_SB_.PCI0.I2C1.FG20 */
28126 If ((BSTS != One))
28127 {
28128 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.PSOC.WRD1 */
28129 If ((Local1 > 0x06))
28130 {
28131 If ((Local1 < 0x1E))
28132 {
28133 BUF2 = FG40 /* \_SB_.PCI0.I2C1.FG40 */
28134 If ((BSTS != One))
28135 {
28136 Local2 = (WRD1 >> 0x09)
28137 Local2 &= 0x03
28138 If (((Local2 == One) || (Local2 == 0x02)))
28139 {
28140 If (CondRefOf (\_PR.CPU0._PPC, Local1))
28141 {
28142 \_PR.CPU0._PPC = One
28143 PNOT ()
28144 }
28145 }
28146 ElseIf (CondRefOf (\_PR.CPU0._PPC, Local1))
28147 {
28148 If ((\_PR.CPU0._PPC != Zero))
28149 {
28150 \_PR.CPU0._PPC = Zero
28151 PNOT ()
28152 }
28153 }
28154 }
28155 }
28156 ElseIf (CondRefOf (\_PR.CPU0._PPC, Local1))
28157 {
28158 If ((\_PR.CPU0._PPC != Zero))
28159 {
28160 \_PR.CPU0._PPC = Zero
28161 PNOT ()
28162 }
28163 }
28164 }
28165 ElseIf (CondRefOf (\_PR.CPU0._PPC, Local1))
28166 {
28167 If ((\_PR.CPU0._PPC != PSTM))
28168 {
28169 \_PR.CPU0._PPC = PSTM /* External reference */
28170 PNOT ()
28171 }
28172 }
28173 }
28174 }
28175 ElseIf (CondRefOf (\_PR.CPU0._PPC, Local1))
28176 {
28177 If ((\_PR.CPU0._PPC != Zero))
28178 {
28179 \_PR.CPU0._PPC = Zero
28180 PNOT ()
28181 }
28182 }
28183 }
28184 }
28185
28186 BUF2 = SOCR /* \_SB_.PCI0.I2C1.SOCR */
28187 If ((BSTS != One))
28188 {
28189 Local0 = WRD1 /* \_SB_.PCI0.I2C1.BATC.PSOC.WRD1 */
28190 Local1 = (Local0 & 0xFF)
28191 }
28192
28193 Notify (BATC, 0x80) // Status Change
28194 Return (Local1)
28195 }
28196
28197 Return (Zero)
28198 }
28199
28200 Method (PMAX, 0, NotSerialized)
28201 {
28202 If ((AVBL == One))
28203 {
28204 BUF2 = MXCU /* \_SB_.PCI0.I2C1.MXCU */
28205 If ((BSTS != One))
28206 {
28207 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
28208 If ((Local1 & 0x8000))
28209 {
28210 Local0 = (Local1 >> 0x08)
28211 Local1 = (Local0 & 0xFF)
28212 Local0 = (0xFFFF - Local1)
28213 Local1 = (Local0 * 0x04)
28214 }
28215 Else
28216 {
28217 Local0 = (Local1 >> 0x08)
28218 Local2 = (Local0 & 0xFF)
28219 Local1 = (Local2 * 0x04)
28220 }
28221
28222 Divide (Local1, 0x0A, Local0, Local2)
28223 Divide (Local2, FGDV, Local0, Local1)
28224 Local2 = (Local1 * 0x03E8)
28225 Local1 = (DSVO * Local2)
28226 Return (Local1)
28227 }
28228 }
28229
28230 Return (Zero)
28231 }
28232
28233 Method (VMIN, 0, NotSerialized)
28234 {
28235 Return (0x0DAC)
28236 }
28237
28238 Method (APWR, 0, NotSerialized)
28239 {
28240 Return (0x0365C040)
28241 }
28242
28243 Method (NPWR, 0, NotSerialized)
28244 {
28245 Local3 = APWR ()
28246 If ((AVBL == One))
28247 {
28248 BUF2 = FG14 /* \_SB_.PCI0.I2C1.FG14 */
28249 If ((BSTS != One))
28250 {
28251 Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
28252 If ((Local1 & 0x8000))
28253 {
28254 Local1 = (0xFFFF - Local1)
28255 }
28256
28257 AVCU = Local1
28258 BUF2 = FG08 /* \_SB_.PCI0.I2C1.FG08 */
28259 If ((BSTS != One))
28260 {
28261 Local2 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
28262 }
28263
28264 Local1 = (Local2 * AVCU) /* \_SB_.PCI0.I2C1.BATC.AVCU */
28265 Local0 = (Local3 - Local1)
28266 Return (Local0)
28267 }
28268 }
28269
28270 Return (Local0)
28271 }
28272
28273 Method (PSRC, 0, Serialized)
28274 {
28275 Name (BUF2, Buffer (0x04)
28276 {
28277 0x00, 0x00, 0x00, 0x00 // ....
28278 })
28279 CreateByteField (BUF2, Zero, BSTS)
28280 CreateByteField (BUF2, One, SLEN)
28281 CreateWordField (BUF2, 0x02, WRD1)
28282 If ((AVBL == One))
28283 {
28284 BUF2 = FG40 /* \_SB_.PCI0.I2C1.FG40 */
28285 If ((BSTS != One))
28286 {
28287 Local0 = (WRD1 >> 0x0F)
28288 Local0 &= One
28289 If ((Local0 == Zero))
28290 {
28291 Return (Zero)
28292 }
28293
28294 If ((Local0 == One))
28295 {
28296 Return (One)
28297 }
28298 }
28299 }
28300
28301 Return (One)
28302 }
28303
28304 Method (CTYP, 0, NotSerialized)
28305 {
28306 Return (0x02)
28307 }
28308
28309 Method (ARTG, 0, NotSerialized)
28310 {
28311 Return (0x0365C040)
28312 }
28313 }
28314 }
28315
28316 Scope (_SB.PCI0.I2C7)
28317 {
28318 Name (AVBL, Zero)
28319 Method (_REG, 2, NotSerialized) // _REG: Region Availability
28320 {
28321 If ((Arg0 == 0x09))
28322 {
28323 AVBL = Arg1
28324 }
28325 }
28326
28327 Device (WIDR)
28328 {
28329 Name (_HID, "INT33FE" /* XPOWER Battery Device */) // _HID: Hardware ID
28330 Name (_CID, "INT33FE" /* XPOWER Battery Device */) // _CID: Compatible ID
28331 Name (_DDN, "WC PMIC Battery Device") // _DDN: DOS Device Name
28332 Name (BCCC, 0x80)
28333 Name (BCCE, One)
28334 Name (OTGS, Zero)
28335 Name (CHPR, One)
28336 Name (FGDV, 0x0A)
28337 Name (BCIL, 0x65)
28338 Name (BCVF, 0x93)
28339 Name (BCFV, 0xED)
28340 Name (BCCH, 0x38)
28341 Name (BCST, 0x05)
28342 Name (BCPE, 0x74)
28343 Name (BCCL, 0xFFFFFFFF)
28344 Name (BCLP, 0x1004)
28345 Name (DSVO, 0x0EA6)
28346 Name (BTPC, Zero)
28347 Name (AVCU, Zero)
28348 Name (BSTP, Package (0x04)
28349 {
28350 Zero,
28351 0xFFFFFFFF,
28352 0xFFFFFFFF,
28353 0xFFFFFFFF
28354 })
28355 Name (_DEP, Package (0x05) // _DEP: Dependencies
28356 {
28357 I2C7,
28358 PMI5,
28359 I2C1,
28360 GPO3,
28361 MBID
28362 })
28363 Name (RBUF, ResourceTemplate ()
28364 {
28365 I2cSerialBusV2 (0x005E, ControllerInitiated, 0x000186A0,
28366 AddressingMode7Bit, "\\_SB.PCI0.I2C7",
28367 0x00, ResourceConsumer, , Exclusive,
28368 )
28369 I2cSerialBusV2 (0x0036, ControllerInitiated, 0x000186A0,
28370 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
28371 0x00, ResourceConsumer, , Exclusive,
28372 )
28373 I2cSerialBusV2 (0x0022, ControllerInitiated, 0x00061A80,
28374 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
28375 0x00, ResourceConsumer, , Exclusive,
28376 )
28377 I2cSerialBusV2 (0x0054, ControllerInitiated, 0x00061A80,
28378 AddressingMode7Bit, "\\_SB.PCI0.I2C1",
28379 0x00, ResourceConsumer, , Exclusive,
28380 )
28381 GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
28382 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
28383 )
28384 { // Pin list
28385 0x0012
28386 }
28387 GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
28388 "\\_SB.GPO1", 0x00, ResourceConsumer, ,
28389 )
28390 { // Pin list
28391 0x0005
28392 }
28393 GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
28394 "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
28395 )
28396 { // Pin list
28397 0x0013
28398 }
28399 })
28400 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
28401 {
28402 Return (RBUF) /* \_SB_.PCI0.I2C7.WIDR.RBUF */
28403 }
28404
28405 Method (GETM, 0, NotSerialized)
28406 {
28407 Return (UBCB) /* \UBCB */
28408 }
28409
28410 Method (_STA, 0, NotSerialized) // _STA: Status
28411 {
28412 If ((OSID == One))
28413 {
28414 If (((BDID == 0x09) || (BDID == 0x0A)))
28415 {
28416 Return (0x0F)
28417 }
28418 }
28419
28420 Return (Zero)
28421 }
28422
28423 OperationRegion (BMOP, 0x9E, Zero, 0x0100)
28424 Field (BMOP, DWordAcc, NoLock, Preserve)
28425 {
28426 SOC, 32,
28427 FCCP, 32,
28428 CHST, 32,
28429 RMCP, 32,
28430 VOLT, 32,
28431 BATP, 32,
28432 SRP0, 32,
28433 STYP, 32,
28434 CHGC, 32,
28435 STPC, 32,
28436 GADC, 32,
28437 TTEM, 32,
28438 TTCH, 32,
28439 CYCL, 32,
28440 BTP, 32,
28441 DPCU, 32,
28442 DSCP, 32,
28443 CHEN, 32
28444 }
28445
28446 Name (AVBL, Zero)
28447 Method (_REG, 2, NotSerialized) // _REG: Region Availability
28448 {
28449 If ((Arg0 == 0x9E))
28450 {
28451 AVBL = Arg1
28452 }
28453 }
28454
28455 Method (DPTU, 0, NotSerialized)
28456 {
28457 ADBG ("DPTU WIDR")
28458 If ((AVBL == One))
28459 {
28460 DPCU = BCCC /* \_SB_.PCI0.I2C7.WIDR.BCCC */
28461 CHEN = BCCE /* \_SB_.PCI0.I2C7.WIDR.BCCE */
28462 }
28463
28464 Return (One)
28465 }
28466
28467 Method (SBTP, 0, NotSerialized)
28468 {
28469 ADBG ("SBTP WIDR")
28470 If (CondRefOf (\_SB.PCI0.I2C7.WIDR, Local1))
28471 {
28472 Local0 = ^^PMI5.GET (One, 0x6E, 0x1E)
28473 Local0 >>= 0x03
28474 Local0 &= 0x03
28475 If ((Local0 != One))
28476 {
28477 Notify (ADP1, 0x80) // Status Change
28478 }
28479 }
28480
28481 If (CondRefOf (\_SB.DPTF, Local3))
28482 {
28483 ADBG ("SBTP NOTIFY DPTF 86")
28484 Notify (DPTF, 0x86) // Device-Specific
28485 Notify (TCHG, 0x80) // Status Change
28486 }
28487
28488 Return (One)
28489 }
28490
28491 Method (PTYP, 0, NotSerialized)
28492 {
28493 If ((PMID == One))
28494 {
28495 Return (0x06)
28496 }
28497
28498 If ((PMID == 0x02))
28499 {
28500 Return (0x05)
28501 }
28502
28503 If ((PMID == 0x03))
28504 {
28505 Return (0x04)
28506 }
28507
28508 Return (Zero)
28509 }
28510
28511 Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
28512 {
28513 Return (_SB) /* \_SB_ */
28514 }
28515
28516 Method (PSOC, 0, NotSerialized)
28517 {
28518 ADBG ("PSOC")
28519 If ((AVBL == One))
28520 {
28521 Local1 = WIDR /* \_SB_.PCI0.I2C7.WIDR */
28522 Return (Local1)
28523 }
28524
28525 Return (Zero)
28526 }
28527
28528 Method (PMAX, 0, NotSerialized)
28529 {
28530 ADBG ("PMAX")
28531 If ((AVBL == One))
28532 {
28533 Local1 = FCCP /* \_SB_.PCI0.I2C7.WIDR.FCCP */
28534 Return (Local1)
28535 }
28536
28537 Return (Zero)
28538 }
28539
28540 Method (VMIN, 0, NotSerialized)
28541 {
28542 Return (0x0DAC)
28543 }
28544
28545 Method (APWR, 0, NotSerialized)
28546 {
28547 Return (0x0365C040)
28548 }
28549
28550 Method (DSM2, 0, NotSerialized)
28551 {
28552 Notify (UBTC, 0x80) // Status Change
28553 Return (0x0F)
28554 }
28555
28556 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
28557 {
28558 If ((Arg0 == ToUUID ("aa7bcf77-263f-4e28-8e16-9cac5c610928")))
28559 {
28560 If ((Arg2 == One))
28561 {
28562 Return (Zero)
28563 }
28564
28565 If ((Arg2 == 0x02))
28566 {
28567 Return (0x08)
28568 }
28569
28570 If ((Arg2 == 0x03))
28571 {
28572 Return (0xC0)
28573 }
28574
28575 If ((Arg2 == 0x04))
28576 {
28577 Return (0x06)
28578 }
28579
28580 If ((Arg2 == 0x05))
28581 {
28582 Return (0x02)
28583 }
28584
28585 If ((Arg2 == 0x06))
28586 {
28587 Return (0x05)
28588 }
28589
28590 If ((Arg2 == 0x07))
28591 {
28592 Return (Zero)
28593 }
28594
28595 If ((Arg2 == 0x08))
28596 {
28597 Return (0x07)
28598 }
28599
28600 If ((Arg2 == 0x09))
28601 {
28602 Return (0xA0)
28603 }
28604
28605 If ((Arg2 == 0x0A))
28606 {
28607 Return (0xD6)
28608 }
28609
28610 Return (0xFFFFFFFF)
28611 }
28612 }
28613
28614 Method (PSRC, 0, NotSerialized)
28615 {
28616 If ((AVBL == One))
28617 {
28618 Local0 = STYP /* \_SB_.PCI0.I2C7.WIDR.STYP */
28619 If ((Local0 == Zero))
28620 {
28621 Return (Zero)
28622 }
28623
28624 If ((Local0 == One))
28625 {
28626 Return (One)
28627 }
28628
28629 If ((Local0 == 0x02))
28630 {
28631 Return (0x02)
28632 }
28633
28634 If ((Local0 == 0x03))
28635 {
28636 Return (0x03)
28637 }
28638
28639 If ((Local0 == 0x04))
28640 {
28641 Return (0x04)
28642 }
28643
28644 If ((Local0 == 0x05))
28645 {
28646 Return (0x05)
28647 }
28648 }
28649
28650 Return (One)
28651 }
28652
28653 Method (GPTG, 1, Serialized)
28654 {
28655 If ((^^^^GPO3.AMMR == One))
28656 {
28657 Local0 = ^^^^GPO3.FGGP /* \_SB_.GPO3.FGGP */
28658 }
28659
28660 ADBG ("GPO PAD BEFORE")
28661 ADBG (Local0)
28662 Local0 |= 0x02
28663 ADBG ("GPO PAD AFTER")
28664 ADBG (Local0)
28665 If ((^^^^GPO3.AMMR == One))
28666 {
28667 ^^^^GPO3.FGGP = Local0
28668 }
28669 }
28670
28671 Method (USBH, 1, Serialized)
28672 {
28673 If ((Arg0 == One))
28674 {
28675 Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
28676 Local0 |= One
28677 ADBG (Local0)
28678 ^^PMI5.SET (One, 0x5E, 0x07, Local0)
28679 CDRH (Zero)
28680 Local0 = ^^PMI5.GET (One, 0x5E, 0x17)
28681 Local0 |= 0x40
28682 ^^PMI5.SET (One, 0x5E, 0x17, Local0)
28683 }
28684 ElseIf ((Arg0 == 0x02))
28685 {
28686 ADBG ("CDP/SDP")
28687 Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
28688 Local0 |= One
28689 ^^PMI5.SET (One, 0x5E, 0x07, Local0)
28690 CDRD (One)
28691 }
28692 ElseIf ((Arg0 == 0x03))
28693 {
28694 Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
28695 Local0 |= One
28696 ADBG (Local0)
28697 ^^PMI5.SET (One, 0x5E, 0x07, Local0)
28698 CDRH (Zero)
28699 }
28700 Else
28701 {
28702 ADBG ("DCP/no cable is connected")
28703 Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
28704 Local0 &= 0xFE
28705 ^^PMI5.SET (One, 0x5E, 0x07, Local0)
28706 CDRD (Zero)
28707 }
28708
28709 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28710 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
28711 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
28712 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
28713 ADBG ("B4 Set")
28714 ADBG (Local0)
28715 Local0 &= 0xCF
28716 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28717 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
28718 ^^PMI5.SET (One, 0x5E, 0x27, Local0)
28719 ^^PMI5.SET (One, 0x5E, 0x24, One)
28720 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28721 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
28722 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
28723 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
28724 ADBG ("After Set")
28725 ADBG ("REG05")
28726 ADBG (Local0)
28727 ADBG ("USB Host")
28728 }
28729
28730 Method (BATD, 0, NotSerialized)
28731 {
28732 ADBG ("BATD")
28733 If ((AVBL == One))
28734 {
28735 ADBG ("BATD")
28736 Local0 = CHST /* \_SB_.PCI0.I2C7.WIDR.CHST */
28737 Local0 &= 0x0F
28738 If ((Local0 == 0x02))
28739 {
28740 Local1 = 0x02
28741 }
28742
28743 If ((Local0 == One))
28744 {
28745 Local1 = One
28746 }
28747
28748 If ((Local0 == 0x08))
28749 {
28750 Local1 = Zero
28751 }
28752
28753 BSTP [Zero] = Local1
28754 BSTP [One] = CHGC /* \_SB_.PCI0.I2C7.WIDR.CHGC */
28755 BSTP [0x02] = RMCP /* \_SB_.PCI0.I2C7.WIDR.RMCP */
28756 BSTP [0x03] = VOLT /* \_SB_.PCI0.I2C7.WIDR.VOLT */
28757 DPCU = BCCC /* \_SB_.PCI0.I2C7.WIDR.BCCC */
28758 }
28759
28760 Return (BSTP) /* \_SB_.PCI0.I2C7.WIDR.BSTP */
28761 }
28762 }
28763
28764 Device (BATC)
28765 {
28766 Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID
28767 Name (_UID, One) // _UID: Unique ID
28768 Name (BCCE, One)
28769 Name (OTGS, Zero)
28770 Name (HSMD, Zero)
28771 Name (CHPR, One)
28772 Name (FGDV, 0x0A)
28773 Name (RECT, Zero)
28774 Name (BCCL, 0xFFFFFFFF)
28775 Name (BCLP, 0x1004)
28776 Name (DSCP, 0x1023)
28777 Name (DSVO, 0x0EA6)
28778 Name (BTPC, Zero)
28779 Name (AVCU, Zero)
28780 Name (BQCC, 0x50)
28781 Name (TSHV, Zero)
28782 Name (BCCC, 0x50)
28783 Name (_DEP, Package (0x03) // _DEP: Dependencies
28784 {
28785 I2C1,
28786 I2C7,
28787 PMI5
28788 })
28789 Name (BUFF, Buffer (0x03)
28790 {
28791 0x00, 0x01, 0x00 // ...
28792 })
28793 CreateByteField (BUFF, Zero, BYAT)
28794 CreateByteField (BUFF, 0x02, DATA)
28795 Name (BUF1, Buffer (0x06)
28796 {
28797 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ......
28798 })
28799 CreateByteField (BUF1, Zero, BSTA)
28800 CreateByteField (BUF1, One, BLEN)
28801 CreateDWordField (BUF1, 0x02, DAT1)
28802 Name (BUF2, Buffer (0x04)
28803 {
28804 0x00, 0x00, 0x00, 0x00 // ....
28805 })
28806 CreateByteField (BUF2, Zero, BSTS)
28807 CreateByteField (BUF2, One, SLEN)
28808 CreateWordField (BUF2, 0x02, WRD1)
28809 Name (INBU, Buffer (0x08)
28810 {
28811 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........
28812 })
28813 CreateByteField (INBU, Zero, INST)
28814 CreateByteField (INBU, One, INLN)
28815 CreateByteField (INBU, 0x02, INT0)
28816 CreateByteField (INBU, 0x03, INT1)
28817 CreateByteField (INBU, 0x04, INT2)
28818 CreateByteField (INBU, 0x05, INT3)
28819 CreateByteField (INBU, 0x06, INT4)
28820 CreateByteField (INBU, 0x07, INT5)
28821 Name (BIXP, Package (0x14)
28822 {
28823 Zero,
28824 One,
28825 0xFFFFFFFF,
28826 0xFFFFFFFF,
28827 One,
28828 0xFFFFFFFF,
28829 0x0A,
28830 0x04,
28831 Zero,
28832 0x00017318,
28833 0xFFFFFFFF,
28834 0xFFFFFFFF,
28835 0x88B8,
28836 0x61A8,
28837 One,
28838 One,
28839 "CP695045-01",
28840 "0000001",
28841 "LION",
28842 "FUJITSU"
28843 })
28844 Name (BSTP, Package (0x04)
28845 {
28846 Zero,
28847 0xFFFFFFFF,
28848 0xFFFFFFFF,
28849 0xFFFFFFFF
28850 })
28851 Method (_BIX, 0, NotSerialized) // _BIX: Battery Information Extended
28852 {
28853 If ((^^^I2C1.AVBL == One))
28854 {
28855 BUF2 = ^^^I2C1.FG10 /* \_SB_.PCI0.I2C1.FG10 */
28856 If ((BSTS != One))
28857 {
28858 Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
28859 Local2 = (Local1 * 0x05)
28860 Divide (Local2, FGDV, Local0, Local1)
28861 BIXP [0x03] = Local1
28862 }
28863 }
28864
28865 BIXP [0x02] = DSCP /* \_SB_.PCI0.I2C7.BATC.DSCP */
28866 BIXP [0x05] = DSVO /* \_SB_.PCI0.I2C7.BATC.DSVO */
28867 Divide (DSCP, 0x0A, Local0, Local1)
28868 BIXP [0x06] = Local1
28869 Divide (DSCP, 0x14, Local0, Local1)
28870 BIXP [0x07] = Local1
28871 Return (BIXP) /* \_SB_.PCI0.I2C7.BATC.BIXP */
28872 }
28873
28874 Method (_BST, 0, NotSerialized) // _BST: Battery Status
28875 {
28876 Name (RGND, One)
28877 If ((^^PMI5.AVBL == One))
28878 {
28879 Local0 = ^^PMI5.GET (One, 0x6E, 0x1E)
28880 Local0 >>= 0x03
28881 Local0 &= 0x03
28882 If ((Local0 != One))
28883 {
28884 RGND = Zero
28885 }
28886
28887 If ((RGND == Zero))
28888 {
28889 If ((TSHV == Zero))
28890 {
28891 TSHV = One
28892 ^^PMI5.SET (One, 0x5E, 0x20, 0x02)
28893 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28894 ^^PMI5.SET (One, 0x5E, 0x26, One)
28895 ^^PMI5.SET (One, 0x5E, 0x27, 0x19)
28896 ^^PMI5.SET (One, 0x5E, 0x24, One)
28897 ADBG ("Min Sys vol")
28898 }
28899
28900 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28901 ^^PMI5.SET (One, 0x5E, 0x26, 0x04)
28902 ^^PMI5.SET (One, 0x5E, 0x27, 0xD6)
28903 ^^PMI5.SET (One, 0x5E, 0x24, One)
28904 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28905 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
28906 ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
28907 ^^PMI5.SET (One, 0x5E, 0x24, One)
28908 Local0 = ^^PMI5.GET (One, 0x5E, 0x16)
28909 Local2 = (Local0 | 0xA8)
28910 ^^PMI5.SET (One, 0x5E, 0x16, Local2)
28911 Local0 = ^^PMI5.GET (One, 0x5E, 0x16)
28912 ADBG ("WC16")
28913 ADBG (Local0)
28914 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28915 ^^PMI5.SET (One, 0x5E, 0x26, 0x09)
28916 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
28917 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
28918 If ((Local0 != Zero))
28919 {
28920 ADBG ("FAULT OCCURED")
28921 ADBG (Local0)
28922 Local0 = PSRC ()
28923 }
28924
28925 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28926 ^^PMI5.SET (One, 0x5E, 0x26, One)
28927 ^^PMI5.SET (One, 0x5E, 0x27, 0x1B)
28928 ^^PMI5.SET (One, 0x5E, 0x24, One)
28929 }
28930
28931 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28932 ^^PMI5.SET (One, 0x5E, 0x26, One)
28933 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
28934 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
28935 ADBG ("CH REG01")
28936 ADBG (Local0)
28937 If ((RGND == Zero))
28938 {
28939 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28940 ^^PMI5.SET (One, 0x5E, 0x26, 0x02)
28941 ^^PMI5.SET (One, 0x5E, 0x27, 0x42)
28942 ^^PMI5.SET (One, 0x5E, 0x24, One)
28943 }
28944
28945 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28946 ^^PMI5.SET (One, 0x5E, 0x26, 0x09)
28947 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
28948 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
28949 ADBG ("REG09")
28950 ADBG (Local0)
28951 CHPR = Zero
28952 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28953 ^^PMI5.SET (One, 0x5E, 0x26, 0x08)
28954 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
28955 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
28956 Local0 >>= 0x04
28957 Local0 &= 0x03
28958 If (((Local0 == One) || (Local0 == 0x02)))
28959 {
28960 Local1 = 0x02
28961 }
28962
28963 If ((Local0 == Zero))
28964 {
28965 Local1 = One
28966 }
28967
28968 If ((Local0 == 0x03))
28969 {
28970 Local1 = Zero
28971 }
28972
28973 BSTP [Zero] = Local1
28974 BUF2 = ^^^I2C1.FG0A /* \_SB_.PCI0.I2C1.FG0A */
28975 If ((BSTS != One))
28976 {
28977 Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
28978 If ((Local1 & 0x8000))
28979 {
28980 Local1 = (0xFFFF - Local1)
28981 }
28982
28983 Divide (Local1, FGDV, Local0, Local2)
28984 Local1 = (Local2 * 0x9C)
28985 Divide (Local1, 0x64, Local0, Local2)
28986 BSTP [One] = Local2
28987 }
28988
28989 Local2 = 0x18
28990 Local1 = (Local2 << 0x08)
28991 WRD1 = Local1
28992 ^^^I2C1.THRM = BUF2 /* \_SB_.PCI0.I2C7.BATC.BUF2 */
28993 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
28994 ^^PMI5.SET (One, 0x5E, 0x26, 0x02)
28995 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
28996 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
28997 Local1 = BQCC /* \_SB_.PCI0.I2C7.BATC.BQCC */
28998 Local3 = Local1
28999 Local2 = (Local0 & 0xFC)
29000 Local3 &= 0xFC
29001 If ((Local2 != Local3))
29002 {
29003 Local2 = (Local0 & 0x03)
29004 Local1 &= 0xFC
29005 Local0 = (Local2 | Local1)
29006 }
29007
29008 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29009 ^^PMI5.SET (One, 0x5E, 0x26, One)
29010 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29011 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29012 Local1 = (Local0 & 0xCF)
29013 If ((BCCE == One))
29014 {
29015 Local0 = (Local1 | 0x10)
29016 If ((RGND == Zero))
29017 {
29018 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29019 ^^PMI5.SET (One, 0x5E, 0x26, One)
29020 ^^PMI5.SET (One, 0x5E, 0x27, Local0)
29021 ^^PMI5.SET (One, 0x5E, 0x24, One)
29022 }
29023 }
29024 ElseIf ((RGND == Zero))
29025 {
29026 Local0 = (Local1 | Zero)
29027 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29028 ^^PMI5.SET (One, 0x5E, 0x26, One)
29029 ^^PMI5.SET (One, 0x5E, 0x27, Local0)
29030 ^^PMI5.SET (One, 0x5E, 0x24, One)
29031 }
29032 }
29033
29034 Return (BSTP) /* \_SB_.PCI0.I2C7.BATC.BSTP */
29035 }
29036
29037 Method (INTC, 0, NotSerialized)
29038 {
29039 ADBG ("INTC")
29040 Name (RGND, One)
29041 Local0 = ^^PMI5.GET (One, 0x6E, 0x1E)
29042 Local0 >>= 0x03
29043 Local0 &= 0x03
29044 If ((Local0 != One))
29045 {
29046 RGND = Zero
29047 }
29048
29049 If ((RGND == Zero))
29050 {
29051 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29052 ^^PMI5.SET (One, 0x5E, 0x26, 0x09)
29053 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29054 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29055 If ((Local0 != Zero))
29056 {
29057 ADBG ("FAULT OCCURED")
29058 ADBG (Local0)
29059 }
29060
29061 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29062 ^^PMI5.SET (One, 0x5E, 0x26, 0x04)
29063 ^^PMI5.SET (One, 0x5E, 0x27, 0xD6)
29064 ^^PMI5.SET (One, 0x5E, 0x24, One)
29065 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29066 ^^PMI5.SET (One, 0x5E, 0x26, One)
29067 ^^PMI5.SET (One, 0x5E, 0x27, 0x19)
29068 ^^PMI5.SET (One, 0x5E, 0x24, One)
29069 }
29070
29071 Local0 = PSRC ()
29072 If ((((Local0 == One) || (Local0 == 0x02)) || ((Local0 ==
29073 0x03) || (Local0 == 0x04))))
29074 {
29075 ^^PMI5.ACDC = One
29076 }
29077 Else
29078 {
29079 ^^PMI5.ACDC = Zero
29080 }
29081
29082 If ((Local0 == One))
29083 {
29084 HSMD = One
29085 }
29086 ElseIf ((Local0 == 0x02))
29087 {
29088 HSMD = Zero
29089 }
29090 ElseIf ((Local0 == 0x03))
29091 {
29092 HSMD = Zero
29093 }
29094 ElseIf ((Local0 == 0x04))
29095 {
29096 HSMD = Zero
29097 }
29098 ElseIf ((Local0 == 0x05))
29099 {
29100 HSMD = Zero
29101 }
29102 ElseIf ((Local0 == Zero))
29103 {
29104 CHPR = One
29105 HSMD = Zero
29106 }
29107
29108 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29109 ^^PMI5.SET (One, 0x5E, 0x26, 0x08)
29110 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29111 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29112 Local1 = (Local0 & 0xC0)
29113 If ((Local1 == 0xC0))
29114 {
29115 If ((OTGS != One))
29116 {
29117 OTGS = One
29118 }
29119 }
29120 ElseIf ((OTGS != Zero))
29121 {
29122 OTGS = Zero
29123 }
29124
29125 If ((HSMD == Zero))
29126 {
29127 Local0 = ^^PMI5.GET (One, 0x5E, 0x29)
29128 Local1 = (Local0 >> 0x02)
29129 Local1 &= 0x0F
29130 If ((Local1 == 0x02))
29131 {
29132 ADBG ("DCP Detected")
29133 CDRD (Zero)
29134 }
29135 Else
29136 {
29137 ADBG ("None DCP Charger")
29138 Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
29139 Local0 |= One
29140 ^^PMI5.SET (One, 0x5E, 0x07, Local0)
29141 CDRD (One)
29142 }
29143 }
29144 Else
29145 {
29146 Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
29147 Local0 &= 0xFE
29148 ^^PMI5.SET (One, 0x5E, 0x07, Local0)
29149 ADBG ("Host Mode")
29150 ADBG (Local0)
29151 Local0 = ^^PMI5.GET (One, 0x6E, 0x1E)
29152 Local0 >>= 0x03
29153 Local0 &= 0x03
29154 If ((Local0 == Zero))
29155 {
29156 Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
29157 Local0 |= One
29158 ^^PMI5.SET (One, 0x5E, 0x07, Local0)
29159 Local0 = ^^PMI5.GET (One, 0x5E, 0x17)
29160 Local0 |= 0x40
29161 ^^PMI5.SET (One, 0x5E, 0x17, Local0)
29162 CDRH (One)
29163 }
29164 Else
29165 {
29166 CDRH (Zero)
29167 }
29168 }
29169
29170 If ((CHPR == One))
29171 {
29172 Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
29173 Local0 &= 0xFE
29174 ^^PMI5.SET (One, 0x5E, 0x07, Local0)
29175 If ((DSFG == One))
29176 {
29177 CDRH (Zero)
29178 }
29179 Else
29180 {
29181 CDRD (Zero)
29182 }
29183
29184 HSMD = One
29185 ^^PMI5.SET (One, 0x5E, 0x1F, 0x18)
29186 Return (One)
29187 }
29188
29189 ^^PMI5.SET (One, 0x5E, 0x1F, 0x1B)
29190 Return (One)
29191 }
29192
29193 Method (INTF, 0, NotSerialized)
29194 {
29195 ADBG ("INTF")
29196 BUF2 = ^^^I2C1.FG00 /* \_SB_.PCI0.I2C1.FG00 */
29197 If ((BSTS != One))
29198 {
29199 Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
29200 ADBG ("FG00")
29201 ADBG (Local1)
29202 }
29203
29204 Return (One)
29205 }
29206
29207 Method (CHCU, 1, NotSerialized)
29208 {
29209 Local0 = Arg0
29210 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29211 ^^PMI5.SET (One, 0x5E, 0x26, Zero)
29212 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29213 Local1 = ^^PMI5.GET (One, 0x5E, 0x28)
29214 Local2 = (Local0 & 0x07)
29215 Local1 &= 0x07
29216 If ((Local1 != Local2))
29217 {
29218 Local2 = (Local0 & 0x07)
29219 Local1 = (DATA & 0xF8)
29220 Local0 = (Local1 | Local2)
29221 }
29222 }
29223
29224 Method (_BTP, 1, NotSerialized) // _BTP: Battery Trip Point
29225 {
29226 BTPC = Arg0
29227 If ((^^^I2C1.AVBL == One))
29228 {
29229 ADBG ("BTP")
29230 DAT1 = Arg0
29231 BLEN = 0x04
29232 BUF2 = ^^^I2C1.SOCR /* \_SB_.PCI0.I2C1.SOCR */
29233 If ((BSTS != One))
29234 {
29235 Local0 = (WRD1 >> 0x08)
29236 Local1 = (Local0 & 0xFF)
29237 }
29238
29239 Local2 = (Local1 + One)
29240 Local3 = (Local1 - One)
29241 Local1 = (Local2 << 0x08)
29242 Local2 = (Local1 | Local3)
29243 WRD1 = Local2
29244 }
29245 }
29246
29247 Method (_BTM, 1, NotSerialized) // _BTM: Battery Time
29248 {
29249 If ((Arg0 > 0x7530))
29250 {
29251 Return (Zero)
29252 }
29253
29254 Return (0xFFFFFFFF)
29255 }
29256
29257 Method (_BCT, 1, NotSerialized) // _BCT: Battery Charge Time
29258 {
29259 If (((Arg0 > 0x64) || (Arg0 < One)))
29260 {
29261 Return (Zero)
29262 }
29263
29264 If ((^^^I2C1.AVBL == One))
29265 {
29266 BUF2 = ^^^I2C1.FG10 /* \_SB_.PCI0.I2C1.FG10 */
29267 If ((BSTS != One))
29268 {
29269 Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
29270 Local2 = (Local1 * 0x05)
29271 Divide (Local2, FGDV, Local0, Local1)
29272 BCLP = Local1
29273 }
29274
29275 BUF2 = ^^^I2C1.FG0A /* \_SB_.PCI0.I2C1.FG0A */
29276 If ((BSTS != One))
29277 {
29278 Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
29279 If ((Local1 & 0x8000))
29280 {
29281 Return (Zero)
29282 }
29283 }
29284
29285 Local0 = (BCLP * Arg0)
29286 Local0 -= RECT /* \_SB_.PCI0.I2C7.BATC.RECT */
29287 Local0 *= 0x0E10
29288 Divide (Local0, Local1, Local2, Local3)
29289 Return (Local3)
29290 }
29291
29292 Return (0xFFFFFFFF)
29293 }
29294
29295 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
29296 {
29297 If ((Arg0 == ToUUID ("4c2067e3-887d-475c-9720-4af1d3ed602e") /* Battery Thermal Limit */))
29298 {
29299 If ((Arg2 == 0x02))
29300 {
29301 If ((Arg1 == Zero))
29302 {
29303 Return (Buffer (One)
29304 {
29305 0x00 // .
29306 })
29307 }
29308 }
29309 }
29310
29311 Return (Zero)
29312 }
29313
29314 Method (_STA, 0, NotSerialized) // _STA: Status
29315 {
29316 If ((BDID != 0x08))
29317 {
29318 Return (Zero)
29319 }
29320
29321 If ((OSID != One))
29322 {
29323 Return (Zero)
29324 }
29325
29326 If ((^^^I2C1.AVBL == One)){}
29327 ADBG ("TI CHARGER")
29328 Return (0x1F)
29329 }
29330
29331 Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
29332 {
29333 Return (_SB) /* \_SB_ */
29334 }
29335
29336 Method (PSOC, 0, NotSerialized)
29337 {
29338 If ((^^^I2C1.AVBL == One))
29339 {
29340 BUF2 = ^^^I2C1.SOCR /* \_SB_.PCI0.I2C1.SOCR */
29341 If ((BSTS != One))
29342 {
29343 Local0 = (WRD1 >> 0x08)
29344 Local1 = (Local0 & 0xFF)
29345 }
29346
29347 Return (Local1)
29348 }
29349
29350 Return (Zero)
29351 }
29352
29353 Method (PMAX, 0, NotSerialized)
29354 {
29355 If ((^^^I2C1.AVBL == One))
29356 {
29357 BUF2 = ^^^I2C1.MXCU /* \_SB_.PCI0.I2C1.MXCU */
29358 If ((BSTS != One))
29359 {
29360 Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
29361 If ((Local1 & 0x8000))
29362 {
29363 Local0 = (Local1 >> 0x08)
29364 Local1 = (Local0 & 0xFF)
29365 Local0 = (0xFFFF - Local1)
29366 Local1 = (Local0 * 0x04)
29367 }
29368 Else
29369 {
29370 Local0 = (Local1 >> 0x08)
29371 Local2 = (Local0 & 0xFF)
29372 Local1 = (Local2 * 0x04)
29373 }
29374
29375 Divide (Local1, 0x0A, Local0, Local2)
29376 Divide (Local2, FGDV, Local0, Local1)
29377 Local2 = (Local1 * 0x03E8)
29378 Local1 = (DSVO * Local2)
29379 Return (Local1)
29380 }
29381 }
29382
29383 Return (Zero)
29384 }
29385
29386 Method (VMIN, 0, NotSerialized)
29387 {
29388 Return (0x0DAC)
29389 }
29390
29391 Method (APWR, 0, NotSerialized)
29392 {
29393 Return (0x0365C040)
29394 }
29395
29396 Method (NPWR, 0, NotSerialized)
29397 {
29398 Local3 = APWR ()
29399 If ((^^^I2C1.AVBL == One))
29400 {
29401 BUF2 = ^^^I2C1.FG0A /* \_SB_.PCI0.I2C1.FG0A */
29402 If ((BSTS != One))
29403 {
29404 Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
29405 If ((Local1 & 0x8000))
29406 {
29407 Local1 = (0xFFFF - Local1)
29408 }
29409
29410 Divide (Local1, FGDV, Local0, Local2)
29411 Local1 = (Local2 * 0x9C)
29412 Divide (Local1, 0x64, Local0, Local2)
29413 AVCU = Local2
29414 }
29415 }
29416
29417 Return (Local0)
29418 }
29419
29420 Method (PSRC, 0, Serialized)
29421 {
29422 Name (RGND, One)
29423 If ((^^PMI5.AVBL == One))
29424 {
29425 Local7 = ^^PMI5.GET (One, 0x6E, 0x1E)
29426 Local7 >>= 0x03
29427 Local7 &= 0x03
29428 If ((Local7 != One))
29429 {
29430 RGND = Zero
29431 }
29432
29433 Local0 = ^^PMI5.GET (One, 0x5E, 0x29)
29434 ADBG (Local0)
29435 Local1 = (Local0 >> 0x02)
29436 Local1 &= 0x0F
29437 If (((Local1 == Zero) || (RGND != Zero)))
29438 {
29439 ADBG ("NONE")
29440 Return (Zero)
29441 }
29442 ElseIf ((Local1 == 0x04))
29443 {
29444 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29445 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
29446 ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
29447 ^^PMI5.SET (One, 0x5E, 0x24, One)
29448 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29449 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
29450 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29451 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29452 ADBG ("REG05")
29453 ADBG (Local0)
29454 If ((RGND == Zero))
29455 {
29456 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29457 ^^PMI5.SET (One, 0x5E, 0x26, Zero)
29458 ^^PMI5.SET (One, 0x5E, 0x27, 0x3D)
29459 ^^PMI5.SET (One, 0x5E, 0x24, One)
29460 }
29461
29462 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29463 ^^PMI5.SET (One, 0x5E, 0x26, Zero)
29464 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29465 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29466 ADBG ("ACA")
29467 ADBG (Local0)
29468 Return (One)
29469 }
29470 ElseIf ((Local1 == One))
29471 {
29472 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29473 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
29474 ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
29475 ^^PMI5.SET (One, 0x5E, 0x24, One)
29476 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29477 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
29478 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29479 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29480 ADBG ("REG05")
29481 ADBG (Local0)
29482 If ((RGND == Zero))
29483 {
29484 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29485 ^^PMI5.SET (One, 0x5E, 0x26, Zero)
29486 ^^PMI5.SET (One, 0x5E, 0x27, 0x3A)
29487 ^^PMI5.SET (One, 0x5E, 0x24, One)
29488 }
29489
29490 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29491 ^^PMI5.SET (One, 0x5E, 0x26, Zero)
29492 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29493 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29494 ADBG ("SDP")
29495 ADBG (Local0)
29496 Return (0x02)
29497 }
29498 ElseIf ((Local1 == 0x02))
29499 {
29500 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29501 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
29502 ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
29503 ^^PMI5.SET (One, 0x5E, 0x24, One)
29504 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29505 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
29506 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29507 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29508 ADBG ("REG05")
29509 ADBG (Local0)
29510 If ((RGND == Zero))
29511 {
29512 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29513 ^^PMI5.SET (One, 0x5E, 0x26, Zero)
29514 ^^PMI5.SET (One, 0x5E, 0x27, 0x3D)
29515 ^^PMI5.SET (One, 0x5E, 0x24, One)
29516 }
29517
29518 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29519 ^^PMI5.SET (One, 0x5E, 0x26, Zero)
29520 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29521 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29522 ADBG ("DCP")
29523 ADBG (Local0)
29524 Return (0x03)
29525 }
29526 ElseIf ((Local1 == 0x03))
29527 {
29528 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29529 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
29530 ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
29531 ^^PMI5.SET (One, 0x5E, 0x24, One)
29532 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29533 ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
29534 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29535 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29536 ADBG ("REG05")
29537 ADBG (Local0)
29538 If ((RGND == Zero))
29539 {
29540 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29541 ^^PMI5.SET (One, 0x5E, 0x26, Zero)
29542 ^^PMI5.SET (One, 0x5E, 0x27, 0x3D)
29543 ^^PMI5.SET (One, 0x5E, 0x24, One)
29544 }
29545
29546 ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
29547 ^^PMI5.SET (One, 0x5E, 0x26, Zero)
29548 ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
29549 Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
29550 ADBG ("CDP")
29551 ADBG (Local0)
29552 Return (0x04)
29553 }
29554 ElseIf ((Local1 == 0x08))
29555 {
29556 ADBG ("OTG")
29557 Return (0x05)
29558 }
29559 Else
29560 {
29561 Return (Zero)
29562 }
29563 }
29564
29565 Return (One)
29566 }
29567 }
29568 }
29569
29570 Scope (_SB)
29571 {
29572 Device (ADP1)
29573 {
29574 Name (_HID, "ACPI0003" /* Power Source Device */) // _HID: Hardware ID
29575 Method (_PSR, 0, Serialized) // _PSR: Power Source
29576 {
29577 ADBG ("ADP1 _PSR")
29578 If ((BDID == 0x08))
29579 {
29580 ADBG ("ADP1 _PSR FFD")
29581 If (CondRefOf (\_SB.PCI0.I2C7.BATC, Local1))
29582 {
29583 Local0 = ^^PCI0.I2C7.BATC.PSRC ()
29584 If ((Local0 == Zero))
29585 {
29586 ADBG ("DC")
29587 Return (Zero)
29588 }
29589 Else
29590 {
29591 ADBG ("AC")
29592 Return (One)
29593 }
29594 }
29595 }
29596
29597 If (((BDID == 0x09) || (BDID == 0x0A)))
29598 {
29599 ADBG ("ADP1 _PSR FFD HR")
29600 If (CondRefOf (\_SB.PCI0.I2C7.WIDR, Local1))
29601 {
29602 Local0 = ^^PCI0.I2C7.WIDR.PSRC ()
29603 If ((Local0 == Zero))
29604 {
29605 ADBG ("DC")
29606 Return (Zero)
29607 }
29608 Else
29609 {
29610 ADBG ("AC")
29611 Return (One)
29612 }
29613 }
29614 }
29615
29616 If ((BDID == One))
29617 {
29618 ADBG ("ADP1 _PSR CHTCR")
29619 If ((PMID == 0x02))
29620 {
29621 If (CondRefOf (\_SB.PCI0.I2C7.BMDR, Local1))
29622 {
29623 Local0 = ^^PCI0.I2C7.BMDR.PSRC ()
29624 If ((Local0 == Zero))
29625 {
29626 ADBG ("DC")
29627 Return (Zero)
29628 }
29629 Else
29630 {
29631 ADBG ("AC")
29632 Return (One)
29633 }
29634 }
29635 }
29636 ElseIf (CondRefOf (\_SB.PCI0.I2C3.TIDR, Local1))
29637 {
29638 Local0 = ^^PCI0.I2C3.TIDR.PSRC ()
29639 If ((Local0 == Zero))
29640 {
29641 ADBG ("DC")
29642 Return (Zero)
29643 }
29644 Else
29645 {
29646 ADBG ("AC")
29647 Return (One)
29648 }
29649 }
29650 }
29651 ElseIf (CondRefOf (\_SB.PCI0.I2C1.BATC, Local1))
29652 {
29653 Local0 = ^^PCI0.I2C1.BATC.PSRC ()
29654 If ((Local0 == Zero))
29655 {
29656 Return (Zero)
29657 }
29658 Else
29659 {
29660 Return (One)
29661 }
29662 }
29663
29664 ADBG ("_PSR DEF")
29665 Return (One)
29666 }
29667
29668 Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
29669 {
29670 Return (_SB) /* \_SB_ */
29671 }
29672
29673 Method (_STA, 0, NotSerialized) // _STA: Status
29674 {
29675 If ((OSID != One))
29676 {
29677 Return (Zero)
29678 }
29679
29680 Return (0x0F)
29681 }
29682 }
29683 }
29684
29685 OperationRegion (FJNV, SystemMemory, 0x7A2E6F18, 0x0368)
29686 Scope (\)
29687 {
29688 Field (FJNV, AnyAcc, Lock, Preserve)
29689 {
29690 SWSV, 8,
29691 BCMD, 8,
29692 DID, 32,
29693 DIDS, 32,
29694 QAG1, 32,
29695 QAG2, 32,
29696 QAG3, 32,
29697 DSWF, 8,
29698 BSWF, 8,
29699 AHKF, 8,
29700 BLLM, 8,
29701 BLLT, 96,
29702 LCDL, 8,
29703 SPAF, 8,
29704 SPBF, 8,
29705 PPF, 8,
29706 SIDF, 8,
29707 IMTF, 8,
29708 IMTS, 8,
29709 BLEN, 8,
29710 WLEN, 8,
29711 UWEN, 8,
29712 UMEN, 8,
29713 MC0D, 8,
29714 MC1D, 8,
29715 MC2D, 8,
29716 CPBL, 8,
29717 FTSM, 8,
29718 RPCP, 8,
29719 HWPM, 8,
29720 AS34, 8,
29721 BIFL, 8,
29722 DCLW, 8,
29723 CUOV, 8,
29724 CDOV, 8,
29725 TCOV, 8,
29726 ACCX, 8,
29727 BTCX, 8,
29728 ECOF, 8,
29729 RPPC, 8,
29730 ODEF, 8,
29731 AMBE, 8,
29732 ACPE, 8,
29733 SIS0, 8,
29734 SIS1, 8,
29735 SIS2, 8,
29736 SIS3, 8,
29737 SIS4, 8,
29738 SIS5, 8,
29739 SIS6, 8,
29740 SIS7, 8,
29741 SIS8, 8,
29742 SIS9, 8,
29743 SISA, 8,
29744 SISB, 8,
29745 SISC, 8,
29746 SISD, 8,
29747 SISE, 8,
29748 SISF, 8,
29749 SISG, 8,
29750 SISH, 8,
29751 SISI, 8,
29752 SISJ, 8,
29753 SISK, 8,
29754 CDDM, 8,
29755 ADDM, 8,
29756 CDDD, 8,
29757 ADDD, 8,
29758 AUCS, 8,
29759 ZPOD, 8,
29760 U2CF, 8,
29761 PWBP, 8,
29762 RFHF, 8,
29763 KBBL, 8,
29764 WCVO, 224,
29765 WCHO, 224,
29766 WLWK, 8,
29767 LCDA, 8,
29768 WMRM, 8,
29769 WMAE, 8,
29770 TP2H, 8,
29771 SENE, 8,
29772 IMPF, 8,
29773 SCEX, 8,
29774 Offset (0xA5),
29775 FNPE, 8,
29776 DGEF, 8,
29777 RCME, 8,
29778 IRBF, 8,
29779 IRBC, 16,
29780 XHPT, 32,
29781 XSPT, 32,
29782 XSCM, 32,
29783 WDM1, 8,
29784 CID1, 16,
29785 WDM2, 8,
29786 CID2, 16,
29787 ICME, 8,
29788 OCME, 8,
29789 AUDE, 8,
29790 TMOD, 8,
29791 BTMD, 8,
29792 FJID, 8,
29793 TPDI, 8,
29794 BMUH, 8
29795 }
29796 }
29797
29798 OperationRegion (FJRV, SystemMemory, 0x79B90418, 0x0368)
29799 Scope (\)
29800 {
29801 Field (FJRV, AnyAcc, Lock, Preserve)
29802 {
29803 WAPB, 8,
29804 Offset (0x02),
29805 Offset (0x06),
29806 Offset (0x08),
29807 OWET, 8,
29808 PIID, 320,
29809 Offset (0x32),
29810 Offset (0x36),
29811 Offset (0x3A),
29812 Offset (0x3B),
29813 SBWF, 8,
29814 Offset (0x3D),
29815 HYBT, 8,
29816 IANF, 8,
29817 CANF, 8,
29818 KBCF, 8,
29819 VBTT, 8,
29820 Offset (0x43),
29821 Offset (0x44),
29822 B3DL, 16,
29823 B3DA, 32,
29824 B3DW, 8,
29825 SEST, 8,
29826 PBTD, 8,
29827 SLPT, 8,
29828 Offset (0x50),
29829 CRRB, 192,
29830 SYNC, 32,
29831 SUPF, 8
29832 }
29833 }
29834
29835 OperationRegion (SMIO, SystemIO, 0xB2, 0x02)
29836 Field (SMIO, ByteAcc, NoLock, Preserve)
29837 {
29838 SMIC, 8,
29839 SMID, 8
29840 }
29841
29842 Mutex (FJMX, 0x00)
29843 Method (FSMI, 3, NotSerialized)
29844 {
29845 Acquire (FJMX, 0xFFFF)
29846 BCMD = Arg0
29847 DID = Arg1
29848 DIDS = Arg2
29849 SMIC = SWSV /* \SWSV */
29850 Local0 = DID /* \DID_ */
29851 Release (FJMX)
29852 BCMD = Zero
29853 Return (Local0)
29854 }
29855
29856 Scope (_SB)
29857 {
29858 Scope (\)
29859 {
29860 Name (WBTN, Zero)
29861 Name (NGTM, Zero)
29862 Name (LSBL, Zero)
29863 Name (APPE, Zero)
29864 Name (APPS, Zero)
29865 Name (PREF, Zero)
29866 Name (SARF, Zero)
29867 Name (DPCI, Zero)
29868 Name (DPCS, Zero)
29869 Name (BYCI, Zero)
29870 Name (BTCI, Zero)
29871 }
29872
29873 Device (FEXT)
29874 {
29875 Name (_HID, "FUJ02E3") // _HID: Hardware ID
29876 Method (_STA, 0, NotSerialized) // _STA: Status
29877 {
29878 Return (0x0F)
29879 }
29880
29881 Method (_INI, 0, NotSerialized) // _INI: Initialize
29882 {
29883 HYBT = Zero
29884 }
29885
29886 Method (FUNC, 4, Serialized)
29887 {
29888 Local0 = 0x80000000
29889 Switch (Arg0)
29890 {
29891 Case (0x1000)
29892 {
29893 Local0 = S000 (Arg1, Arg2, Arg3)
29894 }
29895 Case (0x1008)
29896 {
29897 Local0 = S008 (Arg1, Arg2, Arg3)
29898 }
29899 Case (0x1013)
29900 {
29901 Local0 = S013 (Arg1, Arg2, Arg3)
29902 }
29903 Case (0x101A)
29904 {
29905 Local0 = S01A (Arg1, Arg2, Arg3)
29906 }
29907
29908 }
29909
29910 Return (Local0)
29911 }
29912
29913 Method (SSMI, 4, NotSerialized)
29914 {
29915 QAG1 = Arg0
29916 QAG2 = Arg1
29917 QAG3 = Arg2
29918 Return (FSMI (0x87, Arg3, Zero))
29919 }
29920
29921 Method (S000, 3, Serialized)
29922 {
29923 Local0 = Zero
29924 Switch (Arg0)
29925 {
29926 Case (Zero)
29927 {
29928 Local0 |= 0x00100000
29929 Local0 |= 0x0200
29930 Local0 |= 0x00080000
29931 }
29932 Case (One)
29933 {
29934 Local0 |= (APPE << 0x14)
29935 APPE = Zero
29936 Local0 |= (PREF << 0x09)
29937 PREF = Zero
29938 Local0 |= (SARF << 0x13)
29939 SARF = Zero
29940 }
29941 Case (0x02)
29942 {
29943 }
29944 Case (0x03)
29945 {
29946 }
29947 Case (0x04)
29948 {
29949 Local0 |= ((~^^GPO0.APP1 & One) << 0x14)
29950 Local0 |= ((~^^GPO0.DKCD & One) << 0x09)
29951 Local0 |= ((~^^GPO0.SARG & One) << 0x13)
29952 }
29953 Case (0x06)
29954 {
29955 Local0 = 0x03
29956 }
29957 Case (0x07)
29958 {
29959 Local0 = ^^PCI0.GDID ()
29960 }
29961 Default
29962 {
29963 Local0 = 0x80000000
29964 }
29965
29966 }
29967
29968 Return (Local0)
29969 }
29970
29971 Method (S008, 3, NotSerialized)
29972 {
29973 Local0 = 0x80000000
29974 If ((Arg0 == Zero))
29975 {
29976 If ((Arg1 == Zero))
29977 {
29978 Local0 = Zero
29979 }
29980 ElseIf ((Arg1 == One))
29981 {
29982 If ((OSYS >= 0x07D6))
29983 {
29984 Local0 = 0x02
29985 }
29986 Else
29987 {
29988 Local0 = Zero
29989 }
29990 }
29991 ElseIf (((Arg1 >= 0x02) && (Arg1 <= 0x05)))
29992 {
29993 Local0 = SSMI (Arg0, Arg1, Arg2, Zero)
29994 }
29995 }
29996 ElseIf (((Arg0 >= One) && (Arg0 <= 0x02)))
29997 {
29998 Local0 = SSMI (Arg0, Arg1, Arg2, Zero)
29999 }
30000
30001 Return (Local0)
30002 }
30003
30004 Method (S013, 3, Serialized)
30005 {
30006 Local0 = 0x80000000
30007 Switch (Arg0)
30008 {
30009 Case (Zero)
30010 {
30011 Local0 = One
30012 }
30013 Case (One)
30014 {
30015 Local0 = Zero
30016 Switch (Arg1)
30017 {
30018 Case (Zero)
30019 {
30020 If (HYBT)
30021 {
30022 Local0 |= One
30023 }
30024 }
30025 Case (One)
30026 {
30027 If ((Arg2 & One))
30028 {
30029 HYBT = One
30030 }
30031 Else
30032 {
30033 HYBT = Zero
30034 }
30035 }
30036
30037 }
30038 }
30039
30040 }
30041
30042 Return (Local0)
30043 }
30044
30045 Method (S01A, 3, Serialized)
30046 {
30047 Local0 = 0x80000000
30048 Name (BUF2, Buffer (0x04)
30049 {
30050 0x00, 0x00, 0x00, 0x00 // ....
30051 })
30052 CreateByteField (BUF2, Zero, BSTS)
30053 CreateByteField (BUF2, One, SLEN)
30054 CreateWordField (BUF2, 0x02, WRD1)
30055 Switch (Arg0)
30056 {
30057 Case (Zero)
30058 {
30059 Local0 = 0x03
30060 }
30061 Case (One)
30062 {
30063 Switch (Arg1)
30064 {
30065 Case (Zero)
30066 {
30067 Switch (Arg2)
30068 {
30069 Case (Zero)
30070 {
30071 BUF2 = ^^PCI0.I2C1.LFVN /* \_SB_.PCI0.I2C1.LFVN */
30072 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30073 }
30074 Case (One)
30075 {
30076 BUF2 = ^^PCI0.I2C1.LFVS /* \_SB_.PCI0.I2C1.LFVS */
30077 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30078 }
30079 Case (0x02)
30080 {
30081 BUF2 = ^^PCI0.I2C1.LFRY /* \_SB_.PCI0.I2C1.LFRY */
30082 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30083 }
30084 Case (0x03)
30085 {
30086 BUF2 = ^^PCI0.I2C1.LFRD /* \_SB_.PCI0.I2C1.LFRD */
30087 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30088 }
30089
30090 }
30091 }
30092 Case (One)
30093 {
30094 Switch (Arg2)
30095 {
30096 Case (Zero)
30097 {
30098 BUF2 = ^^PCI0.I2C1.SFVN /* \_SB_.PCI0.I2C1.SFVN */
30099 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30100 }
30101 Case (One)
30102 {
30103 BUF2 = ^^PCI0.I2C1.SFVS /* \_SB_.PCI0.I2C1.SFVS */
30104 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30105 }
30106 Case (0x02)
30107 {
30108 BUF2 = ^^PCI0.I2C1.SFRY /* \_SB_.PCI0.I2C1.SFRY */
30109 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30110 }
30111 Case (0x03)
30112 {
30113 BUF2 = ^^PCI0.I2C1.SFRD /* \_SB_.PCI0.I2C1.SFRD */
30114 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30115 }
30116
30117 }
30118 }
30119 Case (0x02)
30120 {
30121 Switch (Arg2)
30122 {
30123 Case (Zero)
30124 {
30125 BUF2 = ^^PCI0.I2C1.S2FV /* \_SB_.PCI0.I2C1.S2FV */
30126 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30127 }
30128 Case (One)
30129 {
30130 BUF2 = ^^PCI0.I2C1.S2FS /* \_SB_.PCI0.I2C1.S2FS */
30131 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30132 }
30133 Case (0x02)
30134 {
30135 BUF2 = ^^PCI0.I2C1.S2RY /* \_SB_.PCI0.I2C1.S2RY */
30136 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30137 }
30138 Case (0x03)
30139 {
30140 BUF2 = ^^PCI0.I2C1.S2RD /* \_SB_.PCI0.I2C1.S2RD */
30141 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30142 }
30143
30144 }
30145 }
30146 Case (0x03)
30147 {
30148 Switch (Arg2)
30149 {
30150 Case (Zero)
30151 {
30152 BUF2 = ^^PCI0.I2C1.C2FV /* \_SB_.PCI0.I2C1.C2FV */
30153 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30154 }
30155
30156 }
30157 }
30158 Case (0x04)
30159 {
30160 Switch (Arg2)
30161 {
30162 Case (Zero)
30163 {
30164 BUF2 = ^^PCI0.I2C1.CC2F /* \_SB_.PCI0.I2C1.CC2F */
30165 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30166 }
30167
30168 }
30169 }
30170
30171 }
30172 }
30173 Case (0x02)
30174 {
30175 WRD1 = Arg1
30176 ^^PCI0.I2C1.WCTB = BUF2 /* \_SB_.FEXT.S01A.BUF2 */
30177 Local0 = Zero
30178 }
30179 Case (0x03)
30180 {
30181 Switch (Arg1)
30182 {
30183 Case (0xCA)
30184 {
30185 BUF2 = ^^PCI0.I2C1.SNP1 /* \_SB_.PCI0.I2C1.SNP1 */
30186 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30187 }
30188 Case (0xCB)
30189 {
30190 BUF2 = ^^PCI0.I2C1.SNP2 /* \_SB_.PCI0.I2C1.SNP2 */
30191 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30192 }
30193 Case (0xCC)
30194 {
30195 BUF2 = ^^PCI0.I2C1.SNP3 /* \_SB_.PCI0.I2C1.SNP3 */
30196 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30197 }
30198 Case (0xCD)
30199 {
30200 BUF2 = ^^PCI0.I2C1.SNP4 /* \_SB_.PCI0.I2C1.SNP4 */
30201 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30202 }
30203 Case (0xCE)
30204 {
30205 BUF2 = ^^PCI0.I2C1.SNP5 /* \_SB_.PCI0.I2C1.SNP5 */
30206 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30207 }
30208 Case (0xCF)
30209 {
30210 BUF2 = ^^PCI0.I2C1.SNP6 /* \_SB_.PCI0.I2C1.SNP6 */
30211 Local0 = WRD1 /* \_SB_.FEXT.S01A.WRD1 */
30212 }
30213
30214 }
30215 }
30216
30217 }
30218
30219 Return (Local0)
30220 }
30221 }
30222
30223 Device (FJGI)
30224 {
30225 Name (_HID, EisaId ("FUJ0420")) // _HID: Hardware ID
30226 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
30227 {
30228 If ((Arg0 == ToUUID ("6ab81a65-1149-4c2b-b0ef-a83e13f282f0")))
30229 {
30230 Switch (ToInteger (Arg2))
30231 {
30232 Case (Zero)
30233 {
30234 Switch (ToInteger (Arg1))
30235 {
30236 Case (Zero)
30237 {
30238 Return (Buffer (One)
30239 {
30240 0x03 // .
30241 })
30242 }
30243 Default
30244 {
30245 Return (Buffer (One)
30246 {
30247 0x00 // .
30248 })
30249 }
30250
30251 }
30252 }
30253 Case (One)
30254 {
30255 Switch (ToInteger (Arg1))
30256 {
30257 Case (Zero)
30258 {
30259 CRRB = Arg3
30260 SYNC = Zero
30261 Local0 = Zero
30262 FSMI (0x96, Zero, Zero)
30263 While ((SYNC == Zero))
30264 {
30265 Sleep (One)
30266 Local0++
30267 If ((Local0 >= 0x1388))
30268 {
30269 Return (Ones)
30270 }
30271 }
30272
30273 Return (Zero)
30274 }
30275 Default
30276 {
30277 Return (Ones)
30278 }
30279
30280 }
30281 }
30282 Default
30283 {
30284 Return (Ones)
30285 }
30286
30287 }
30288 }
30289 }
30290 }
30291
30292 Device (BTNL)
30293 {
30294 Name (_HID, EisaId ("FUJ0422")) // _HID: Hardware ID
30295 Name (_HRV, 0x1001) // _HRV: Hardware Revision
30296 }
30297 }
30298
30299 Scope (\)
30300 {
30301 Name (UPNC, Package (0x04)
30302 {
30303 Zero,
30304 0xFF,
30305 Zero,
30306 Zero
30307 })
30308 Name (UPCA, Package (0x04)
30309 {
30310 0xFF,
30311 Zero,
30312 Zero,
30313 Zero
30314 })
30315 Name (UPCE, Package (0x04)
30316 {
30317 0xFF,
30318 0x02,
30319 Zero,
30320 Zero
30321 })
30322 Name (UPCH, Package (0x04)
30323 {
30324 0xFF,
30325 0xFF,
30326 Zero,
30327 Zero
30328 })
30329 Name (UPC3, Package (0x04)
30330 {
30331 0xFF,
30332 0x03,
30333 Zero,
30334 Zero
30335 })
30336 Name (UPCC, Package (0x04)
30337 {
30338 0xFF,
30339 0x0A,
30340 Zero,
30341 Zero
30342 })
30343 Name (BPLD, Buffer (0x14)
30344 {
30345 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........
30346 /* 0008 */ 0x30, 0x9C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 0.......
30347 /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF // ....
30348 })
30349 Method (MPLD, 2, Serialized)
30350 {
30351 CreateByteField (BPLD, 0x08, PLDV)
30352 CreateByteField (BPLD, 0x0C, PLDE)
30353 CreateWordField (BPLD, 0x0A, PLDG)
30354 PLDG = (Arg0 << 0x07)
30355 PLDV = (Arg1 | 0x30)
30356 If (Arg1)
30357 {
30358 PLDE |= 0x03
30359 }
30360 Else
30361 {
30362 PLDE &= 0xFC
30363 }
30364
30365 Return (BPLD) /* \BPLD */
30366 }
30367
30368 Method (GHPT, 1, NotSerialized)
30369 {
30370 Name (BHPT, Buffer (0x10){})
30371 BHPT = XHPT /* \XHPT */
30372 CreateByteField (BHPT, Arg0, HTYP)
30373 Return (HTYP) /* \GHPT.HTYP */
30374 }
30375
30376 Method (GSPT, 1, NotSerialized)
30377 {
30378 Name (BSPT, Buffer (0x0A){})
30379 BSPT = XSPT /* \XSPT */
30380 CreateByteField (BSPT, Arg0, STYP)
30381 Return (STYP) /* \GSPT.STYP */
30382 }
30383
30384 Method (GCMP, 1, NotSerialized)
30385 {
30386 Name (BCMP, Buffer (0x0A){})
30387 BCMP = XSCM /* \XSCM */
30388 CreateByteField (BCMP, Arg0, CMPL)
30389 If ((CMPL == 0xFF))
30390 {
30391 Return (Zero)
30392 }
30393 Else
30394 {
30395 Return (CMPL += One)
30396 }
30397 }
30398 }
30399
30400 Scope (_SB.PCI0.XHC1.RHUB.HS01)
30401 {
30402 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
30403 {
30404 Switch (ToInteger (GHPT (Zero)))
30405 {
30406 Case (One)
30407 {
30408 Return (UPC3) /* \UPC3 */
30409 }
30410 Case (0x02)
30411 {
30412 Return (UPNC) /* \UPNC */
30413 }
30414 Case (0x03)
30415 {
30416 Return (UPCC) /* \UPCC */
30417 }
30418 Default
30419 {
30420 Return (UPCH) /* \UPCH */
30421 }
30422
30423 }
30424 }
30425
30426 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
30427 {
30428 Switch (ToInteger (GHPT (Zero)))
30429 {
30430 Case (One)
30431 {
30432 Return (MPLD (One, One))
30433 }
30434 Case (0x03)
30435 {
30436 Return (MPLD (One, One))
30437 }
30438 Default
30439 {
30440 Return (MPLD (One, Zero))
30441 }
30442
30443 }
30444 }
30445
30446 Device (PRT0)
30447 {
30448 Name (_ADR, One) // _ADR: Address
30449 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30450 {
30451 Return (UPCA) /* \UPCA */
30452 }
30453
30454 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30455 {
30456 Return (MPLD (0x30, One))
30457 }
30458 }
30459
30460 Device (PRT1)
30461 {
30462 Name (_ADR, 0x02) // _ADR: Address
30463 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30464 {
30465 Return (UPCA) /* \UPCA */
30466 }
30467
30468 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30469 {
30470 Return (MPLD (0x31, One))
30471 }
30472 }
30473
30474 Device (PRT2)
30475 {
30476 Name (_ADR, 0x03) // _ADR: Address
30477 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30478 {
30479 Return (UPCH) /* \UPCH */
30480 }
30481
30482 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30483 {
30484 Return (MPLD (0x32, Zero))
30485 }
30486 }
30487
30488 Device (PRT3)
30489 {
30490 Name (_ADR, 0x04) // _ADR: Address
30491 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30492 {
30493 Return (UPCH) /* \UPCH */
30494 }
30495
30496 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30497 {
30498 Return (MPLD (0x33, Zero))
30499 }
30500 }
30501 }
30502
30503 Scope (_SB.PCI0.XHC1.RHUB.HS02)
30504 {
30505 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
30506 {
30507 Switch (ToInteger (GHPT (One)))
30508 {
30509 Case (One)
30510 {
30511 Return (UPC3) /* \UPC3 */
30512 }
30513 Case (0x02)
30514 {
30515 Return (UPNC) /* \UPNC */
30516 }
30517 Case (0x03)
30518 {
30519 Return (UPCC) /* \UPCC */
30520 }
30521 Default
30522 {
30523 Return (UPCH) /* \UPCH */
30524 }
30525
30526 }
30527 }
30528
30529 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
30530 {
30531 Switch (ToInteger (GHPT (One)))
30532 {
30533 Case (One)
30534 {
30535 Return (MPLD (0x02, One))
30536 }
30537 Case (0x03)
30538 {
30539 Return (MPLD (0x02, One))
30540 }
30541 Default
30542 {
30543 Return (MPLD (0x02, Zero))
30544 }
30545
30546 }
30547 }
30548 }
30549
30550 Scope (_SB.PCI0.XHC1.RHUB.HS03)
30551 {
30552 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
30553 {
30554 Switch (ToInteger (GHPT (0x02)))
30555 {
30556 Case (One)
30557 {
30558 Return (UPC3) /* \UPC3 */
30559 }
30560 Case (0x02)
30561 {
30562 Return (UPNC) /* \UPNC */
30563 }
30564 Case (0x03)
30565 {
30566 Return (UPCC) /* \UPCC */
30567 }
30568 Default
30569 {
30570 Return (UPCH) /* \UPCH */
30571 }
30572
30573 }
30574 }
30575
30576 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
30577 {
30578 Switch (ToInteger (GHPT (0x02)))
30579 {
30580 Case (One)
30581 {
30582 Return (MPLD (0x03, One))
30583 }
30584 Case (0x03)
30585 {
30586 Return (MPLD (0x03, One))
30587 }
30588 Default
30589 {
30590 Return (MPLD (0x03, Zero))
30591 }
30592
30593 }
30594 }
30595 }
30596
30597 Scope (_SB.PCI0.XHC1.RHUB.HS04)
30598 {
30599 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
30600 {
30601 Switch (ToInteger (GHPT (0x03)))
30602 {
30603 Case (One)
30604 {
30605 Return (UPC3) /* \UPC3 */
30606 }
30607 Case (0x02)
30608 {
30609 Return (UPNC) /* \UPNC */
30610 }
30611 Case (0x03)
30612 {
30613 Return (UPCC) /* \UPCC */
30614 }
30615 Default
30616 {
30617 Return (UPCH) /* \UPCH */
30618 }
30619
30620 }
30621 }
30622
30623 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
30624 {
30625 Switch (ToInteger (GHPT (0x03)))
30626 {
30627 Case (One)
30628 {
30629 Return (MPLD (0x04, One))
30630 }
30631 Case (0x03)
30632 {
30633 Return (MPLD (0x04, One))
30634 }
30635 Default
30636 {
30637 Return (MPLD (0x04, Zero))
30638 }
30639
30640 }
30641 }
30642
30643 Device (PRT0)
30644 {
30645 Name (_ADR, One) // _ADR: Address
30646 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30647 {
30648 Return (UPC3) /* \UPC3 */
30649 }
30650
30651 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30652 {
30653 Return (MPLD (0x20, 0x03))
30654 }
30655 }
30656
30657 Device (PRT1)
30658 {
30659 Name (_ADR, 0x02) // _ADR: Address
30660 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30661 {
30662 Return (UPC3) /* \UPC3 */
30663 }
30664
30665 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30666 {
30667 Return (MPLD (0x21, 0x03))
30668 }
30669 }
30670
30671 Device (PRT2)
30672 {
30673 Name (_ADR, 0x03) // _ADR: Address
30674 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30675 {
30676 Return (UPC3) /* \UPC3 */
30677 }
30678
30679 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30680 {
30681 Return (MPLD (0x22, 0x03))
30682 }
30683 }
30684
30685 Device (PRT3)
30686 {
30687 Name (_ADR, 0x04) // _ADR: Address
30688 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30689 {
30690 Return (UPCH) /* \UPCH */
30691 }
30692
30693 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30694 {
30695 Return (MPLD (0x23, Zero))
30696 }
30697 }
30698 }
30699
30700 Scope (_SB.PCI0.XHC1.RHUB.SSP1)
30701 {
30702 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
30703 {
30704 Switch (ToInteger (GSPT (Zero)))
30705 {
30706 Case (One)
30707 {
30708 Return (UPC3) /* \UPC3 */
30709 }
30710 Case (0x02)
30711 {
30712 Return (UPNC) /* \UPNC */
30713 }
30714 Case (0x03)
30715 {
30716 Return (UPCC) /* \UPCC */
30717 }
30718 Default
30719 {
30720 Return (UPCH) /* \UPCH */
30721 }
30722
30723 }
30724 }
30725
30726 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
30727 {
30728 Switch (ToInteger (GSPT (Zero)))
30729 {
30730 Case (One)
30731 {
30732 If (GCMP (Zero))
30733 {
30734 Return (MPLD (GCMP (Zero), One))
30735 }
30736 Else
30737 {
30738 Return (MPLD (0x11, One))
30739 }
30740 }
30741 Case (0x03)
30742 {
30743 If (GCMP (Zero))
30744 {
30745 Return (MPLD (GCMP (Zero), One))
30746 }
30747 Else
30748 {
30749 Return (MPLD (0x11, One))
30750 }
30751 }
30752 Default
30753 {
30754 If (GCMP (Zero))
30755 {
30756 Return (MPLD (GCMP (Zero), Zero))
30757 }
30758 Else
30759 {
30760 Return (MPLD (0x11, Zero))
30761 }
30762 }
30763
30764 }
30765 }
30766 }
30767
30768 Scope (_SB.PCI0.XHC1.RHUB.SSP2)
30769 {
30770 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
30771 {
30772 Switch (ToInteger (GSPT (One)))
30773 {
30774 Case (One)
30775 {
30776 Return (UPC3) /* \UPC3 */
30777 }
30778 Case (0x02)
30779 {
30780 Return (UPNC) /* \UPNC */
30781 }
30782 Case (0x03)
30783 {
30784 Return (UPCC) /* \UPCC */
30785 }
30786 Default
30787 {
30788 Return (UPCH) /* \UPCH */
30789 }
30790
30791 }
30792 }
30793
30794 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
30795 {
30796 Switch (ToInteger (GSPT (One)))
30797 {
30798 Case (One)
30799 {
30800 If (GCMP (One))
30801 {
30802 Return (MPLD (GCMP (One), One))
30803 }
30804 Else
30805 {
30806 Return (MPLD (0x12, One))
30807 }
30808 }
30809 Case (0x03)
30810 {
30811 If (GCMP (One))
30812 {
30813 Return (MPLD (GCMP (One), One))
30814 }
30815 Else
30816 {
30817 Return (MPLD (0x12, One))
30818 }
30819 }
30820 Default
30821 {
30822 If (GCMP (One))
30823 {
30824 Return (MPLD (GCMP (One), Zero))
30825 }
30826 Else
30827 {
30828 Return (MPLD (0x12, Zero))
30829 }
30830 }
30831
30832 }
30833 }
30834 }
30835
30836 Scope (_SB.PCI0.XHC1.RHUB.SSP3)
30837 {
30838 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
30839 {
30840 Switch (ToInteger (GSPT (0x02)))
30841 {
30842 Case (One)
30843 {
30844 Return (UPC3) /* \UPC3 */
30845 }
30846 Case (0x02)
30847 {
30848 Return (UPNC) /* \UPNC */
30849 }
30850 Case (0x03)
30851 {
30852 Return (UPCC) /* \UPCC */
30853 }
30854 Default
30855 {
30856 Return (UPCH) /* \UPCH */
30857 }
30858
30859 }
30860 }
30861
30862 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
30863 {
30864 Switch (ToInteger (GSPT (0x02)))
30865 {
30866 Case (One)
30867 {
30868 If (GCMP (0x02))
30869 {
30870 Return (MPLD (GCMP (0x02), One))
30871 }
30872 Else
30873 {
30874 Return (MPLD (0x13, One))
30875 }
30876 }
30877 Case (0x03)
30878 {
30879 If (GCMP (0x02))
30880 {
30881 Return (MPLD (GCMP (0x02), One))
30882 }
30883 Else
30884 {
30885 Return (MPLD (0x13, One))
30886 }
30887 }
30888 Default
30889 {
30890 If (GCMP (0x02))
30891 {
30892 Return (MPLD (GCMP (0x02), Zero))
30893 }
30894 Else
30895 {
30896 Return (MPLD (0x13, Zero))
30897 }
30898 }
30899
30900 }
30901 }
30902 }
30903
30904 Scope (_SB.PCI0.XHC1.RHUB.SSP4)
30905 {
30906 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
30907 {
30908 Switch (ToInteger (GSPT (0x03)))
30909 {
30910 Case (One)
30911 {
30912 Return (UPC3) /* \UPC3 */
30913 }
30914 Case (0x02)
30915 {
30916 Return (UPNC) /* \UPNC */
30917 }
30918 Case (0x03)
30919 {
30920 Return (UPCC) /* \UPCC */
30921 }
30922 Default
30923 {
30924 Return (UPCH) /* \UPCH */
30925 }
30926
30927 }
30928 }
30929
30930 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
30931 {
30932 Switch (ToInteger (GSPT (0x03)))
30933 {
30934 Case (One)
30935 {
30936 If (GCMP (0x03))
30937 {
30938 Return (MPLD (GCMP (0x03), One))
30939 }
30940 Else
30941 {
30942 Return (MPLD (0x14, One))
30943 }
30944 }
30945 Case (0x03)
30946 {
30947 If (GCMP (0x03))
30948 {
30949 Return (MPLD (GCMP (0x03), One))
30950 }
30951 Else
30952 {
30953 Return (MPLD (0x14, One))
30954 }
30955 }
30956 Default
30957 {
30958 If (GCMP (0x03))
30959 {
30960 Return (MPLD (GCMP (0x03), Zero))
30961 }
30962 Else
30963 {
30964 Return (MPLD (0x14, Zero))
30965 }
30966 }
30967
30968 }
30969 }
30970
30971 Device (PRT0)
30972 {
30973 Name (_ADR, One) // _ADR: Address
30974 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30975 {
30976 Return (UPC3) /* \UPC3 */
30977 }
30978
30979 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30980 {
30981 Return (MPLD (0x20, 0x03))
30982 }
30983 }
30984
30985 Device (PRT1)
30986 {
30987 Name (_ADR, 0x02) // _ADR: Address
30988 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
30989 {
30990 Return (UPC3) /* \UPC3 */
30991 }
30992
30993 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
30994 {
30995 Return (MPLD (0x21, 0x03))
30996 }
30997 }
30998
30999 Device (PRT2)
31000 {
31001 Name (_ADR, 0x03) // _ADR: Address
31002 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
31003 {
31004 Return (UPC3) /* \UPC3 */
31005 }
31006
31007 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
31008 {
31009 Return (MPLD (0x22, 0x03))
31010 }
31011 }
31012
31013 Device (PRT3)
31014 {
31015 Name (_ADR, 0x04) // _ADR: Address
31016 Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities
31017 {
31018 Return (UPCH) /* \UPCH */
31019 }
31020
31021 Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
31022 {
31023 Return (MPLD (0x23, Zero))
31024 }
31025 }
31026 }
31027
31028 Scope (_GPE)
31029 {
31030 Method (_L09, 0, NotSerialized) // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
31031 {
31032 If (((BDID != One) && (OSID != One)))
31033 {
31034 If ((RP1D == Zero))
31035 {
31036 \_SB.PCI0.RP01.HPME ()
31037 Notify (\_SB.PCI0.RP01, 0x02) // Device Wake
31038 }
31039
31040 If ((RP2D == Zero))
31041 {
31042 \_SB.PCI0.RP02.HPME ()
31043 Notify (\_SB.PCI0.RP02, 0x02) // Device Wake
31044 }
31045
31046 If ((RP3D == Zero))
31047 {
31048 \_SB.PCI0.RP03.HPME ()
31049 Notify (\_SB.PCI0.RP03, 0x02) // Device Wake
31050 }
31051
31052 If ((RP4D == Zero))
31053 {
31054 \_SB.PCI0.RP04.HPME ()
31055 Notify (\_SB.PCI0.RP04, 0x02) // Device Wake
31056 }
31057 }
31058 }
31059 }
31060
31061 Scope (_SB)
31062 {
31063 OperationRegion (GP0C, SystemMemory, 0xFED80000, 0x8000)
31064 Field (GP0C, DWordAcc, Lock, Preserve)
31065 {
31066 Offset (0x4C08),
31067 , 1,
31068 MCUR, 1
31069 }
31070 }
31071
31072 Scope (_SB)
31073 {
31074 Device (LID)
31075 {
31076 Name (_HID, EisaId ("PNP0C0D") /* Lid Device */) // _HID: Hardware ID
31077 Method (_LID, 0, NotSerialized) // _LID: Lid Status
31078 {
31079 If (^^GPO1.LLVL)
31080 {
31081 Return (One)
31082 }
31083 Else
31084 {
31085 Return (Zero)
31086 }
31087 }
31088
31089 Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
31090 {
31091 Noop
31092 }
31093 }
31094 }
31095
31096 Name (_S0, Package (0x04) // _S0_: S0 System State
31097 {
31098 Zero,
31099 Zero,
31100 Zero,
31101 Zero
31102 })
31103 Name (_S4, Package (0x04) // _S4_: S4 System State
31104 {
31105 0x06,
31106 Zero,
31107 Zero,
31108 Zero
31109 })
31110 Name (_S5, Package (0x04) // _S5_: S5 System State
31111 {
31112 0x07,
31113 Zero,
31114 Zero,
31115 Zero
31116 })
31117 Method (PTS, 1, NotSerialized)
31118 {
31119 If (Arg0){}
31120 }
31121
31122 Method (WAK, 1, NotSerialized)
31123 {
31124 }
31125}
31126