Attachment 'acpidump.txt'
Download 1 /*
2 RSD PTR: OEM=LENOVO, ACPI_Rev=2.0x (2)
3 XSDT=0x00000000acdfe1c0, length=36, cksum=176
4 */
5 /*
6 XSDT: Length=236, Revision=1, Checksum=26,
7 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
8 Creator ID=PTEC, Creator Revision=0x2
9 Entries={ 0x00000000acdf8000, 0x00000000acdfd000, 0x00000000acdfc000, 0x00000000acdfb000, 0x00000000acdfa000, 0x00000000acdf7000, 0x00000000acdf6000, 0x00000000acdf5000, 0x00000000acdf4000, 0x00000000acde1000, 0x00000000acde0000, 0x00000000acddf000, 0x00000000acdde000, 0x00000000acddd000, 0x00000000acddb000, 0x00000000acdda000, 0x00000000acdd9000, 0x00000000acdd8000, 0x00000000acdd7000, 0x00000000acdd6000, 0x00000000acdd5000, 0x00000000accb0000, 0x00000000acdd4000, 0x00000000acdd3000, 0x00000000acdd2000 }
10 */
11 /*
12 FACP: Length=268, Revision=5, Checksum=18,
13 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
14 Creator ID=PTEC, Creator Revision=0x2
15 FACS=0xacd68000, DSDT=0xacde2000
16 INT_MODEL=PIC
17 Preferred_PM_Profile=Mobile (2)
18 SCI_INT=9
19 SMI_CMD=0xb2, ACPI_ENABLE=0xf2, ACPI_DISABLE=0xf1, S4BIOS_REQ=0x0
20 PSTATE_CNT=0xf3
21 PM1a_EVT_BLK=0x1800-0x1803
22 PM1a_CNT_BLK=0x1804-0x1805
23 PM2_CNT_BLK=0x1850-0x1850
24 PM_TMR_BLK=0x1808-0x180b
25 GPE0_BLK=0x1880-0x189f
26 CST_CNT=0xf4
27 P_LVL2_LAT=101 us, P_LVL3_LAT=1001 us
28 FLUSH_SIZE=0, FLUSH_STRIDE=0
29 DUTY_OFFSET=1, DUTY_WIDTH=3
30 DAY_ALRM=13, MON_ALRM=0, CENTURY=50
31 IAPC_BOOT_ARCH={LEGACY_DEVICES,8042,NO_ASPM}
32 Flags={WBINVD,C1_SUPPORTED,C2_MP_SUPPORTED,SLEEP_BUTTON,S4_RTC_WAKE,DOCKING_SUPPORTED,RESET_REGISTER,PCI_EXPRESS_WAKE}
33 RESET_REG=0xcf9:0[8] (IO), RESET_VALUE=0x6
34 */
35 /*
36 FACS: Length=64, HwSig=0x00af2a3d, Firm_Wake_Vec=0x00000000
37 Global_Lock=
38 Flags=
39 Version=2
40 */
41 /*
42 DSDT: Length=70084, Revision=1, Checksum=199,
43 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
44 Creator ID=INTL, Creator Revision=0x20120711
45 */
46 /*
47 SLIC: Length=374, Revision=1, Checksum=4,
48 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
49 Creator ID=PTEC, Creator Revision=0x1
50 */
51 /*
52 ASF!: Length=165, Revision=32, Checksum=11,
53 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
54 Creator ID=PTEC, Creator Revision=0x2
55 */
56 /*
57 HPET: Length=56, Revision=1, Checksum=203,
58 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
59 Creator ID=PTEC, Creator Revision=0x2
60 HPET Number=0
61 ADDR=0xfed00000:0[0] (Memory) HW Rev=0x1
62 Comparators=3
63 Counter Size=1
64 Legacy IRQ routing capable={TRUE}
65 PCI Vendor ID=0x8086
66 Minimal Tick=128
67 Flags=0x00
68 */
69 /*
70 ECDT: Length=82, Revision=1, Checksum=110,
71 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
72 Creator ID=PTEC, Creator Revision=0x2
73 EC_CONTROL=0x66:0[8] (IO)
74 EC_DATA=0x62:0[8] (IO)
75 UID=0, GPE_BIT=0x25
76 EC_ID=\_SB.PCI0.LPC.EC
77 */
78 /*
79 APIC: Length=152, Revision=1, Checksum=3,
80 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
81 Creator ID=PTEC, Creator Revision=0x2
82 Local APIC ADDR=0xfee00000
83 Flags={PC-AT}
84
85 Type=Local APIC
86 ACPI CPU=1
87 Flags={ENABLED}
88 APIC ID=0
89
90 Type=Local APIC
91 ACPI CPU=2
92 Flags={ENABLED}
93 APIC ID=1
94
95 Type=Local APIC
96 ACPI CPU=3
97 Flags={ENABLED}
98 APIC ID=2
99
100 Type=Local APIC
101 ACPI CPU=4
102 Flags={ENABLED}
103 APIC ID=3
104
105 Type=Local APIC
106 ACPI CPU=5
107 Flags={DISABLED}
108 APIC ID=0
109
110 Type=Local APIC
111 ACPI CPU=6
112 Flags={DISABLED}
113 APIC ID=0
114
115 Type=Local APIC
116 ACPI CPU=7
117 Flags={DISABLED}
118 APIC ID=0
119
120 Type=Local APIC
121 ACPI CPU=8
122 Flags={DISABLED}
123 APIC ID=0
124
125 Type=IO APIC
126 APIC ID=2
127 INT BASE=0
128 ADDR=0x00000000fec00000
129
130 Type=INT Override
131 BUS=0
132 IRQ=0
133 INTR=2
134 Flags={Polarity=conforming, Trigger=conforming}
135
136 Type=INT Override
137 BUS=0
138 IRQ=9
139 INTR=9
140 Flags={Polarity=active-hi, Trigger=level}
141
142 Type=Local APIC NMI
143 ACPI CPU=0
144 LINT Pin=1
145 Flags={Polarity=active-hi, Trigger=edge}
146
147 Type=Local APIC NMI
148 ACPI CPU=1
149 LINT Pin=1
150 Flags={Polarity=active-hi, Trigger=edge}
151 */
152 /*
153 MCFG: Length=60, Revision=1, Checksum=156,
154 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
155 Creator ID=PTEC, Creator Revision=0x2
156
157 Base Address=0x00000000f8000000
158 Segment Group=0x0000
159 Start Bus=0
160 End Bus=63
161 */
162 /*
163 SSDT: Length=51, Revision=1, Checksum=87,
164 OEMID=LENOVO, OEM Table ID=TP-SSDT1, OEM Revision=0x100,
165 Creator ID=INTL, Creator Revision=0x20120711
166 */
167 /*
168 SSDT: Length=1158, Revision=1, Checksum=185,
169 OEMID=LENOVO, OEM Table ID=TP-SSDT2, OEM Revision=0x200,
170 Creator ID=INTL, Creator Revision=0x20120711
171 */
172 /*
173 SSDT: Length=2507, Revision=1, Checksum=48,
174 OEMID=LENOVO, OEM Table ID=SataAhci, OEM Revision=0x1000,
175 Creator ID=INTL, Creator Revision=0x20120711
176 */
177 /*
178 SSDT: Length=338, Revision=1, Checksum=160,
179 OEMID=LENOVO, OEM Table ID=Rmv_Batt, OEM Revision=0x1000,
180 Creator ID=INTL, Creator Revision=0x20120711
181 */
182 /*
183 SSDT: Length=1733, Revision=1, Checksum=224,
184 OEMID=LENOVO, OEM Table ID=Cpu0Ist, OEM Revision=0x3000,
185 Creator ID=INTL, Creator Revision=0x20120711
186 */
187 /*
188 SSDT: Length=2932, Revision=2, Checksum=119,
189 OEMID=LENOVO, OEM Table ID=CpuSsdt, OEM Revision=0x3000,
190 Creator ID=INTL, Creator Revision=0x20120711
191 */
192 /*
193 SSDT: Length=873, Revision=2, Checksum=105,
194 OEMID=LENOVO, OEM Table ID=CtdpB, OEM Revision=0x1000,
195 Creator ID=INTL, Creator Revision=0x20120711
196 */
197 /*
198 SSDT: Length=5237, Revision=1, Checksum=28,
199 OEMID=LENOVO, OEM Table ID=SaSsdt, OEM Revision=0x3000,
200 Creator ID=INTL, Creator Revision=0x20120711
201 */
202 /*
203 SSDT: Length=916, Revision=2, Checksum=184,
204 OEMID=LENOVO, OEM Table ID=CppcTabl, OEM Revision=0x1000,
205 Creator ID=INTL, Creator Revision=0x20120711
206 */
207 /*
208 PCCT: Length=110, Revision=5, Checksum=137,
209 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
210 Creator ID=PTEC, Creator Revision=0x2
211 */
212 /*
213 SSDT: Length=2756, Revision=2, Checksum=75,
214 OEMID=LENOVO, OEM Table ID=Cpc_Tabl, OEM Revision=0x1000,
215 Creator ID=INTL, Creator Revision=0x20120711
216 */
217 /*
218 TCPA: Length=50, Revision=2, Checksum=5,
219 OEMID=PTL, OEM Table ID=LENOVO, OEM Revision=0x6040000,
220 Creator ID=LNVO, Creator Revision=0x1
221 Class 0 Base Address 0xaccd1000 Length 589824
222
223 */
224 /*
225 SSDT: Length=1699, Revision=1, Checksum=40,
226 OEMID=Intel_, OEM Table ID=TpmTable, OEM Revision=0x1000,
227 Creator ID=INTL, Creator Revision=0x20120711
228 */
229 /*
230 UEFI: Length=66, Revision=1, Checksum=46,
231 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
232 Creator ID=PTEC, Creator Revision=0x2
233 */
234 /*
235 MSDM: Length=85, Revision=3, Checksum=142,
236 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
237 Creator ID=PTEC, Creator Revision=0x2
238 */
239 /*
240 BATB: Length=70, Revision=1, Checksum=105,
241 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
242 Creator ID=PTEC, Creator Revision=0x2
243 */
244 /*
245 FPDT: Length=100, Revision=1, Checksum=202,
246 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
247 Creator ID=PTEC, Creator Revision=0x2
248 */
249 /*
250 UEFI: Length=758, Revision=1, Checksum=76,
251 OEMID=LENOVO, OEM Table ID=TP-N11, OEM Revision=0x1100,
252 Creator ID=PTEC, Creator Revision=0x2
253 */
254 /*
255 * Intel ACPI Component Architecture
256 * AML/ASL+ Disassembler version 20150818-64
257 * Copyright (c) 2000 - 2015 Intel Corporation
258 *
259 * Disassembling to symbolic ASL+ operators
260 *
261 * Disassembly of /tmp/acpidump.bwLN3W, Tue Jan 19 05:08:52 2016
262 *
263 * Original Table Header:
264 * Signature "DSDT"
265 * Length 0x00015F20 (89888)
266 * Revision 0x01 **** 32-bit table (V1), no 64-bit math support
267 * Checksum 0x4A
268 * OEM ID "LENOVO"
269 * OEM Table ID "TP-N11 "
270 * OEM Revision 0x00001100 (4352)
271 * Compiler ID "INTL"
272 * Compiler Version 0x20120711 (538052369)
273 */
274 DefinitionBlock ("/tmp/acpidump.aml", "DSDT", 1, "LENOVO", "TP-N11 ", 0x00001100)
275 {
276 /*
277 * iASL Warning: There were 1 external control methods found during
278 * disassembly, but additional ACPI tables to resolve these externals
279 * were not specified. This resulting disassembler output file may not
280 * compile because the disassembler did not know how many arguments
281 * to assign to these methods. To specify the tables needed to resolve
282 * external control method references, the -e option can be used to
283 * specify the filenames. Note: SSDTs can be dynamically loaded at
284 * runtime and may or may not be available via the host OS.
285 * Example iASL invocations:
286 * iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
287 * iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
288 * iasl -e ssdt*.aml -d dsdt.aml
289 *
290 * In addition, the -fe option can be used to specify a file containing
291 * control method external declarations with the associated method
292 * argument counts. Each line of the file must be of the form:
293 * External (<method pathname>, MethodObj, <argument count>)
294 * Invocation:
295 * iasl -fe refs.txt -d dsdt.aml
296 *
297 * The following methods were unresolved and many not compile properly
298 * because the disassembler had to guess at the number of arguments
299 * required for each:
300 */
301 External (GUAM, MethodObj) // Warning: Unresolved method, guessing 1 arguments
302
303 External (_PR_.CPU0._TSS, IntObj)
304 External (_SB_.PCI0.SAT1.PRIM.GTME, UnknownObj)
305 External (_SB_.PCI0.SAT1.SCND.GTME, UnknownObj)
306 External (_SB_.PCI0.SAT1.SCND.MSTR, UnknownObj)
307
308 Scope (\_PR)
309 {
310 Processor (CPU0, 0x01, 0x00001810, 0x06) {}
311 Processor (CPU1, 0x02, 0x00001810, 0x06) {}
312 Processor (CPU2, 0x03, 0x00001810, 0x06) {}
313 Processor (CPU3, 0x04, 0x00001810, 0x06) {}
314 Processor (CPU4, 0x05, 0x00001810, 0x06) {}
315 Processor (CPU5, 0x06, 0x00001810, 0x06) {}
316 Processor (CPU6, 0x07, 0x00001810, 0x06) {}
317 Processor (CPU7, 0x08, 0x00001810, 0x06) {}
318 }
319
320 Scope (\)
321 {
322 Method (PNTF, 1, NotSerialized)
323 {
324 If (((Arg0 == 0x80) && !\OSPX))
325 {
326 If ((\_PR.CFGD & 0x01))
327 {
328 If (\CPPX)
329 {
330 Notify (\_SB.PCCD, 0x82) // Device-Specific Change
331 }
332 }
333 }
334 Else
335 {
336 If ((\_PR.CFGD & 0x0200))
337 {
338 If ((((PDC0 & 0x08) && ((Arg0 == 0x80) || (
339 Arg0 == 0x82))) || ((PDC0 & 0x10) && (Arg0 == 0x81))))
340 {
341 Notify (\_PR.CPU0, Arg0)
342 }
343
344 If ((((PDC1 & 0x08) && ((Arg0 == 0x80) || (
345 Arg0 == 0x82))) || ((PDC1 & 0x10) && (Arg0 == 0x81))))
346 {
347 Notify (\_PR.CPU1, Arg0)
348 }
349
350 If ((((PDC2 & 0x08) && ((Arg0 == 0x80) || (
351 Arg0 == 0x82))) || ((PDC2 & 0x10) && (Arg0 == 0x81))))
352 {
353 Notify (\_PR.CPU2, Arg0)
354 }
355
356 If ((((PDC3 & 0x08) && ((Arg0 == 0x80) || (
357 Arg0 == 0x82))) || ((PDC3 & 0x10) && (Arg0 == 0x81))))
358 {
359 Notify (\_PR.CPU3, Arg0)
360 }
361
362 If ((((PDC4 & 0x08) && ((Arg0 == 0x80) || (
363 Arg0 == 0x82))) || ((PDC4 & 0x10) && (Arg0 == 0x81))))
364 {
365 Notify (\_PR.CPU4, Arg0)
366 }
367
368 If ((((PDC5 & 0x08) && ((Arg0 == 0x80) || (
369 Arg0 == 0x82))) || ((PDC5 & 0x10) && (Arg0 == 0x81))))
370 {
371 Notify (\_PR.CPU5, Arg0)
372 }
373
374 If ((((PDC6 & 0x08) && ((Arg0 == 0x80) || (
375 Arg0 == 0x82))) || ((PDC6 & 0x10) && (Arg0 == 0x81))))
376 {
377 Notify (\_PR.CPU6, Arg0)
378 }
379
380 If ((((PDC7 & 0x08) && ((Arg0 == 0x80) || (
381 Arg0 == 0x82))) || ((PDC7 & 0x10) && (Arg0 == 0x81))))
382 {
383 Notify (\_PR.CPU7, Arg0)
384 }
385 }
386 Else
387 {
388 If (((Arg0 == 0x80) || ((Arg0 == 0x81) || (Arg0 == 0x82))))
389 {
390 Notify (\_PR.CPU0, Arg0)
391 }
392 }
393 }
394 }
395 }
396
397 OperationRegion (MNVS, SystemMemory, 0xACD7D018, 0x1000)
398 Field (MNVS, DWordAcc, NoLock, Preserve)
399 {
400 Offset (0xD00),
401 GAPA, 32,
402 GAPL, 32,
403 DCKI, 32,
404 DCKS, 32,
405 VCDL, 1,
406 VCDC, 1,
407 VCDT, 1,
408 VCDD, 1,
409 , 1,
410 VCSS, 1,
411 VCDB, 1,
412 VCIN, 1,
413 VVPO, 8,
414 BRTN, 8,
415 BRLV, 8,
416 CDFL, 8,
417 CDAH, 8,
418 PMOD, 2,
419 PDIR, 1,
420 PDMA, 1,
421 Offset (0xD17),
422 LFDC, 1,
423 Offset (0xD18),
424 C2NA, 1,
425 C3NA, 1,
426 C4NA, 1,
427 C6NA, 1,
428 C7NA, 1,
429 Offset (0xD19),
430 Offset (0xD1A),
431 , 2,
432 , 1,
433 NHPS, 1,
434 NPME, 1,
435 Offset (0xD1B),
436 UOPT, 8,
437 BTID, 32,
438 DPP0, 1,
439 DPP1, 1,
440 DPP2, 1,
441 DPP3, 1,
442 DPP4, 1,
443 DPP5, 1,
444 Offset (0xD21),
445 Offset (0xD22),
446 TCRT, 16,
447 TPSV, 16,
448 TTC1, 16,
449 TTC2, 16,
450 TTSP, 16,
451 SRAH, 8,
452 SRHE, 8,
453 SRE1, 8,
454 SRE2, 8,
455 SRE3, 8,
456 SRE4, 8,
457 SRE5, 8,
458 SRE6, 8,
459 SRU1, 8,
460 SRU2, 8,
461 SRU3, 8,
462 SRU7, 8,
463 SRU4, 8,
464 SRU5, 8,
465 SRU8, 8,
466 SRPB, 8,
467 SRLP, 8,
468 SRSA, 8,
469 SRSM, 8,
470 CWAC, 1,
471 CWAS, 1,
472 CWUE, 1,
473 CWUS, 1,
474 Offset (0xD40),
475 CWAP, 16,
476 CWAT, 16,
477 DBGC, 1,
478 Offset (0xD45),
479 FS1L, 16,
480 FS1M, 16,
481 FS1H, 16,
482 FS2L, 16,
483 FS2M, 16,
484 FS2H, 16,
485 FS3L, 16,
486 FS3M, 16,
487 FS3H, 16,
488 TATC, 1,
489 , 6,
490 TATL, 1,
491 TATW, 8,
492 TNFT, 4,
493 TNTT, 4,
494 TDFA, 4,
495 TDTA, 4,
496 TDFD, 4,
497 TDTD, 4,
498 TCFA, 4,
499 TCTA, 4,
500 TCFD, 4,
501 TCTD, 4,
502 TSFT, 4,
503 TSTT, 4,
504 TIT0, 8,
505 TCR0, 16,
506 TPS0, 16,
507 TIT1, 8,
508 TCR1, 16,
509 TPS1, 16,
510 TIT2, 8,
511 TCR2, 16,
512 TPS2, 16,
513 TIF0, 8,
514 TIF1, 8,
515 TIF2, 8,
516 Offset (0xD78),
517 BTHI, 1,
518 Offset (0xD79),
519 HDIR, 1,
520 HDEH, 1,
521 HDSP, 1,
522 HDPP, 1,
523 HDUB, 1,
524 HDMC, 1,
525 NFCF, 1,
526 Offset (0xD7A),
527 TPME, 8,
528 BIDE, 4,
529 IDET, 4,
530 , 1,
531 DTSE, 1,
532 Offset (0xD7D),
533 DTS0, 8,
534 DTS1, 8,
535 DT00, 1,
536 DT01, 1,
537 DT02, 1,
538 DT03, 1,
539 Offset (0xD80),
540 LIDB, 1,
541 C4WR, 1,
542 C4AC, 1,
543 ODDX, 1,
544 CMPR, 1,
545 ILNF, 1,
546 PLUX, 1,
547 Offset (0xD81),
548 Offset (0xD8C),
549 , 4,
550 , 1,
551 IDMM, 1,
552 Offset (0xD8D),
553 , 3,
554 , 1,
555 , 1,
556 LIDS, 1,
557 Offset (0xD8E),
558 Offset (0xD8F),
559 , 4,
560 Offset (0xD90),
561 TCG0, 1,
562 TCG1, 1,
563 Offset (0xD91),
564 SWGP, 8,
565 IPMS, 8,
566 IPMB, 120,
567 IPMR, 24,
568 IPMO, 24,
569 IPMA, 8,
570 VIGD, 1,
571 VDSC, 1,
572 VMSH, 1,
573 , 1,
574 VDSP, 1,
575 Offset (0xDAA),
576 Offset (0xDAD),
577 ASFT, 8,
578 PL1L, 8,
579 PL1M, 8,
580 CHKC, 32,
581 CHKE, 32,
582 ATRB, 32,
583 Offset (0xDBD),
584 PPCR, 8,
585 TPCR, 5,
586 Offset (0xDBF),
587 Offset (0xDCE),
588 CTPR, 8,
589 PPCA, 8,
590 TPCA, 5,
591 Offset (0xDD1),
592 BFWB, 296,
593 OSPX, 1,
594 OSC4, 1,
595 CPPX, 1,
596 Offset (0xDF7),
597 SPEN, 1,
598 SCRM, 1,
599 , 1,
600 ETAU, 1,
601 IHBC, 1,
602 APMD, 1,
603 APMF, 1,
604 Offset (0xDF8),
605 FTPS, 8,
606 HIST, 8,
607 LPST, 8,
608 LWST, 8,
609 Offset (0xDFF),
610 MTAU, 8,
611 Offset (0xE20),
612 HPET, 32,
613 PKLI, 16,
614 VLCX, 16,
615 VNIT, 8,
616 VBD0, 8,
617 VBDT, 128,
618 VBPL, 16,
619 VBPH, 16,
620 VBML, 8,
621 VBMH, 8,
622 VEDI, 1024,
623 PDCI, 16,
624 ISCG, 32,
625 ISSP, 1,
626 ISWK, 2,
627 ISFS, 3,
628 Offset (0xEC7),
629 SHA1, 160,
630 FFDT, 1,
631 FFCL, 1,
632 Offset (0xEDC),
633 LWCP, 1,
634 LWEN, 1,
635 IOCP, 1,
636 IOEN, 1,
637 IOST, 1,
638 Offset (0xEDD),
639 USBR, 1,
640 Offset (0xEDE),
641 Offset (0xEDF),
642 Offset (0xEE1),
643 BT2T, 1,
644 Offset (0xEE2),
645 TPPP, 8,
646 TPPC, 8,
647 CTPC, 8,
648 FNWK, 8,
649 USBC, 8,
650 XHCC, 8,
651 DTCC, 8,
652 WLCC, 16
653 }
654
655 Field (MNVS, ByteAcc, NoLock, Preserve)
656 {
657 Offset (0xB00),
658 WITM, 8,
659 WSEL, 8,
660 WLS0, 8,
661 WLS1, 8,
662 WLS2, 8,
663 WLS3, 8,
664 WLS4, 8,
665 WLS5, 8,
666 WLS6, 8,
667 WLS7, 8,
668 WLS8, 8,
669 WLS9, 8,
670 WLSA, 8,
671 WLSB, 8,
672 WLSC, 8,
673 WLSD, 8,
674 WENC, 8,
675 WKBD, 8,
676 WPTY, 8,
677 WPAS, 1032,
678 WPNW, 1032,
679 WSPM, 8,
680 WSPS, 8,
681 WSMN, 8,
682 WSMX, 8,
683 WSEN, 8,
684 WSKB, 8,
685 WASB, 8,
686 WASI, 16,
687 WASD, 8,
688 WASS, 32
689 }
690
691 Field (MNVS, ByteAcc, NoLock, Preserve)
692 {
693 Offset (0xA00),
694 DBGS, 1024
695 }
696
697 OperationRegion (GNVS, SystemMemory, 0xACD69C18, 0x036F)
698 Field (GNVS, AnyAcc, Lock, Preserve)
699 {
700 OSYS, 16,
701 SMIF, 8,
702 PRM0, 8,
703 PRM1, 8,
704 Offset (0x0F),
705 PWRS, 8,
706 Offset (0x1E),
707 Offset (0x25),
708 REVN, 8,
709 IFFS, 8,
710 Offset (0x28),
711 APIC, 8,
712 TCNT, 8,
713 PCP0, 8,
714 PCP1, 8,
715 PPCM, 8,
716 PPMF, 32,
717 C67L, 8,
718 Offset (0x44),
719 TL2F, 32,
720 MORD, 8,
721 TCGP, 8,
722 PPRP, 32,
723 PPRQ, 8,
724 LPPR, 8,
725 GTF0, 56,
726 GTF2, 56,
727 IDEM, 8,
728 GTF1, 56,
729 BID, 16,
730 PLID, 8,
731 ECTG, 8,
732 SDPO, 8,
733 SKID, 8,
734 Offset (0x70),
735 OSCC, 8,
736 NEXP, 8,
737 SBV1, 8,
738 SBV2, 8,
739 Offset (0x7A),
740 DSEN, 8,
741 ECON, 8,
742 Offset (0x7D),
743 CTYP, 8,
744 L01C, 8,
745 VFN0, 8,
746 VFN1, 8,
747 VFN2, 8,
748 VFN3, 8,
749 VFN4, 8,
750 VFN5, 8,
751 VFN6, 8,
752 VFN7, 8,
753 VFN8, 8,
754 VFN9, 8,
755 ISCT, 8,
756 SLDR, 32,
757 WAKR, 8,
758 ATMC, 8,
759 PTMC, 8,
760 ATRA, 8,
761 PTRA, 8,
762 PNHM, 32,
763 TBAB, 32,
764 TBAH, 32,
765 RTIP, 8,
766 TSOD, 8,
767 ATPC, 8,
768 PTPC, 8,
769 PFLV, 8,
770 BREV, 8,
771 PDTS, 8,
772 PKGA, 8,
773 PAMT, 8,
774 AC0F, 8,
775 AC1F, 8,
776 DTS3, 8,
777 DTS4, 8,
778 Offset (0xB0),
779 LTR1, 8,
780 LTR2, 8,
781 LTR3, 8,
782 LTR4, 8,
783 LTR5, 8,
784 LTR6, 8,
785 LTR7, 8,
786 LTR8, 8,
787 OBF1, 8,
788 OBF2, 8,
789 OBF3, 8,
790 OBF4, 8,
791 OBF5, 8,
792 OBF6, 8,
793 OBF7, 8,
794 OBF8, 8,
795 XHCI, 8,
796 XTUB, 32,
797 XTUS, 32,
798 XMPB, 32,
799 DDRF, 8,
800 RTD3, 8,
801 PEP0, 8,
802 PEP3, 8,
803 DPTF, 8,
804 SADE, 8,
805 SACR, 8,
806 SAHT, 8,
807 PCHD, 8,
808 PCHC, 8,
809 PCHH, 8,
810 Offset (0xDB),
811 ECEU, 8,
812 TGFG, 16,
813 MEMD, 8,
814 MEMC, 8,
815 MEMH, 8,
816 FND1, 8,
817 FND2, 8,
818 AMBD, 8,
819 AMAT, 8,
820 AMPT, 8,
821 AMCT, 8,
822 AMHT, 8,
823 SKDE, 8,
824 SKAT, 8,
825 SKPT, 8,
826 SKCT, 8,
827 SKHT, 8,
828 EFDE, 8,
829 EFAT, 8,
830 EFPT, 8,
831 EFCT, 8,
832 EFHT, 8,
833 VRDE, 8,
834 VRAT, 8,
835 VRPT, 8,
836 VRCT, 8,
837 VRHT, 8,
838 DPAP, 8,
839 DPPP, 8,
840 DPCP, 8,
841 DCMP, 8,
842 TRTV, 8,
843 LPOE, 8,
844 LPOP, 8,
845 LPOS, 8,
846 LPOW, 8,
847 LPER, 8,
848 PPSZ, 32,
849 DISE, 8,
850 BGMA, 64,
851 BGMS, 8,
852 BGIA, 16,
853 ICNF, 8,
854 DSP0, 32,
855 DSP1, 32,
856 NFCE, 8,
857 CODS, 8,
858 SNHE, 8,
859 S0ID, 8,
860 CTDB, 8,
861 DKSM, 8,
862 SIO1, 8,
863 SIO2, 8,
864 SPBA, 16,
865 UPXD, 16,
866 Offset (0x1FF),
867 ULCK, 8,
868 Offset (0x207),
869 PWRE, 8,
870 PWRP, 8,
871 XHPR, 8,
872 SDS0, 8,
873 SDS1, 16,
874 SDS2, 8,
875 SDS3, 8,
876 SDS4, 8,
877 SDS5, 8,
878 Offset (0x212),
879 RIC0, 8,
880 PEPY, 8,
881 DVS0, 8,
882 DVS1, 8,
883 DVS2, 8,
884 DVS3, 8,
885 GBSX, 8,
886 IUBE, 8,
887 IUCE, 8,
888 IUDE, 8,
889 ECNO, 8,
890 AUDD, 16,
891 DSPD, 16,
892 IC0D, 16,
893 IC1D, 16,
894 IC1S, 16,
895 VRRD, 16,
896 PSCP, 8,
897 RWAG, 8,
898 I20D, 16,
899 I21D, 16,
900 Offset (0x231),
901 RCG0, 8,
902 ECDB, 8,
903 P2ME, 8,
904 SSH0, 16,
905 SSL0, 16,
906 SSD0, 16,
907 FMH0, 16,
908 FML0, 16,
909 FMD0, 16,
910 FPH0, 16,
911 FPL0, 16,
912 FPD0, 16,
913 SSH1, 16,
914 SSL1, 16,
915 SSD1, 16,
916 FMH1, 16,
917 FML1, 16,
918 FMD1, 16,
919 FPH1, 16,
920 FPL1, 16,
921 FPD1, 16,
922 M0C0, 16,
923 M1C0, 16,
924 M2C0, 16,
925 M0C1, 16,
926 M1C1, 16,
927 M2C1, 16,
928 M0C2, 16,
929 M1C2, 16,
930 M0C3, 16,
931 M1C3, 16,
932 M0C4, 16,
933 M1C4, 16,
934 M0C5, 16,
935 M1C5, 16,
936 TBSF, 8,
937 GIRQ, 32,
938 DMTP, 8,
939 DMTD, 8,
940 DMSH, 8,
941 LANP, 8,
942 Offset (0x27E),
943 SHSB, 8,
944 PLCS, 8,
945 PLVL, 16,
946 GN1E, 8,
947 G1AT, 8,
948 G1PT, 8,
949 G1CT, 8,
950 G1HT, 8,
951 GN2E, 8,
952 G2AT, 8,
953 G2PT, 8,
954 G2CT, 8,
955 G2HT, 8,
956 WWSD, 8,
957 CVSD, 8,
958 SSDD, 8,
959 INLD, 8,
960 IFAT, 8,
961 IFPT, 8,
962 IFCT, 8,
963 IFHT, 8,
964 ANCS, 8,
965 SHTP, 8,
966 BCV4, 8,
967 WTVX, 8,
968 WITX, 8,
969 APFU, 8,
970 SOHP, 8,
971 NOHP, 8,
972 TBSE, 8,
973 WKFN, 8,
974 PEPC, 16,
975 VRSD, 16,
976 PB1E, 8,
977 GNID, 8,
978 MPLT, 16,
979 GR13, 8,
980 CHGE, 8,
981 Offset (0x2B2),
982 SAC3, 8,
983 PCH3, 8,
984 MEM3, 8,
985 AMC3, 8,
986 SKC3, 8,
987 EFC3, 8,
988 VRC3, 8,
989 G1C3, 8,
990 G2C3, 8,
991 IFC3, 8,
992 Offset (0x2BF),
993 SPST, 8,
994 GN3E, 8,
995 G3AT, 8,
996 G3PT, 8,
997 G3CT, 8,
998 G3HT, 8,
999 GN4E, 8,
1000 G4AT, 8,
1001 G4PT, 8,
1002 G4CT, 8,
1003 G4HT, 8,
1004 GN5E, 8,
1005 G5AT, 8,
1006 G5PT, 8,
1007 G5CT, 8,
1008 G5HT, 8,
1009 GN6E, 8,
1010 G6AT, 8,
1011 G6PT, 8,
1012 G6CT, 8,
1013 G6HT, 8,
1014 ECLP, 8,
1015 Offset (0x2D6),
1016 G3C3, 8,
1017 G4C3, 8,
1018 G5C3, 8,
1019 G6C3, 8,
1020 S1DE, 8,
1021 S1AT, 8,
1022 S1PT, 8,
1023 S1CT, 8,
1024 S1HT, 8,
1025 S2DE, 8,
1026 S2AT, 8,
1027 S2PT, 8,
1028 S2CT, 8,
1029 S2HT, 8,
1030 S3DE, 8,
1031 S3AT, 8,
1032 S3PT, 8,
1033 S3CT, 8,
1034 S3HT, 8,
1035 S4DE, 8,
1036 S4AT, 8,
1037 S4PT, 8,
1038 S4CT, 8,
1039 S4HT, 8,
1040 S5DE, 8,
1041 S5AT, 8,
1042 S5PT, 8,
1043 S5CT, 8,
1044 S5HT, 8,
1045 S6DE, 8,
1046 S6AT, 8,
1047 S6PT, 8,
1048 S6CT, 8,
1049 S6HT, 8,
1050 S7DE, 8,
1051 S7AT, 8,
1052 S7PT, 8,
1053 S7CT, 8,
1054 S7HT, 8,
1055 Offset (0x303),
1056 S1S3, 8,
1057 S2S3, 8,
1058 S3S3, 8,
1059 S4S3, 8,
1060 S5S3, 8,
1061 S6S3, 8,
1062 S7S3, 8,
1063 DACT, 8,
1064 MPL1, 16,
1065 MPL2, 16,
1066 SATS, 16,
1067 PCTS, 16,
1068 SKTS, 16,
1069 PSME, 8,
1070 PDT1, 8,
1071 PLM1, 16,
1072 PTW1, 16,
1073 PDT2, 8,
1074 PLM2, 16,
1075 PTW2, 16,
1076 DDT1, 8,
1077 DDP1, 8,
1078 DLI1, 16,
1079 DPL1, 16,
1080 DTW1, 16,
1081 DMI1, 16,
1082 DMA1, 16,
1083 DMT1, 16,
1084 DDT2, 8,
1085 DDP2, 8,
1086 DLI2, 16,
1087 DPL2, 16,
1088 DTW2, 16,
1089 DMI2, 16,
1090 DMA2, 16,
1091 DMT2, 16,
1092 Offset (0x33E),
1093 TBTS, 8,
1094 ECGP, 8,
1095 IVDF, 8,
1096 TPMP, 8,
1097 WIFD, 8,
1098 WFAT, 8,
1099 WFPT, 8,
1100 WFCT, 8,
1101 WFC3, 8,
1102 WFHT, 8,
1103 WAND, 8,
1104 WWAT, 8,
1105 WWPT, 8,
1106 WWCT, 8,
1107 WWC3, 8,
1108 WWHT, 8,
1109 WGID, 8,
1110 WGAT, 8,
1111 WGPT, 8,
1112 WGCT, 8,
1113 WGC3, 8,
1114 WGHT, 8,
1115 STGE, 8,
1116 WDM1, 8,
1117 CID1, 16,
1118 WDM2, 8,
1119 CID2, 16,
1120 WIFE, 8,
1121 DOM1, 8,
1122 LIM1, 16,
1123 TIM1, 16,
1124 DOM2, 8,
1125 LIM2, 16,
1126 TIM2, 16,
1127 DOM3, 8,
1128 LIM3, 16,
1129 TIM3, 16,
1130 TRD0, 8,
1131 TRL0, 8,
1132 TRD1, 8,
1133 TRL1, 8
1134 }
1135
1136 Name (PNVB, 0xACD6BD98)
1137 Name (PNVL, 0x00E4)
1138 OperationRegion (PNVA, SystemMemory, PNVB, PNVL)
1139 Field (PNVA, AnyAcc, Lock, Preserve)
1140 {
1141 RCRV, 32,
1142 PCHS, 16,
1143 PCHG, 16,
1144 RPA0, 32,
1145 RPA1, 32,
1146 RPA2, 32,
1147 RPA3, 32,
1148 RPA4, 32,
1149 RPA5, 32,
1150 RPA6, 32,
1151 RPA7, 32,
1152 SRMB, 32,
1153 ADB0, 32,
1154 ADB1, 32,
1155 ADI0, 32,
1156 GPMN, 32,
1157 GPMX, 32,
1158 PML1, 16,
1159 PML2, 16,
1160 PML3, 16,
1161 PML4, 16,
1162 PML5, 16,
1163 PML6, 16,
1164 PML7, 16,
1165 PML8, 16,
1166 PNL1, 16,
1167 PNL2, 16,
1168 PNL3, 16,
1169 PNL4, 16,
1170 PNL5, 16,
1171 PNL6, 16,
1172 PNL7, 16,
1173 PNL8, 16,
1174 U0C0, 32,
1175 U1C0, 32,
1176 ADFM, 32,
1177 ADBT, 8,
1178 XHPC, 8,
1179 XRPC, 8,
1180 XSPC, 8,
1181 XSPA, 8,
1182 SMD0, 8,
1183 SMD1, 8,
1184 SMD2, 8,
1185 SMD3, 8,
1186 SMD4, 8,
1187 SMD5, 8,
1188 SMD6, 8,
1189 SMD7, 8,
1190 SIR0, 8,
1191 SIR1, 8,
1192 SIR2, 8,
1193 SIR3, 8,
1194 SIR4, 8,
1195 SIR5, 8,
1196 SIR6, 8,
1197 SIR7, 8,
1198 SB00, 32,
1199 SB01, 32,
1200 SB02, 32,
1201 SB03, 32,
1202 SB04, 32,
1203 SB05, 32,
1204 SB06, 32,
1205 SB07, 32,
1206 SB10, 32,
1207 SB11, 32,
1208 SB12, 32,
1209 SB13, 32,
1210 SB14, 32,
1211 SB15, 32,
1212 SB16, 32,
1213 SB17, 32,
1214 SMGP, 8,
1215 GBEP, 8,
1216 PMSI, 8,
1217 PMCP, 8,
1218 PCLP, 8,
1219 PL1P, 16,
1220 PL1A, 32,
1221 PL1B, 8,
1222 PEPL, 16,
1223 PRPL, 16,
1224 PCIT, 8,
1225 PLTP, 16,
1226 PLTD, 32,
1227 PED2, 16,
1228 PRDC, 16,
1229 PED1, 16,
1230 PCHP, 16,
1231 XWMB, 32
1232 }
1233
1234 Scope (\_SB)
1235 {
1236 Method (_INI, 0, NotSerialized) // _INI: Initialize
1237 {
1238 If (CondRefOf (\_OSI, Local0))
1239 {
1240 If (\_OSI ("Windows 2001"))
1241 {
1242 \WNTF = 0x01
1243 \WXPF = 0x01
1244 \WSPV = 0x00
1245 OSYS = 0x07D1
1246 }
1247
1248 If (\_OSI ("Windows 2001 SP1"))
1249 {
1250 \WSPV = 0x01
1251 OSYS = 0x07D1
1252 }
1253
1254 If (\_OSI ("Windows 2001 SP2"))
1255 {
1256 \WSPV = 0x02
1257 OSYS = 0x07D2
1258 }
1259
1260 If (\_OSI ("Windows 2006"))
1261 {
1262 \WVIS = 0x01
1263 OSYS = 0x07D6
1264 }
1265
1266 If (\_OSI ("Windows 2009"))
1267 {
1268 \WIN7 = 0x01
1269 OSYS = 0x07D9
1270 }
1271
1272 If (\_OSI ("Windows 2012"))
1273 {
1274 \WIN8 = 0x01
1275 OSYS = 0x07DC
1276 }
1277
1278 If (\_OSI ("Windows 2013"))
1279 {
1280 \WIN8 = 0x01
1281 OSYS = 0x07DD
1282 }
1283
1284 If (\_OSI ("Windows 2015"))
1285 {
1286 \WIN8 = 0x01
1287 OSYS = 0x07DF
1288 }
1289
1290 If (\_OSI ("Linux"))
1291 {
1292 \LNUX = 0x01
1293 OSYS = 0x03E8
1294 }
1295
1296 If (\_OSI ("FreeBSD"))
1297 {
1298 \LNUX = 0x01
1299 OSYS = 0x03E8
1300 }
1301 }
1302 Else
1303 {
1304 If ((\SCMP (\_OS, "Microsoft Windows NT") == Zero))
1305 {
1306 \WNTF = 0x01
1307 }
1308 }
1309
1310 If ((\_REV >= 0x02))
1311 {
1312 \H8DR = 0x01
1313 }
1314
1315 \OSIF = 0x01
1316 \PWRS = \_SB.PCI0.LPC.EC.AC._PSR ()
1317 \_SB.PCI0.LPC.MOU.MHID ()
1318 If (\LNUX)
1319 {
1320 \_SB.PCI0.LPC.EC.SAUM (0x02)
1321 \UCMS (0x1C)
1322 }
1323
1324 \_SB.PCI0.RID = \SRAH
1325 If (VIGD)
1326 {
1327 \_SB.PCI0.VID.RID = \SRHE
1328 }
1329 Else
1330 {
1331 \_SB.PCI0.PEG.RID = \SRHE
1332 }
1333
1334 \_SB.PCI0.EXP1.RID = \SRE1
1335 \_SB.PCI0.EXP2.RID = \SRE2
1336 \_SB.PCI0.EXP3.RID = \SRE3
1337 \_SB.PCI0.EHC1.RID = \SRU7
1338 \_SB.PCI0.LPC.RID = \SRLP
1339 \_SB.PCI0.SAT1.RID = \SRSA
1340 \_SB.PCI0.SMBU.RID = \SRSM
1341 \UCMS (0x1D)
1342 }
1343
1344 Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities
1345 {
1346 CreateDWordField (Arg3, 0x00, STS0)
1347 CreateDWordField (Arg3, 0x04, CAP0)
1348 If ((Arg0 == ToUUID ("0811b06e-4a27-44f9-8d60-3cbbc22e7b48") /* Platform-wide Capabilities */))
1349 {
1350 If ((Arg1 == One))
1351 {
1352 If ((CAP0 & 0x04))
1353 {
1354 If (!VMSH)
1355 {
1356 If ((RTD3 == 0x00))
1357 {
1358 CAP0 &= 0x3B
1359 STS0 |= 0x10
1360 }
1361 }
1362 }
1363
1364 If ((CAP0 & 0x20))
1365 {
1366 If (CondRefOf (\_SB.PCCD.PENB))
1367 {
1368 If ((\_SB.PCCD.PENB == 0x00))
1369 {
1370 CAP0 &= 0x1F
1371 STS0 |= 0x10
1372 }
1373
1374 If ((\_SB.PCCD.PENB == 0x01))
1375 {
1376 \CPPX = 0x01
1377 }
1378 }
1379 Else
1380 {
1381 CAP0 &= 0x1F
1382 STS0 |= 0x10
1383 }
1384 }
1385 }
1386 Else
1387 {
1388 STS0 &= 0xFFFFFF00
1389 STS0 |= 0x0A
1390 }
1391 }
1392 Else
1393 {
1394 STS0 &= 0xFFFFFF00
1395 STS0 |= 0x06
1396 }
1397
1398 Return (Arg3)
1399 }
1400
1401 Device (LNKA)
1402 {
1403 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1404 Name (_UID, 0x01) // _UID: Unique ID
1405 Method (_STA, 0, NotSerialized) // _STA: Status
1406 {
1407 If (!VPIR (\_SB.PCI0.LPC.PIRA))
1408 {
1409 Return (0x09)
1410 }
1411 Else
1412 {
1413 Return (0x0B)
1414 }
1415 }
1416
1417 Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
1418 {
1419 IRQ (Level, ActiveLow, Shared, )
1420 {3,4,5,6,7,9,10,11}
1421 })
1422 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
1423 {
1424 \_SB.PCI0.LPC.PIRA |= 0x80
1425 }
1426
1427 Name (BUFA, ResourceTemplate ()
1428 {
1429 IRQ (Level, ActiveLow, Shared, _Y00)
1430 {}
1431 })
1432 CreateWordField (BUFA, \_SB.LNKA._Y00._INT, IRA1) // _INT: Interrupts
1433 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
1434 {
1435 Local0 = (\_SB.PCI0.LPC.PIRA & 0x8F)
1436 If (VPIR (Local0))
1437 {
1438 IRA1 = (0x01 << Local0)
1439 }
1440 Else
1441 {
1442 IRA1 = 0x00
1443 }
1444
1445 Return (BUFA) /* \_SB_.LNKA.BUFA */
1446 }
1447
1448 Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
1449 {
1450 CreateWordField (Arg0, 0x01, IRA2)
1451 FindSetRightBit (IRA2, Local0)
1452 Local1 = (\_SB.PCI0.LPC.PIRA & 0x70)
1453 Local1 |= Local0--
1454 \_SB.PCI0.LPC.PIRA = Local1
1455 }
1456 }
1457
1458 Device (LNKB)
1459 {
1460 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1461 Name (_UID, 0x02) // _UID: Unique ID
1462 Method (_STA, 0, NotSerialized) // _STA: Status
1463 {
1464 If (!VPIR (\_SB.PCI0.LPC.PIRB))
1465 {
1466 Return (0x09)
1467 }
1468 Else
1469 {
1470 Return (0x0B)
1471 }
1472 }
1473
1474 Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
1475 {
1476 IRQ (Level, ActiveLow, Shared, )
1477 {3,4,5,6,7,9,10,11}
1478 })
1479 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
1480 {
1481 \_SB.PCI0.LPC.PIRB |= 0x80
1482 }
1483
1484 Name (BUFB, ResourceTemplate ()
1485 {
1486 IRQ (Level, ActiveLow, Shared, _Y01)
1487 {}
1488 })
1489 CreateWordField (BUFB, \_SB.LNKB._Y01._INT, IRB1) // _INT: Interrupts
1490 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
1491 {
1492 Local0 = (\_SB.PCI0.LPC.PIRB & 0x8F)
1493 If (VPIR (Local0))
1494 {
1495 IRB1 = (0x01 << Local0)
1496 }
1497 Else
1498 {
1499 IRB1 = 0x00
1500 }
1501
1502 Return (BUFB) /* \_SB_.LNKB.BUFB */
1503 }
1504
1505 Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
1506 {
1507 CreateWordField (Arg0, 0x01, IRB2)
1508 FindSetRightBit (IRB2, Local0)
1509 Local1 = (\_SB.PCI0.LPC.PIRB & 0x70)
1510 Local1 |= Local0--
1511 \_SB.PCI0.LPC.PIRB = Local1
1512 }
1513 }
1514
1515 Device (LNKC)
1516 {
1517 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1518 Name (_UID, 0x03) // _UID: Unique ID
1519 Method (_STA, 0, NotSerialized) // _STA: Status
1520 {
1521 If (!VPIR (\_SB.PCI0.LPC.PIRC))
1522 {
1523 Return (0x09)
1524 }
1525 Else
1526 {
1527 Return (0x0B)
1528 }
1529 }
1530
1531 Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
1532 {
1533 IRQ (Level, ActiveLow, Shared, )
1534 {3,4,5,6,7,9,10,11}
1535 })
1536 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
1537 {
1538 \_SB.PCI0.LPC.PIRC |= 0x80
1539 }
1540
1541 Name (BUFC, ResourceTemplate ()
1542 {
1543 IRQ (Level, ActiveLow, Shared, _Y02)
1544 {}
1545 })
1546 CreateWordField (BUFC, \_SB.LNKC._Y02._INT, IRC1) // _INT: Interrupts
1547 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
1548 {
1549 Local0 = (\_SB.PCI0.LPC.PIRC & 0x8F)
1550 If (VPIR (Local0))
1551 {
1552 IRC1 = (0x01 << Local0)
1553 }
1554 Else
1555 {
1556 IRC1 = 0x00
1557 }
1558
1559 Return (BUFC) /* \_SB_.LNKC.BUFC */
1560 }
1561
1562 Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
1563 {
1564 CreateWordField (Arg0, 0x01, IRC2)
1565 FindSetRightBit (IRC2, Local0)
1566 Local1 = (\_SB.PCI0.LPC.PIRC & 0x70)
1567 Local1 |= Local0--
1568 \_SB.PCI0.LPC.PIRC = Local1
1569 }
1570 }
1571
1572 Device (LNKD)
1573 {
1574 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1575 Name (_UID, 0x04) // _UID: Unique ID
1576 Method (_STA, 0, NotSerialized) // _STA: Status
1577 {
1578 If (!VPIR (\_SB.PCI0.LPC.PIRD))
1579 {
1580 Return (0x09)
1581 }
1582 Else
1583 {
1584 Return (0x0B)
1585 }
1586 }
1587
1588 Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
1589 {
1590 IRQ (Level, ActiveLow, Shared, )
1591 {3,4,5,6,7,9,10,11}
1592 })
1593 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
1594 {
1595 \_SB.PCI0.LPC.PIRD |= 0x80
1596 }
1597
1598 Name (BUFD, ResourceTemplate ()
1599 {
1600 IRQ (Level, ActiveLow, Shared, _Y03)
1601 {}
1602 })
1603 CreateWordField (BUFD, \_SB.LNKD._Y03._INT, IRD1) // _INT: Interrupts
1604 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
1605 {
1606 Local0 = (\_SB.PCI0.LPC.PIRD & 0x8F)
1607 If (VPIR (Local0))
1608 {
1609 IRD1 = (0x01 << Local0)
1610 }
1611 Else
1612 {
1613 IRD1 = 0x00
1614 }
1615
1616 Return (BUFD) /* \_SB_.LNKD.BUFD */
1617 }
1618
1619 Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
1620 {
1621 CreateWordField (Arg0, 0x01, IRD2)
1622 FindSetRightBit (IRD2, Local0)
1623 Local1 = (\_SB.PCI0.LPC.PIRD & 0x70)
1624 Local1 |= Local0--
1625 \_SB.PCI0.LPC.PIRD = Local1
1626 }
1627 }
1628
1629 Device (LNKE)
1630 {
1631 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1632 Name (_UID, 0x05) // _UID: Unique ID
1633 Method (_STA, 0, NotSerialized) // _STA: Status
1634 {
1635 If (!VPIR (\_SB.PCI0.LPC.PIRE))
1636 {
1637 Return (0x09)
1638 }
1639 Else
1640 {
1641 Return (0x0B)
1642 }
1643 }
1644
1645 Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
1646 {
1647 IRQ (Level, ActiveLow, Shared, )
1648 {3,4,5,6,7,9,10,11}
1649 })
1650 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
1651 {
1652 \_SB.PCI0.LPC.PIRE |= 0x80
1653 }
1654
1655 Name (BUFE, ResourceTemplate ()
1656 {
1657 IRQ (Level, ActiveLow, Shared, _Y04)
1658 {}
1659 })
1660 CreateWordField (BUFE, \_SB.LNKE._Y04._INT, IRE1) // _INT: Interrupts
1661 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
1662 {
1663 Local0 = (\_SB.PCI0.LPC.PIRE & 0x8F)
1664 If (VPIR (Local0))
1665 {
1666 IRE1 = (0x01 << Local0)
1667 }
1668 Else
1669 {
1670 IRE1 = 0x00
1671 }
1672
1673 Return (BUFE) /* \_SB_.LNKE.BUFE */
1674 }
1675
1676 Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
1677 {
1678 CreateWordField (Arg0, 0x01, IRE2)
1679 FindSetRightBit (IRE2, Local0)
1680 Local1 = (\_SB.PCI0.LPC.PIRE & 0x70)
1681 Local1 |= Local0--
1682 \_SB.PCI0.LPC.PIRE = Local1
1683 }
1684 }
1685
1686 Device (LNKF)
1687 {
1688 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1689 Name (_UID, 0x06) // _UID: Unique ID
1690 Method (_STA, 0, NotSerialized) // _STA: Status
1691 {
1692 If (!VPIR (\_SB.PCI0.LPC.PIRF))
1693 {
1694 Return (0x09)
1695 }
1696 Else
1697 {
1698 Return (0x0B)
1699 }
1700 }
1701
1702 Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
1703 {
1704 IRQ (Level, ActiveLow, Shared, )
1705 {3,4,5,6,7,9,10,11}
1706 })
1707 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
1708 {
1709 \_SB.PCI0.LPC.PIRF |= 0x80
1710 }
1711
1712 Name (BUFF, ResourceTemplate ()
1713 {
1714 IRQ (Level, ActiveLow, Shared, _Y05)
1715 {}
1716 })
1717 CreateWordField (BUFF, \_SB.LNKF._Y05._INT, IRF1) // _INT: Interrupts
1718 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
1719 {
1720 Local0 = (\_SB.PCI0.LPC.PIRF & 0x8F)
1721 If (VPIR (Local0))
1722 {
1723 IRF1 = (0x01 << Local0)
1724 }
1725 Else
1726 {
1727 IRF1 = 0x00
1728 }
1729
1730 Return (BUFF) /* \_SB_.LNKF.BUFF */
1731 }
1732
1733 Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
1734 {
1735 CreateWordField (Arg0, 0x01, IRF2)
1736 FindSetRightBit (IRF2, Local0)
1737 Local1 = (\_SB.PCI0.LPC.PIRF & 0x70)
1738 Local1 |= Local0--
1739 \_SB.PCI0.LPC.PIRF = Local1
1740 }
1741 }
1742
1743 Device (LNKG)
1744 {
1745 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1746 Name (_UID, 0x07) // _UID: Unique ID
1747 Method (_STA, 0, NotSerialized) // _STA: Status
1748 {
1749 If (!VPIR (\_SB.PCI0.LPC.PIRG))
1750 {
1751 Return (0x09)
1752 }
1753 Else
1754 {
1755 Return (0x0B)
1756 }
1757 }
1758
1759 Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
1760 {
1761 IRQ (Level, ActiveLow, Shared, )
1762 {3,4,5,6,7,9,10,11}
1763 })
1764 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
1765 {
1766 \_SB.PCI0.LPC.PIRG |= 0x80
1767 }
1768
1769 Name (BUFG, ResourceTemplate ()
1770 {
1771 IRQ (Level, ActiveLow, Shared, _Y06)
1772 {}
1773 })
1774 CreateWordField (BUFG, \_SB.LNKG._Y06._INT, IRG1) // _INT: Interrupts
1775 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
1776 {
1777 Local0 = (\_SB.PCI0.LPC.PIRG & 0x8F)
1778 If (VPIR (Local0))
1779 {
1780 IRG1 = (0x01 << Local0)
1781 }
1782 Else
1783 {
1784 IRG1 = 0x00
1785 }
1786
1787 Return (BUFG) /* \_SB_.LNKG.BUFG */
1788 }
1789
1790 Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
1791 {
1792 CreateWordField (Arg0, 0x01, IRG2)
1793 FindSetRightBit (IRG2, Local0)
1794 Local1 = (\_SB.PCI0.LPC.PIRG & 0x70)
1795 Local1 |= Local0--
1796 \_SB.PCI0.LPC.PIRG = Local1
1797 }
1798 }
1799
1800 Device (LNKH)
1801 {
1802 Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
1803 Name (_UID, 0x08) // _UID: Unique ID
1804 Method (_STA, 0, NotSerialized) // _STA: Status
1805 {
1806 If (!VPIR (\_SB.PCI0.LPC.PIRH))
1807 {
1808 Return (0x09)
1809 }
1810 Else
1811 {
1812 Return (0x0B)
1813 }
1814 }
1815
1816 Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
1817 {
1818 IRQ (Level, ActiveLow, Shared, )
1819 {3,4,5,6,7,9,10,11}
1820 })
1821 Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
1822 {
1823 \_SB.PCI0.LPC.PIRH |= 0x80
1824 }
1825
1826 Name (BUFH, ResourceTemplate ()
1827 {
1828 IRQ (Level, ActiveLow, Shared, _Y07)
1829 {}
1830 })
1831 CreateWordField (BUFH, \_SB.LNKH._Y07._INT, IRH1) // _INT: Interrupts
1832 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
1833 {
1834 Local0 = (\_SB.PCI0.LPC.PIRH & 0x8F)
1835 If (VPIR (Local0))
1836 {
1837 IRH1 = (0x01 << Local0)
1838 }
1839 Else
1840 {
1841 IRH1 = 0x00
1842 }
1843
1844 Return (BUFH) /* \_SB_.LNKH.BUFH */
1845 }
1846
1847 Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
1848 {
1849 CreateWordField (Arg0, 0x01, IRH2)
1850 FindSetRightBit (IRH2, Local0)
1851 Local1 = (\_SB.PCI0.LPC.PIRH & 0x70)
1852 Local1 |= Local0--
1853 \_SB.PCI0.LPC.PIRH = Local1
1854 }
1855 }
1856
1857 Method (VPIR, 1, NotSerialized)
1858 {
1859 Local0 = 0x01
1860 If ((Arg0 & 0x80))
1861 {
1862 Local0 = 0x00
1863 }
1864 Else
1865 {
1866 Local1 = (Arg0 & 0x0F)
1867 If ((Local1 < 0x03))
1868 {
1869 Local0 = 0x00
1870 }
1871 Else
1872 {
1873 If (((Local1 == 0x08) || (Local1 == 0x0D)))
1874 {
1875 Local0 = 0x00
1876 }
1877 }
1878 }
1879
1880 Return (Local0)
1881 }
1882
1883 Device (MEM)
1884 {
1885 Name (_HID, EisaId ("PNP0C01") /* System Board */) // _HID: Hardware ID
1886 Name (MEMS, ResourceTemplate ()
1887 {
1888 Memory32Fixed (ReadWrite,
1889 0x00000000, // Address Base
1890 0x000A0000, // Address Length
1891 )
1892 Memory32Fixed (ReadOnly,
1893 0x000C0000, // Address Base
1894 0x00000000, // Address Length
1895 _Y08)
1896 Memory32Fixed (ReadOnly,
1897 0x000C4000, // Address Base
1898 0x00000000, // Address Length
1899 _Y09)
1900 Memory32Fixed (ReadOnly,
1901 0x000C8000, // Address Base
1902 0x00000000, // Address Length
1903 _Y0A)
1904 Memory32Fixed (ReadOnly,
1905 0x000CC000, // Address Base
1906 0x00000000, // Address Length
1907 _Y0B)
1908 Memory32Fixed (ReadOnly,
1909 0x000D0000, // Address Base
1910 0x00000000, // Address Length
1911 _Y0C)
1912 Memory32Fixed (ReadOnly,
1913 0x000D4000, // Address Base
1914 0x00000000, // Address Length
1915 _Y0D)
1916 Memory32Fixed (ReadOnly,
1917 0x000D8000, // Address Base
1918 0x00000000, // Address Length
1919 _Y0E)
1920 Memory32Fixed (ReadOnly,
1921 0x000DC000, // Address Base
1922 0x00000000, // Address Length
1923 _Y0F)
1924 Memory32Fixed (ReadOnly,
1925 0x000E0000, // Address Base
1926 0x00000000, // Address Length
1927 _Y10)
1928 Memory32Fixed (ReadOnly,
1929 0x000E4000, // Address Base
1930 0x00000000, // Address Length
1931 _Y11)
1932 Memory32Fixed (ReadOnly,
1933 0x000E8000, // Address Base
1934 0x00000000, // Address Length
1935 _Y12)
1936 Memory32Fixed (ReadOnly,
1937 0x000EC000, // Address Base
1938 0x00000000, // Address Length
1939 _Y13)
1940 Memory32Fixed (ReadOnly,
1941 0x000F0000, // Address Base
1942 0x00010000, // Address Length
1943 )
1944 Memory32Fixed (ReadWrite,
1945 0x00100000, // Address Base
1946 0x01EE0000, // Address Length
1947 _Y14)
1948 Memory32Fixed (ReadOnly,
1949 0xFEC00000, // Address Base
1950 0x00140000, // Address Length
1951 _Y15)
1952 Memory32Fixed (ReadOnly,
1953 0xFED4C000, // Address Base
1954 0x012B4000, // Address Length
1955 _Y16)
1956 })
1957 CreateDWordField (MEMS, \_SB.MEM._Y08._LEN, MC0L) // _LEN: Length
1958 CreateDWordField (MEMS, \_SB.MEM._Y09._LEN, MC4L) // _LEN: Length
1959 CreateDWordField (MEMS, \_SB.MEM._Y0A._LEN, MC8L) // _LEN: Length
1960 CreateDWordField (MEMS, \_SB.MEM._Y0B._LEN, MCCL) // _LEN: Length
1961 CreateDWordField (MEMS, \_SB.MEM._Y0C._LEN, MD0L) // _LEN: Length
1962 CreateDWordField (MEMS, \_SB.MEM._Y0D._LEN, MD4L) // _LEN: Length
1963 CreateDWordField (MEMS, \_SB.MEM._Y0E._LEN, MD8L) // _LEN: Length
1964 CreateDWordField (MEMS, \_SB.MEM._Y0F._LEN, MDCL) // _LEN: Length
1965 CreateDWordField (MEMS, \_SB.MEM._Y10._LEN, ME0L) // _LEN: Length
1966 CreateDWordField (MEMS, \_SB.MEM._Y11._LEN, ME4L) // _LEN: Length
1967 CreateDWordField (MEMS, \_SB.MEM._Y12._LEN, ME8L) // _LEN: Length
1968 CreateDWordField (MEMS, \_SB.MEM._Y13._LEN, MECL) // _LEN: Length
1969 CreateBitField (MEMS, \_SB.MEM._Y08._RW, MC0W) // _RW_: Read-Write Status
1970 CreateBitField (MEMS, \_SB.MEM._Y09._RW, MC4W) // _RW_: Read-Write Status
1971 CreateBitField (MEMS, \_SB.MEM._Y0A._RW, MC8W) // _RW_: Read-Write Status
1972 CreateBitField (MEMS, \_SB.MEM._Y0B._RW, MCCW) // _RW_: Read-Write Status
1973 CreateBitField (MEMS, \_SB.MEM._Y0C._RW, MD0W) // _RW_: Read-Write Status
1974 CreateBitField (MEMS, \_SB.MEM._Y0D._RW, MD4W) // _RW_: Read-Write Status
1975 CreateBitField (MEMS, \_SB.MEM._Y0E._RW, MD8W) // _RW_: Read-Write Status
1976 CreateBitField (MEMS, \_SB.MEM._Y0F._RW, MDCW) // _RW_: Read-Write Status
1977 CreateBitField (MEMS, \_SB.MEM._Y10._RW, ME0W) // _RW_: Read-Write Status
1978 CreateBitField (MEMS, \_SB.MEM._Y11._RW, ME4W) // _RW_: Read-Write Status
1979 CreateBitField (MEMS, \_SB.MEM._Y12._RW, ME8W) // _RW_: Read-Write Status
1980 CreateBitField (MEMS, \_SB.MEM._Y13._RW, MECW) // _RW_: Read-Write Status
1981 CreateDWordField (MEMS, \_SB.MEM._Y14._BAS, MEB1) // _BAS: Base Address
1982 CreateDWordField (MEMS, \_SB.MEM._Y14._LEN, MEL1) // _LEN: Length
1983 CreateDWordField (MEMS, \_SB.MEM._Y15._LEN, MEL2) // _LEN: Length
1984 CreateDWordField (MEMS, \_SB.MEM._Y16._LEN, MEL3) // _LEN: Length
1985 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
1986 {
1987 Local0 = (\_SB.PCI0.PAM1 & 0x03)
1988 If (Local0)
1989 {
1990 MC0L = 0x4000
1991 If ((Local0 & 0x02))
1992 {
1993 MC0W = 0x01
1994 }
1995 }
1996
1997 Local0 = (\_SB.PCI0.PAM1 & 0x30)
1998 If (Local0)
1999 {
2000 MC4L = 0x4000
2001 If ((Local0 & 0x20))
2002 {
2003 MC4W = 0x01
2004 }
2005 }
2006
2007 Local0 = (\_SB.PCI0.PAM2 & 0x03)
2008 If (Local0)
2009 {
2010 MC8L = 0x4000
2011 If ((Local0 & 0x02))
2012 {
2013 MC8W = 0x01
2014 }
2015 }
2016
2017 Local0 = (\_SB.PCI0.PAM2 & 0x30)
2018 If (Local0)
2019 {
2020 MCCL = 0x4000
2021 If ((Local0 & 0x20))
2022 {
2023 MCCW = 0x01
2024 }
2025 }
2026
2027 Local0 = (\_SB.PCI0.PAM3 & 0x03)
2028 If (Local0)
2029 {
2030 MD0L = 0x4000
2031 If ((Local0 & 0x02))
2032 {
2033 MD0W = 0x01
2034 }
2035 }
2036
2037 Local0 = (\_SB.PCI0.PAM3 & 0x30)
2038 If (Local0)
2039 {
2040 MD4L = 0x4000
2041 If ((Local0 & 0x20))
2042 {
2043 MD4W = 0x01
2044 }
2045 }
2046
2047 Local0 = (\_SB.PCI0.PAM4 & 0x03)
2048 If (Local0)
2049 {
2050 MD8L = 0x4000
2051 If ((Local0 & 0x02))
2052 {
2053 MD8W = 0x01
2054 }
2055 }
2056
2057 Local0 = (\_SB.PCI0.PAM4 & 0x30)
2058 If (Local0)
2059 {
2060 MDCL = 0x4000
2061 If ((Local0 & 0x20))
2062 {
2063 MDCW = 0x01
2064 }
2065 }
2066
2067 Local0 = (\_SB.PCI0.PAM5 & 0x03)
2068 If (Local0)
2069 {
2070 ME0L = 0x4000
2071 If ((Local0 & 0x02))
2072 {
2073 ME0W = 0x01
2074 }
2075 }
2076
2077 Local0 = (\_SB.PCI0.PAM5 & 0x30)
2078 If (Local0)
2079 {
2080 ME4L = 0x4000
2081 If ((Local0 & 0x20))
2082 {
2083 ME4W = 0x01
2084 }
2085 }
2086
2087 Local0 = (\_SB.PCI0.PAM6 & 0x03)
2088 If (Local0)
2089 {
2090 ME8L = 0x4000
2091 If ((Local0 & 0x02))
2092 {
2093 ME8W = 0x01
2094 }
2095 }
2096
2097 Local0 = (\_SB.PCI0.PAM6 & 0x30)
2098 If (Local0)
2099 {
2100 MECL = 0x4000
2101 If ((Local0 & 0x20))
2102 {
2103 MECW = 0x01
2104 }
2105 }
2106
2107 MEL1 = (\MEMX - MEB1) /* \_SB_.MEM_.MEB1 */
2108 If (!CondRefOf (\_SB.PCI0.LPC.TPM))
2109 {
2110 MEL2 = 0x01400000
2111 MEL3 = 0x00
2112 }
2113 Else
2114 {
2115 If ((\_SB.PCI0.LPC.TPM._STA () != 0x0F))
2116 {
2117 MEL2 = 0x01400000
2118 MEL3 = 0x00
2119 }
2120 }
2121
2122 Return (MEMS) /* \_SB_.MEM_.MEMS */
2123 }
2124 }
2125
2126 Device (LID)
2127 {
2128 Name (_HID, EisaId ("PNP0C0D") /* Lid Device */) // _HID: Hardware ID
2129 Method (_LID, 0, NotSerialized) // _LID: Lid Status
2130 {
2131 If (((\ILNF == 0x00) && (\PLUX == 0x00)))
2132 {
2133 If (\H8DR)
2134 {
2135 Return (\_SB.PCI0.LPC.EC.HPLD)
2136 }
2137 Else
2138 {
2139 If ((\RBEC (0x46) & 0x04))
2140 {
2141 Return (0x01)
2142 }
2143 Else
2144 {
2145 Return (0x00)
2146 }
2147 }
2148 }
2149 Else
2150 {
2151 Return (0x01)
2152 }
2153 }
2154
2155 Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
2156 {
2157 If (\LWCP)
2158 {
2159 Return (Package (0x02)
2160 {
2161 0x0D,
2162 0x04
2163 })
2164 }
2165 Else
2166 {
2167 Return (Package (0x02)
2168 {
2169 0x0D,
2170 0x03
2171 })
2172 }
2173 }
2174
2175 Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
2176 {
2177 If (\H8DR)
2178 {
2179 If (Arg0)
2180 {
2181 \_SB.PCI0.LPC.EC.HWLO = 0x01
2182 }
2183 Else
2184 {
2185 \_SB.PCI0.LPC.EC.HWLO = 0x00
2186 }
2187 }
2188 Else
2189 {
2190 If (Arg0)
2191 {
2192 \MBEC (0x32, 0xFF, 0x04)
2193 }
2194 Else
2195 {
2196 \MBEC (0x32, 0xFB, 0x00)
2197 }
2198 }
2199
2200 If (\LWCP)
2201 {
2202 If (Arg0)
2203 {
2204 \LWEN = 0x01
2205 }
2206 Else
2207 {
2208 \LWEN = 0x00
2209 }
2210 }
2211 }
2212 }
2213
2214 Device (SLPB)
2215 {
2216 Name (_HID, EisaId ("PNP0C0E") /* Sleep Button Device */) // _HID: Hardware ID
2217 Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
2218 {
2219 Return (Package (0x02)
2220 {
2221 0x0D,
2222 0x03
2223 })
2224 }
2225
2226 Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
2227 {
2228 If (\H8DR)
2229 {
2230 If (Arg0)
2231 {
2232 \_SB.PCI0.LPC.EC.HWFN = 0x01
2233 }
2234 Else
2235 {
2236 \_SB.PCI0.LPC.EC.HWFN = 0x00
2237 }
2238 }
2239 Else
2240 {
2241 If (Arg0)
2242 {
2243 \MBEC (0x32, 0xFF, 0x10)
2244 }
2245 Else
2246 {
2247 \MBEC (0x32, 0xEF, 0x00)
2248 }
2249 }
2250 }
2251 }
2252
2253 Scope (\)
2254 {
2255 Name (UPC0, Package (0x04)
2256 {
2257 0xFF,
2258 0x00,
2259 0x00,
2260 0x00
2261 })
2262 Name (PLD0, Buffer (0x10)
2263 {
2264 /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
2265 /* 0008 */ 0x99, 0x11, 0x80, 0x00, 0x03, 0x00, 0x00, 0x00 /* ........ */
2266 })
2267 Name (UPC1, Package (0x04)
2268 {
2269 0xFF,
2270 0x00,
2271 0x00,
2272 0x00
2273 })
2274 Name (PLD1, Buffer (0x10)
2275 {
2276 /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
2277 /* 0008 */ 0x99, 0x11, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00 /* ........ */
2278 })
2279 Name (UPC2, Package (0x04)
2280 {
2281 0xFF,
2282 0x00,
2283 0x00,
2284 0x00
2285 })
2286 Name (PLD2, Buffer (0x10)
2287 {
2288 /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
2289 /* 0008 */ 0x91, 0x12, 0x80, 0x01, 0x03, 0x00, 0x00, 0x00 /* ........ */
2290 })
2291 Name (UPC3, Package (0x04)
2292 {
2293 0x00,
2294 0x02,
2295 0x00,
2296 0x00
2297 })
2298 Name (PLD3, Buffer (0x10)
2299 {
2300 /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
2301 /* 0008 */ 0x48, 0x1D, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00 /* H....... */
2302 })
2303 Name (UPCI, Package (0x04)
2304 {
2305 0x00,
2306 0xFF,
2307 0x00,
2308 0x00
2309 })
2310 Name (PLDI, Buffer (0x10)
2311 {
2312 /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
2313 /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* 0....... */
2314 })
2315 Name (PLDC, Buffer (0x14)
2316 {
2317 /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
2318 /* 0008 */ 0x24, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* $....... */
2319 /* 0010 */ 0xDD, 0x00, 0x95, 0x00 /* .... */
2320 })
2321 }
2322
2323 Device (PCI0)
2324 {
2325 Name (_BBN, 0x00) // _BBN: BIOS Bus Number
2326 Name (_ADR, 0x00) // _ADR: Address
2327 Name (RID, 0x00)
2328 Name (_S3D, 0x02) // _S3D: S3 Device State
2329 Name (LRRT, Package (0x17)
2330 {
2331 Package (0x04)
2332 {
2333 0x0001FFFF,
2334 0x00,
2335 \_SB.LNKA,
2336 0x00
2337 },
2338
2339 Package (0x04)
2340 {
2341 0x0002FFFF,
2342 0x00,
2343 \_SB.LNKA,
2344 0x00
2345 },
2346
2347 Package (0x04)
2348 {
2349 0x0003FFFF,
2350 0x00,
2351 \_SB.LNKA,
2352 0x00
2353 },
2354
2355 Package (0x04)
2356 {
2357 0x0014FFFF,
2358 0x00,
2359 \_SB.LNKA,
2360 0x00
2361 },
2362
2363 Package (0x04)
2364 {
2365 0x0016FFFF,
2366 0x00,
2367 \_SB.LNKA,
2368 0x00
2369 },
2370
2371 Package (0x04)
2372 {
2373 0x0016FFFF,
2374 0x01,
2375 \_SB.LNKB,
2376 0x00
2377 },
2378
2379 Package (0x04)
2380 {
2381 0x0016FFFF,
2382 0x02,
2383 \_SB.LNKC,
2384 0x00
2385 },
2386
2387 Package (0x04)
2388 {
2389 0x0016FFFF,
2390 0x03,
2391 \_SB.LNKD,
2392 0x00
2393 },
2394
2395 Package (0x04)
2396 {
2397 0x0019FFFF,
2398 0x00,
2399 \_SB.LNKE,
2400 0x00
2401 },
2402
2403 Package (0x04)
2404 {
2405 0x001AFFFF,
2406 0x00,
2407 \_SB.LNKA,
2408 0x00
2409 },
2410
2411 Package (0x04)
2412 {
2413 0x001BFFFF,
2414 0x00,
2415 \_SB.LNKG,
2416 0x00
2417 },
2418
2419 Package (0x04)
2420 {
2421 0x001CFFFF,
2422 0x00,
2423 \_SB.LNKA,
2424 0x00
2425 },
2426
2427 Package (0x04)
2428 {
2429 0x001CFFFF,
2430 0x01,
2431 \_SB.LNKB,
2432 0x00
2433 },
2434
2435 Package (0x04)
2436 {
2437 0x001CFFFF,
2438 0x02,
2439 \_SB.LNKC,
2440 0x00
2441 },
2442
2443 Package (0x04)
2444 {
2445 0x001CFFFF,
2446 0x03,
2447 \_SB.LNKD,
2448 0x00
2449 },
2450
2451 Package (0x04)
2452 {
2453 0x001DFFFF,
2454 0x00,
2455 \_SB.LNKH,
2456 0x00
2457 },
2458
2459 Package (0x04)
2460 {
2461 0x001DFFFF,
2462 0x01,
2463 \_SB.LNKD,
2464 0x00
2465 },
2466
2467 Package (0x04)
2468 {
2469 0x001DFFFF,
2470 0x02,
2471 \_SB.LNKA,
2472 0x00
2473 },
2474
2475 Package (0x04)
2476 {
2477 0x001DFFFF,
2478 0x03,
2479 \_SB.LNKC,
2480 0x00
2481 },
2482
2483 Package (0x04)
2484 {
2485 0x001FFFFF,
2486 0x00,
2487 \_SB.LNKA,
2488 0x00
2489 },
2490
2491 Package (0x04)
2492 {
2493 0x001FFFFF,
2494 0x01,
2495 \_SB.LNKD,
2496 0x00
2497 },
2498
2499 Package (0x04)
2500 {
2501 0x001FFFFF,
2502 0x02,
2503 \_SB.LNKC,
2504 0x00
2505 },
2506
2507 Package (0x04)
2508 {
2509 0x001FFFFF,
2510 0x03,
2511 \_SB.LNKA,
2512 0x00
2513 }
2514 })
2515 Name (ARRT, Package (0x17)
2516 {
2517 Package (0x04)
2518 {
2519 0x0001FFFF,
2520 0x00,
2521 0x00,
2522 0x10
2523 },
2524
2525 Package (0x04)
2526 {
2527 0x0002FFFF,
2528 0x00,
2529 0x00,
2530 0x10
2531 },
2532
2533 Package (0x04)
2534 {
2535 0x0003FFFF,
2536 0x00,
2537 0x00,
2538 0x10
2539 },
2540
2541 Package (0x04)
2542 {
2543 0x0014FFFF,
2544 0x00,
2545 0x00,
2546 0x10
2547 },
2548
2549 Package (0x04)
2550 {
2551 0x0016FFFF,
2552 0x00,
2553 0x00,
2554 0x10
2555 },
2556
2557 Package (0x04)
2558 {
2559 0x0016FFFF,
2560 0x01,
2561 0x00,
2562 0x11
2563 },
2564
2565 Package (0x04)
2566 {
2567 0x0016FFFF,
2568 0x02,
2569 0x00,
2570 0x12
2571 },
2572
2573 Package (0x04)
2574 {
2575 0x0016FFFF,
2576 0x03,
2577 0x00,
2578 0x13
2579 },
2580
2581 Package (0x04)
2582 {
2583 0x0019FFFF,
2584 0x00,
2585 0x00,
2586 0x14
2587 },
2588
2589 Package (0x04)
2590 {
2591 0x001AFFFF,
2592 0x00,
2593 0x00,
2594 0x10
2595 },
2596
2597 Package (0x04)
2598 {
2599 0x001BFFFF,
2600 0x00,
2601 0x00,
2602 0x16
2603 },
2604
2605 Package (0x04)
2606 {
2607 0x001CFFFF,
2608 0x00,
2609 0x00,
2610 0x10
2611 },
2612
2613 Package (0x04)
2614 {
2615 0x001CFFFF,
2616 0x01,
2617 0x00,
2618 0x11
2619 },
2620
2621 Package (0x04)
2622 {
2623 0x001CFFFF,
2624 0x02,
2625 0x00,
2626 0x12
2627 },
2628
2629 Package (0x04)
2630 {
2631 0x001CFFFF,
2632 0x03,
2633 0x00,
2634 0x13
2635 },
2636
2637 Package (0x04)
2638 {
2639 0x001DFFFF,
2640 0x00,
2641 0x00,
2642 0x17
2643 },
2644
2645 Package (0x04)
2646 {
2647 0x001DFFFF,
2648 0x01,
2649 0x00,
2650 0x13
2651 },
2652
2653 Package (0x04)
2654 {
2655 0x001DFFFF,
2656 0x02,
2657 0x00,
2658 0x10
2659 },
2660
2661 Package (0x04)
2662 {
2663 0x001DFFFF,
2664 0x03,
2665 0x00,
2666 0x12
2667 },
2668
2669 Package (0x04)
2670 {
2671 0x001FFFFF,
2672 0x00,
2673 0x00,
2674 0x10
2675 },
2676
2677 Package (0x04)
2678 {
2679 0x001FFFFF,
2680 0x01,
2681 0x00,
2682 0x13
2683 },
2684
2685 Package (0x04)
2686 {
2687 0x001FFFFF,
2688 0x02,
2689 0x00,
2690 0x12
2691 },
2692
2693 Package (0x04)
2694 {
2695 0x001FFFFF,
2696 0x03,
2697 0x00,
2698 0x10
2699 }
2700 })
2701 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
2702 {
2703 If (\GPIC)
2704 {
2705 Return (ARRT) /* \_SB_.PCI0.ARRT */
2706 }
2707 Else
2708 {
2709 Return (LRRT) /* \_SB_.PCI0.LRRT */
2710 }
2711 }
2712
2713 Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */) // _HID: Hardware ID
2714 Name (_CID, EisaId ("PNP0A03") /* PCI Bus */) // _CID: Compatible ID
2715 OperationRegion (HBUS, PCI_Config, Zero, 0x0100)
2716 Field (HBUS, DWordAcc, NoLock, Preserve)
2717 {
2718 Offset (0x63),
2719 , 2,
2720 PXBR, 6
2721 }
2722
2723 OperationRegion (MHCS, PCI_Config, 0x40, 0xC0)
2724 Field (MHCS, DWordAcc, NoLock, Preserve)
2725 {
2726 Offset (0x40),
2727 PAM0, 8,
2728 PAM1, 8,
2729 PAM2, 8,
2730 PAM3, 8,
2731 PAM4, 8,
2732 PAM5, 8,
2733 PAM6, 8,
2734 Offset (0x7C),
2735 , 20,
2736 TLUD, 12
2737 }
2738
2739 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
2740 {
2741 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
2742 0x0000, // Granularity
2743 0x0000, // Range Minimum
2744 0x00FF, // Range Maximum
2745 0x0000, // Translation Offset
2746 0x0100, // Length
2747 ,, _Y25)
2748 IO (Decode16,
2749 0x0CF8, // Range Minimum
2750 0x0CF8, // Range Maximum
2751 0x01, // Alignment
2752 0x08, // Length
2753 )
2754 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
2755 0x0000, // Granularity
2756 0x0000, // Range Minimum
2757 0x0CF7, // Range Maximum
2758 0x0000, // Translation Offset
2759 0x0CF8, // Length
2760 ,, , TypeStatic)
2761 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
2762 0x0000, // Granularity
2763 0x0D00, // Range Minimum
2764 0xFFFF, // Range Maximum
2765 0x0000, // Translation Offset
2766 0xF300, // Length
2767 ,, , TypeStatic)
2768 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2769 0x00000000, // Granularity
2770 0x000A0000, // Range Minimum
2771 0x000BFFFF, // Range Maximum
2772 0x00000000, // Translation Offset
2773 0x00020000, // Length
2774 ,, , AddressRangeMemory, TypeStatic)
2775 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2776 0x00000000, // Granularity
2777 0x000C0000, // Range Minimum
2778 0x000C3FFF, // Range Maximum
2779 0x00000000, // Translation Offset
2780 0x00004000, // Length
2781 ,, _Y17, AddressRangeMemory, TypeStatic)
2782 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2783 0x00000000, // Granularity
2784 0x000C4000, // Range Minimum
2785 0x000C7FFF, // Range Maximum
2786 0x00000000, // Translation Offset
2787 0x00004000, // Length
2788 ,, _Y18, AddressRangeMemory, TypeStatic)
2789 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2790 0x00000000, // Granularity
2791 0x000C8000, // Range Minimum
2792 0x000CBFFF, // Range Maximum
2793 0x00000000, // Translation Offset
2794 0x00004000, // Length
2795 ,, _Y19, AddressRangeMemory, TypeStatic)
2796 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2797 0x00000000, // Granularity
2798 0x000CC000, // Range Minimum
2799 0x000CFFFF, // Range Maximum
2800 0x00000000, // Translation Offset
2801 0x00004000, // Length
2802 ,, _Y1A, AddressRangeMemory, TypeStatic)
2803 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2804 0x00000000, // Granularity
2805 0x000D0000, // Range Minimum
2806 0x000D3FFF, // Range Maximum
2807 0x00000000, // Translation Offset
2808 0x00004000, // Length
2809 ,, _Y1B, AddressRangeMemory, TypeStatic)
2810 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2811 0x00000000, // Granularity
2812 0x000D4000, // Range Minimum
2813 0x000D7FFF, // Range Maximum
2814 0x00000000, // Translation Offset
2815 0x00004000, // Length
2816 ,, _Y1C, AddressRangeMemory, TypeStatic)
2817 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2818 0x00000000, // Granularity
2819 0x000D8000, // Range Minimum
2820 0x000DBFFF, // Range Maximum
2821 0x00000000, // Translation Offset
2822 0x00004000, // Length
2823 ,, _Y1D, AddressRangeMemory, TypeStatic)
2824 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2825 0x00000000, // Granularity
2826 0x000DC000, // Range Minimum
2827 0x000DFFFF, // Range Maximum
2828 0x00000000, // Translation Offset
2829 0x00004000, // Length
2830 ,, _Y1E, AddressRangeMemory, TypeStatic)
2831 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2832 0x00000000, // Granularity
2833 0x000E0000, // Range Minimum
2834 0x000E3FFF, // Range Maximum
2835 0x00000000, // Translation Offset
2836 0x00004000, // Length
2837 ,, _Y1F, AddressRangeMemory, TypeStatic)
2838 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2839 0x00000000, // Granularity
2840 0x000E4000, // Range Minimum
2841 0x000E7FFF, // Range Maximum
2842 0x00000000, // Translation Offset
2843 0x00004000, // Length
2844 ,, _Y20, AddressRangeMemory, TypeStatic)
2845 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2846 0x00000000, // Granularity
2847 0x000E8000, // Range Minimum
2848 0x000EBFFF, // Range Maximum
2849 0x00000000, // Translation Offset
2850 0x00004000, // Length
2851 ,, _Y21, AddressRangeMemory, TypeStatic)
2852 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2853 0x00000000, // Granularity
2854 0x000EC000, // Range Minimum
2855 0x000EFFFF, // Range Maximum
2856 0x00000000, // Translation Offset
2857 0x00004000, // Length
2858 ,, _Y22, AddressRangeMemory, TypeStatic)
2859 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2860 0x00000000, // Granularity
2861 0x00100000, // Range Minimum
2862 0xFEBFFFFF, // Range Maximum
2863 0x00000000, // Translation Offset
2864 0xFEB00000, // Length
2865 ,, _Y23, AddressRangeMemory, TypeStatic)
2866 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
2867 0x00000000, // Granularity
2868 0xFED40000, // Range Minimum
2869 0xFED4BFFF, // Range Maximum
2870 0x00000000, // Translation Offset
2871 0x0000C000, // Length
2872 ,, _Y24, AddressRangeMemory, TypeStatic)
2873 })
2874 CreateDWordField (_CRS, \_SB.PCI0._Y17._LEN, C0LN) // _LEN: Length
2875 CreateDWordField (_CRS, \_SB.PCI0._Y18._LEN, C4LN) // _LEN: Length
2876 CreateDWordField (_CRS, \_SB.PCI0._Y19._LEN, C8LN) // _LEN: Length
2877 CreateDWordField (_CRS, \_SB.PCI0._Y1A._LEN, CCLN) // _LEN: Length
2878 CreateDWordField (_CRS, \_SB.PCI0._Y1B._LEN, D0LN) // _LEN: Length
2879 CreateDWordField (_CRS, \_SB.PCI0._Y1C._LEN, D4LN) // _LEN: Length
2880 CreateDWordField (_CRS, \_SB.PCI0._Y1D._LEN, D8LN) // _LEN: Length
2881 CreateDWordField (_CRS, \_SB.PCI0._Y1E._LEN, DCLN) // _LEN: Length
2882 CreateDWordField (_CRS, \_SB.PCI0._Y1F._LEN, E0LN) // _LEN: Length
2883 CreateDWordField (_CRS, \_SB.PCI0._Y20._LEN, E4LN) // _LEN: Length
2884 CreateDWordField (_CRS, \_SB.PCI0._Y21._LEN, E8LN) // _LEN: Length
2885 CreateDWordField (_CRS, \_SB.PCI0._Y22._LEN, ECLN) // _LEN: Length
2886 CreateDWordField (_CRS, \_SB.PCI0._Y23._MIN, XXMN) // _MIN: Minimum Base Address
2887 CreateDWordField (_CRS, \_SB.PCI0._Y23._MAX, XXMX) // _MAX: Maximum Base Address
2888 CreateDWordField (_CRS, \_SB.PCI0._Y23._LEN, XXLN) // _LEN: Length
2889 CreateDWordField (_CRS, \_SB.PCI0._Y24._MIN, F4MN) // _MIN: Minimum Base Address
2890 CreateDWordField (_CRS, \_SB.PCI0._Y24._MAX, F4MX) // _MAX: Maximum Base Address
2891 CreateDWordField (_CRS, \_SB.PCI0._Y24._LEN, F4LN) // _LEN: Length
2892 CreateWordField (_CRS, \_SB.PCI0._Y25._MAX, B0MX) // _MAX: Maximum Base Address
2893 CreateWordField (_CRS, \_SB.PCI0._Y25._LEN, B0LN) // _LEN: Length
2894 Method (_INI, 0, Serialized) // _INI: Initialize
2895 {
2896 B0MX = 0x3F
2897 B0LN = (0x3F + 0x01)
2898 If (!\OSIF)
2899 {
2900 \_SB._INI ()
2901 }
2902
2903 Local0 = (TLUD << 0x14)
2904 \MEMX = Local0
2905 XXMN = Local0
2906 XXLN = ((XXMX - XXMN) + 0x01)
2907 If ((\TPMP == 0x00))
2908 {
2909 F4LN = 0x00
2910 }
2911
2912 If ((PAM1 & 0x03))
2913 {
2914 C0LN = 0x00
2915 }
2916
2917 If ((PAM1 & 0x30))
2918 {
2919 C4LN = 0x00
2920 }
2921
2922 If ((PAM2 & 0x03))
2923 {
2924 C8LN = 0x00
2925 }
2926
2927 If ((PAM2 & 0x30))
2928 {
2929 CCLN = 0x00
2930 }
2931
2932 If ((PAM3 & 0x03))
2933 {
2934 D0LN = 0x00
2935 }
2936
2937 If ((PAM3 & 0x30))
2938 {
2939 D4LN = 0x00
2940 }
2941
2942 If ((PAM4 & 0x03))
2943 {
2944 D8LN = 0x00
2945 }
2946
2947 If ((PAM4 & 0x30))
2948 {
2949 DCLN = 0x00
2950 }
2951
2952 If ((PAM5 & 0x03))
2953 {
2954 E0LN = 0x00
2955 }
2956
2957 If ((PAM5 & 0x30))
2958 {
2959 E4LN = 0x00
2960 }
2961
2962 If ((PAM6 & 0x03))
2963 {
2964 E8LN = 0x00
2965 }
2966
2967 If ((PAM6 & 0x30))
2968 {
2969 ECLN = 0x00
2970 }
2971 }
2972
2973 Name (SUPP, 0x00)
2974 Name (CTRL, 0x00)
2975 Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
2976 {
2977 CreateDWordField (Arg3, 0x00, CDW1)
2978 CreateDWordField (Arg3, 0x04, CDW2)
2979 CreateDWordField (Arg3, 0x08, CDW3)
2980 If (\_SB.PCI0.XHCI.CUID (Arg0))
2981 {
2982 Return (\_SB.PCI0.XHCI.POSC (Arg1, Arg2, Arg3))
2983 }
2984
2985 If ((Arg0 == ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */))
2986 {
2987 SUPP = CDW2 /* \_SB_.PCI0._OSC.CDW2 */
2988 CTRL = CDW3 /* \_SB_.PCI0._OSC.CDW3 */
2989 CTRL &= 0x0D
2990 If (!(CDW1 & 0x01))
2991 {
2992 If ((CTRL & 0x01))
2993 {
2994 If (!\VIGD)
2995 {
2996 \_SB.PCI0.PEG.HPGP = 0x00
2997 \_SB.PCI0.PEG.GMGP = 0x00
2998 }
2999
3000 \NHPS = 0x01
3001 }
3002
3003 If ((CTRL & 0x04))
3004 {
3005 If (!\VIGD)
3006 {
3007 \_SB.PCI0.PEG.PMGP = 0x00
3008 \_SB.PCI0.PEG.GMGP = 0x00
3009 }
3010
3011 If (\_SB.PCI0.EXP1.PMEX)
3012 {
3013 \_SB.PCI0.EXP1.PMEX = 0x00
3014 \_SB.PCI0.EXP1.PMSX = 0x01
3015 }
3016
3017 If (\_SB.PCI0.EXP2.PMEX)
3018 {
3019 \_SB.PCI0.EXP2.PMEX = 0x00
3020 \_SB.PCI0.EXP2.PMSX = 0x01
3021 }
3022
3023 If (\_SB.PCI0.EXP3.PMEX)
3024 {
3025 \_SB.PCI0.EXP3.PMEX = 0x00
3026 \_SB.PCI0.EXP3.PMSX = 0x01
3027 }
3028
3029 \_SB.PCI0.LPC.EXPE = 0x00
3030 \NPME = 0x01
3031 }
3032 }
3033
3034 If ((Arg1 != 0x01))
3035 {
3036 CDW1 |= 0x0A
3037 }
3038
3039 If ((CDW3 != CTRL))
3040 {
3041 CDW1 |= 0x10
3042 }
3043
3044 CDW3 = CTRL /* \_SB_.PCI0.CTRL */
3045 }
3046 Else
3047 {
3048 CDW1 |= 0x06
3049 }
3050
3051 Return (Arg3)
3052 }
3053
3054 Mutex (MDGS, 0x07)
3055 Name (VDEE, 0x01)
3056 Name (VDDA, Buffer (0x02) {})
3057 CreateBitField (VDDA, 0x00, VUPC)
3058 CreateBitField (VDDA, 0x01, VQDL)
3059 CreateBitField (VDDA, 0x02, VQDC)
3060 CreateBitField (VDDA, 0x03, VQD0)
3061 CreateBitField (VDDA, 0x04, VQD1)
3062 CreateBitField (VDDA, 0x05, VQD2)
3063 CreateBitField (VDDA, 0x06, VSDL)
3064 CreateBitField (VDDA, 0x07, VSDC)
3065 CreateBitField (VDDA, 0x08, VSD0)
3066 CreateBitField (VDDA, 0x09, VSD1)
3067 CreateBitField (VDDA, 0x0A, VSD2)
3068 CreateBitField (VDDA, 0x0B, VSD3)
3069 CreateBitField (VDDA, 0x0C, VSD4)
3070 CreateBitField (VDDA, 0x0D, VSD5)
3071 CreateBitField (VDDA, 0x0E, MSWT)
3072 Device (VID)
3073 {
3074 Name (_ADR, 0x00020000) // _ADR: Address
3075 Name (RID, 0x00)
3076 OperationRegion (VPCG, PCI_Config, 0x00, 0x0100)
3077 Field (VPCG, DWordAcc, NoLock, Preserve)
3078 {
3079 Offset (0x2C),
3080 VSID, 32,
3081 Offset (0xD4),
3082 VPWR, 8
3083 }
3084
3085 Name (MIDL, 0x0400)
3086 Name (MIDC, 0x0100)
3087 Name (MID0, 0x0300)
3088 Name (MID1, 0x0301)
3089 Name (MID2, 0x0302)
3090 Name (MID3, 0x0303)
3091 Name (MID4, 0x0304)
3092 Name (MID5, 0x0305)
3093 Name (_S3D, 0x03) // _S3D: S3 Device State
3094 Method (VRSI, 0, NotSerialized)
3095 {
3096 If ((OSYS >= 0x07DD))
3097 {
3098 VMSH = 0x01
3099 }
3100 Else
3101 {
3102 VMSH = 0x00
3103 }
3104 }
3105
3106 Method (_INI, 0, NotSerialized) // _INI: Initialize
3107 {
3108 VRSI ()
3109 CLID = \_SB.LID._LID ()
3110 }
3111
3112 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
3113 {
3114 Noop
3115 }
3116
3117 Method (_PS1, 0, NotSerialized) // _PS1: Power State 1
3118 {
3119 Noop
3120 }
3121
3122 Method (_PS2, 0, NotSerialized) // _PS2: Power State 2
3123 {
3124 Noop
3125 }
3126
3127 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
3128 {
3129 Noop
3130 }
3131
3132 Method (VSWT, 0, NotSerialized)
3133 {
3134 GHDS (0x00)
3135 }
3136
3137 Method (VLOC, 1, NotSerialized)
3138 {
3139 If ((Arg0 == \_SB.LID._LID ()))
3140 {
3141 \VSLD (Arg0)
3142 If ((VPWR == 0x00))
3143 {
3144 CLID = Arg0
3145 GNOT (0x02, 0x00)
3146 }
3147 }
3148 }
3149
3150 Method (_DOS, 1, NotSerialized) // _DOS: Disable Output Switching
3151 {
3152 Arg0 &= 0x03
3153 If ((Arg0 == 0x02))
3154 {
3155 Local0 = 0x14
3156 While (Local0)
3157 {
3158 Local0--
3159 Acquire (MDGS, 0xFFFF)
3160 If ((0x00 == MSWT))
3161 {
3162 MSWT = 0x01
3163 Local0 = 0x00
3164 VDEE = Arg0
3165 }
3166
3167 Release (MDGS)
3168 Sleep (0xC8)
3169 }
3170 }
3171 Else
3172 {
3173 Acquire (MDGS, 0xFFFF)
3174 If ((VDEE == 0x02))
3175 {
3176 MSWT = 0x00
3177 }
3178
3179 If ((Arg0 > 0x02))
3180 {
3181 VDEE = 0x01
3182 }
3183 Else
3184 {
3185 VDEE = Arg0
3186 }
3187
3188 Release (MDGS)
3189 }
3190 }
3191
3192 Method (_DOD, 0, NotSerialized) // _DOD: Display Output Devices
3193 {
3194 NDID = 0x00
3195 If ((DIDL != 0x00))
3196 {
3197 NDID++
3198 }
3199
3200 If ((DDL2 != 0x00))
3201 {
3202 NDID++
3203 }
3204
3205 If ((DDL3 != 0x00))
3206 {
3207 NDID++
3208 }
3209
3210 If ((DDL4 != 0x00))
3211 {
3212 NDID++
3213 }
3214
3215 If ((DDL5 != 0x00))
3216 {
3217 NDID++
3218 }
3219
3220 If ((DDL6 != 0x00))
3221 {
3222 NDID++
3223 }
3224
3225 If ((DDL7 != 0x00))
3226 {
3227 NDID++
3228 }
3229
3230 If ((DDL8 != 0x00))
3231 {
3232 NDID++
3233 }
3234
3235 If ((NDID == 0x01))
3236 {
3237 Name (TMP1, Package (0x01)
3238 {
3239 0xFFFFFFFF
3240 })
3241 Index (TMP1, 0x00) = (0x80010000 | (0x0F0F & DIDL))
3242 Return (TMP1) /* \_SB_.PCI0.VID_._DOD.TMP1 */
3243 }
3244
3245 If ((NDID == 0x02))
3246 {
3247 Name (TMP2, Package (0x02)
3248 {
3249 0xFFFFFFFF,
3250 0xFFFFFFFF
3251 })
3252 Index (TMP2, 0x00) = (0x80010000 | (0x0F0F & DIDL))
3253 Index (TMP2, 0x01) = (0x80010000 | (0x0F0F & DDL2))
3254 Return (TMP2) /* \_SB_.PCI0.VID_._DOD.TMP2 */
3255 }
3256
3257 If ((NDID == 0x03))
3258 {
3259 Name (TMP3, Package (0x03)
3260 {
3261 0xFFFFFFFF,
3262 0xFFFFFFFF,
3263 0xFFFFFFFF
3264 })
3265 Index (TMP3, 0x00) = (0x80010000 | (0x0F0F & DIDL))
3266 Index (TMP3, 0x01) = (0x80010000 | (0x0F0F & DDL2))
3267 Index (TMP3, 0x02) = (0x80010000 | (0x0F0F & DDL3))
3268 Return (TMP3) /* \_SB_.PCI0.VID_._DOD.TMP3 */
3269 }
3270
3271 If ((NDID == 0x04))
3272 {
3273 Name (TMP4, Package (0x04)
3274 {
3275 0xFFFFFFFF,
3276 0xFFFFFFFF,
3277 0xFFFFFFFF,
3278 0xFFFFFFFF
3279 })
3280 Index (TMP4, 0x00) = (0x80010000 | (0x0F0F & DIDL))
3281 Index (TMP4, 0x01) = (0x80010000 | (0x0F0F & DDL2))
3282 Index (TMP4, 0x02) = (0x80010000 | (0x0F0F & DDL3))
3283 Index (TMP4, 0x03) = (0x80010000 | (0x0F0F & DDL4))
3284 Return (TMP4) /* \_SB_.PCI0.VID_._DOD.TMP4 */
3285 }
3286
3287 If ((NDID == 0x05))
3288 {
3289 Name (TMP5, Package (0x05)
3290 {
3291 0xFFFFFFFF,
3292 0xFFFFFFFF,
3293 0xFFFFFFFF,
3294 0xFFFFFFFF,
3295 0xFFFFFFFF
3296 })
3297 Index (TMP5, 0x00) = (0x80010000 | (0x0F0F & DIDL))
3298 Index (TMP5, 0x01) = (0x80010000 | (0x0F0F & DDL2))
3299 Index (TMP5, 0x02) = (0x80010000 | (0x0F0F & DDL3))
3300 Index (TMP5, 0x03) = (0x80010000 | (0x0F0F & DDL4))
3301 Index (TMP5, 0x04) = (0x80010000 | (0x0F0F & DDL5))
3302 Return (TMP5) /* \_SB_.PCI0.VID_._DOD.TMP5 */
3303 }
3304
3305 If ((NDID == 0x06))
3306 {
3307 Name (TMP6, Package (0x06)
3308 {
3309 0xFFFFFFFF,
3310 0xFFFFFFFF,
3311 0xFFFFFFFF,
3312 0xFFFFFFFF,
3313 0xFFFFFFFF,
3314 0xFFFFFFFF
3315 })
3316 Index (TMP6, 0x00) = (0x80010000 | (0x0F0F & DIDL))
3317 Index (TMP6, 0x01) = (0x80010000 | (0x0F0F & DDL2))
3318 Index (TMP6, 0x02) = (0x80010000 | (0x0F0F & DDL3))
3319 Index (TMP6, 0x03) = (0x80010000 | (0x0F0F & DDL4))
3320 Index (TMP6, 0x04) = (0x80010000 | (0x0F0F & DDL5))
3321 Index (TMP6, 0x05) = (0x80010000 | (0x0F0F & DDL6))
3322 Return (TMP6) /* \_SB_.PCI0.VID_._DOD.TMP6 */
3323 }
3324
3325 If ((NDID == 0x07))
3326 {
3327 Name (TMP7, Package (0x07)
3328 {
3329 0xFFFFFFFF,
3330 0xFFFFFFFF,
3331 0xFFFFFFFF,
3332 0xFFFFFFFF,
3333 0xFFFFFFFF,
3334 0xFFFFFFFF,
3335 0xFFFFFFFF
3336 })
3337 Index (TMP7, 0x00) = (0x80010000 | (0x0F0F & DIDL))
3338 Index (TMP7, 0x01) = (0x80010000 | (0x0F0F & DDL2))
3339 Index (TMP7, 0x02) = (0x80010000 | (0x0F0F & DDL3))
3340 Index (TMP7, 0x03) = (0x80010000 | (0x0F0F & DDL4))
3341 Index (TMP7, 0x04) = (0x80010000 | (0x0F0F & DDL5))
3342 Index (TMP7, 0x05) = (0x80010000 | (0x0F0F & DDL6))
3343 Index (TMP7, 0x06) = (0x80010000 | (0x0F0F & DDL7))
3344 Return (TMP7) /* \_SB_.PCI0.VID_._DOD.TMP7 */
3345 }
3346
3347 If ((NDID > 0x07))
3348 {
3349 Name (TMP8, Package (0x08)
3350 {
3351 0xFFFFFFFF,
3352 0xFFFFFFFF,
3353 0xFFFFFFFF,
3354 0xFFFFFFFF,
3355 0xFFFFFFFF,
3356 0xFFFFFFFF,
3357 0xFFFFFFFF,
3358 0xFFFFFFFF
3359 })
3360 Index (TMP8, 0x00) = (0x80010000 | (0x0F0F & DIDL))
3361 Index (TMP8, 0x01) = (0x80010000 | (0x0F0F & DDL2))
3362 Index (TMP8, 0x02) = (0x80010000 | (0x0F0F & DDL3))
3363 Index (TMP8, 0x03) = (0x80010000 | (0x0F0F & DDL4))
3364 Index (TMP8, 0x04) = (0x80010000 | (0x0F0F & DDL5))
3365 Index (TMP8, 0x05) = (0x80010000 | (0x0F0F & DDL6))
3366 Index (TMP8, 0x06) = (0x80010000 | (0x0F0F & DDL7))
3367 Index (TMP8, 0x07) = (0x80010000 | (0x0F0F & DDL8))
3368 Return (TMP8) /* \_SB_.PCI0.VID_._DOD.TMP8 */
3369 }
3370
3371 Return (Package (0x01)
3372 {
3373 0x0400
3374 })
3375 }
3376
3377 Method (VDSW, 1, NotSerialized)
3378 {
3379 If ((VPWR == 0x00))
3380 {
3381 GDCK (Arg0)
3382 }
3383 }
3384
3385 Method (VCAD, 1, NotSerialized)
3386 {
3387 Local0 = 0x00
3388 If (((DIDL & 0x0F0F) == Arg0))
3389 {
3390 Local0 = 0x0D
3391 }
3392 Else
3393 {
3394 If (((DDL2 & 0x0F0F) == Arg0))
3395 {
3396 Local0 = 0x0D
3397 }
3398 Else
3399 {
3400 If (((DDL3 & 0x0F0F) == Arg0))
3401 {
3402 Local0 = 0x0D
3403 }
3404 Else
3405 {
3406 If (((DDL4 & 0x0F0F) == Arg0))
3407 {
3408 Local0 = 0x0D
3409 }
3410 Else
3411 {
3412 If (((DDL5 & 0x0F0F) == Arg0))
3413 {
3414 Local0 = 0x0D
3415 }
3416 Else
3417 {
3418 If (((DDL6 & 0x0F0F) == Arg0))
3419 {
3420 Local0 = 0x0D
3421 }
3422 Else
3423 {
3424 If (((DDL7 & 0x0F0F) == Arg0))
3425 {
3426 Local0 = 0x0D
3427 }
3428 Else
3429 {
3430 If (((DDL8 & 0x0F0F) == Arg0))
3431 {
3432 Local0 = 0x0D
3433 }
3434 }
3435 }
3436 }
3437 }
3438 }
3439 }
3440 }
3441
3442 If (((CPDL & 0x0F0F) == Arg0))
3443 {
3444 Local0 |= 0x10
3445 }
3446 Else
3447 {
3448 If (((CPL2 & 0x0F0F) == Arg0))
3449 {
3450 Local0 |= 0x10
3451 }
3452 Else
3453 {
3454 If (((CPL3 & 0x0F0F) == Arg0))
3455 {
3456 Local0 |= 0x10
3457 }
3458 Else
3459 {
3460 If (((CPL4 & 0x0F0F) == Arg0))
3461 {
3462 Local0 |= 0x10
3463 }
3464 Else
3465 {
3466 If (((CPL5 & 0x0F0F) == Arg0))
3467 {
3468 Local0 |= 0x10
3469 }
3470 Else
3471 {
3472 If (((CPL6 & 0x0F0F) == Arg0))
3473 {
3474 Local0 |= 0x10
3475 }
3476 Else
3477 {
3478 If (((CPL7 & 0x0F0F) == Arg0))
3479 {
3480 Local0 |= 0x10
3481 }
3482 Else
3483 {
3484 If (((CPL8 & 0x0F0F) == Arg0))
3485 {
3486 Local0 |= 0x10
3487 }
3488 }
3489 }
3490 }
3491 }
3492 }
3493 }
3494 }
3495
3496 If (((CADL & 0x0F0F) == Arg0))
3497 {
3498 Local0 |= 0x02
3499 }
3500 Else
3501 {
3502 If (((CAL2 & 0x0F0F) == Arg0))
3503 {
3504 Local0 |= 0x02
3505 }
3506 Else
3507 {
3508 If (((CAL3 & 0x0F0F) == Arg0))
3509 {
3510 Local0 |= 0x02
3511 }
3512 Else
3513 {
3514 If (((CAL4 & 0x0F0F) == Arg0))
3515 {
3516 Local0 |= 0x02
3517 }
3518 Else
3519 {
3520 If (((CAL5 & 0x0F0F) == Arg0))
3521 {
3522 Local0 |= 0x02
3523 }
3524 Else
3525 {
3526 If (((CAL6 & 0x0F0F) == Arg0))
3527 {
3528 Local0 |= 0x02
3529 }
3530 Else
3531 {
3532 If (((CAL7 & 0x0F0F) == Arg0))
3533 {
3534 Local0 |= 0x02
3535 }
3536 Else
3537 {
3538 If (((CAL8 & 0x0F0F) == Arg0))
3539 {
3540 Local0 |= 0x02
3541 }
3542 }
3543 }
3544 }
3545 }
3546 }
3547 }
3548 }
3549
3550 Return (Local0)
3551 }
3552
3553 Method (NDDS, 1, NotSerialized)
3554 {
3555 If (((NADL & 0x0F0F) == Arg0))
3556 {
3557 Return (0x01)
3558 }
3559 Else
3560 {
3561 If (((NDL2 & 0x0F0F) == Arg0))
3562 {
3563 Return (0x01)
3564 }
3565 Else
3566 {
3567 If (((NDL3 & 0x0F0F) == Arg0))
3568 {
3569 Return (0x01)
3570 }
3571 Else
3572 {
3573 If (((NDL4 & 0x0F0F) == Arg0))
3574 {
3575 Return (0x01)
3576 }
3577 Else
3578 {
3579 If (((NDL5 & 0x0F0F) == Arg0))
3580 {
3581 Return (0x01)
3582 }
3583 Else
3584 {
3585 If (((NDL6 & 0x0F0F) == Arg0))
3586 {
3587 Return (0x01)
3588 }
3589 Else
3590 {
3591 If (((NDL7 & 0x0F0F) == Arg0))
3592 {
3593 Return (0x01)
3594 }
3595 Else
3596 {
3597 If (((NDL8 & 0x0F0F) == Arg0))
3598 {
3599 Return (0x01)
3600 }
3601 }
3602 }
3603 }
3604 }
3605 }
3606 }
3607 }
3608
3609 Return (0x00)
3610 }
3611
3612 Device (LCD0)
3613 {
3614 Method (_ADR, 0, NotSerialized) // _ADR: Address
3615 {
3616 Return (0x0400)
3617 }
3618
3619 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
3620 {
3621 Return (VCAD (MIDL))
3622 }
3623
3624 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
3625 {
3626 Return (NDDS (MIDL))
3627 }
3628
3629 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
3630 {
3631 VSDL = (Arg0 & 0x01)
3632 }
3633
3634 Method (_DDC, 1, NotSerialized) // _DDC: Display Data Current
3635 {
3636 If ((Arg0 == 0x01))
3637 {
3638 Return (\VEDI)
3639 }
3640 Else
3641 {
3642 If ((Arg0 == 0x02))
3643 {
3644 Return (\VEDI)
3645 }
3646 }
3647
3648 Return (0x00)
3649 }
3650 }
3651
3652 Device (CRT0)
3653 {
3654 Method (_ADR, 0, NotSerialized) // _ADR: Address
3655 {
3656 Return (0x0100)
3657 }
3658
3659 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
3660 {
3661 Return (VCAD (MIDC))
3662 }
3663
3664 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
3665 {
3666 Return (NDDS (MIDC))
3667 }
3668
3669 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
3670 {
3671 VSDC = (Arg0 & 0x01)
3672 }
3673 }
3674
3675 Device (DVI0)
3676 {
3677 Method (_ADR, 0, NotSerialized) // _ADR: Address
3678 {
3679 Return (0x0300)
3680 }
3681
3682 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
3683 {
3684 Return (VCAD (MID0))
3685 }
3686
3687 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
3688 {
3689 Return (NDDS (MID0))
3690 }
3691
3692 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
3693 {
3694 VSD0 = (Arg0 & 0x01)
3695 }
3696 }
3697
3698 Device (DVI1)
3699 {
3700 Method (_ADR, 0, NotSerialized) // _ADR: Address
3701 {
3702 Return (0x0301)
3703 }
3704
3705 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
3706 {
3707 Return (VCAD (MID1))
3708 }
3709
3710 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
3711 {
3712 Return (NDDS (MID1))
3713 }
3714
3715 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
3716 {
3717 VSD1 = (Arg0 & 0x01)
3718 }
3719 }
3720
3721 Device (DVI2)
3722 {
3723 Method (_ADR, 0, NotSerialized) // _ADR: Address
3724 {
3725 Return (0x0302)
3726 }
3727
3728 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
3729 {
3730 Return (VCAD (MID2))
3731 }
3732
3733 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
3734 {
3735 Return (NDDS (MID2))
3736 }
3737
3738 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
3739 {
3740 VSD2 = (Arg0 & 0x01)
3741 }
3742 }
3743
3744 Device (DVI3)
3745 {
3746 Method (_ADR, 0, NotSerialized) // _ADR: Address
3747 {
3748 Return (0x0303)
3749 }
3750
3751 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
3752 {
3753 Return (VCAD (MID3))
3754 }
3755
3756 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
3757 {
3758 Return (NDDS (MID3))
3759 }
3760
3761 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
3762 {
3763 VSD3 = (Arg0 & 0x01)
3764 }
3765 }
3766
3767 Device (DVI4)
3768 {
3769 Method (_ADR, 0, NotSerialized) // _ADR: Address
3770 {
3771 Return (0x0304)
3772 }
3773
3774 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
3775 {
3776 Return (VCAD (MID4))
3777 }
3778
3779 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
3780 {
3781 Return (NDDS (MID4))
3782 }
3783
3784 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
3785 {
3786 VSD4 = (Arg0 & 0x01)
3787 }
3788 }
3789
3790 Device (DVI5)
3791 {
3792 Method (_ADR, 0, NotSerialized) // _ADR: Address
3793 {
3794 Return (0x0305)
3795 }
3796
3797 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
3798 {
3799 Return (VCAD (MID5))
3800 }
3801
3802 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
3803 {
3804 Return (NDDS (MID5))
3805 }
3806
3807 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
3808 {
3809 VSD5 = (Arg0 & 0x01)
3810 }
3811 }
3812 }
3813
3814 Device (LPC)
3815 {
3816 Name (_ADR, 0x001F0000) // _ADR: Address
3817 Name (_S3D, 0x03) // _S3D: S3 Device State
3818 Name (RID, 0x00)
3819 Device (SIO)
3820 {
3821 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
3822 Name (_UID, 0x00) // _UID: Unique ID
3823 Name (SCRS, ResourceTemplate ()
3824 {
3825 IO (Decode16,
3826 0x0010, // Range Minimum
3827 0x0010, // Range Maximum
3828 0x01, // Alignment
3829 0x10, // Length
3830 )
3831 IO (Decode16,
3832 0x0090, // Range Minimum
3833 0x0090, // Range Maximum
3834 0x01, // Alignment
3835 0x10, // Length
3836 )
3837 IO (Decode16,
3838 0x0024, // Range Minimum
3839 0x0024, // Range Maximum
3840 0x01, // Alignment
3841 0x02, // Length
3842 )
3843 IO (Decode16,
3844 0x0028, // Range Minimum
3845 0x0028, // Range Maximum
3846 0x01, // Alignment
3847 0x02, // Length
3848 )
3849 IO (Decode16,
3850 0x002C, // Range Minimum
3851 0x002C, // Range Maximum
3852 0x01, // Alignment
3853 0x02, // Length
3854 )
3855 IO (Decode16,
3856 0x0030, // Range Minimum
3857 0x0030, // Range Maximum
3858 0x01, // Alignment
3859 0x02, // Length
3860 )
3861 IO (Decode16,
3862 0x0034, // Range Minimum
3863 0x0034, // Range Maximum
3864 0x01, // Alignment
3865 0x02, // Length
3866 )
3867 IO (Decode16,
3868 0x0038, // Range Minimum
3869 0x0038, // Range Maximum
3870 0x01, // Alignment
3871 0x02, // Length
3872 )
3873 IO (Decode16,
3874 0x003C, // Range Minimum
3875 0x003C, // Range Maximum
3876 0x01, // Alignment
3877 0x02, // Length
3878 )
3879 IO (Decode16,
3880 0x00A4, // Range Minimum
3881 0x00A4, // Range Maximum
3882 0x01, // Alignment
3883 0x02, // Length
3884 )
3885 IO (Decode16,
3886 0x00A8, // Range Minimum
3887 0x00A8, // Range Maximum
3888 0x01, // Alignment
3889 0x02, // Length
3890 )
3891 IO (Decode16,
3892 0x00AC, // Range Minimum
3893 0x00AC, // Range Maximum
3894 0x01, // Alignment
3895 0x02, // Length
3896 )
3897 IO (Decode16,
3898 0x00B0, // Range Minimum
3899 0x00B0, // Range Maximum
3900 0x01, // Alignment
3901 0x06, // Length
3902 )
3903 IO (Decode16,
3904 0x00B8, // Range Minimum
3905 0x00B8, // Range Maximum
3906 0x01, // Alignment
3907 0x02, // Length
3908 )
3909 IO (Decode16,
3910 0x00BC, // Range Minimum
3911 0x00BC, // Range Maximum
3912 0x01, // Alignment
3913 0x02, // Length
3914 )
3915 IO (Decode16,
3916 0x0050, // Range Minimum
3917 0x0050, // Range Maximum
3918 0x01, // Alignment
3919 0x04, // Length
3920 )
3921 IO (Decode16,
3922 0x0072, // Range Minimum
3923 0x0072, // Range Maximum
3924 0x01, // Alignment
3925 0x06, // Length
3926 )
3927 IO (Decode16,
3928 0x1800, // Range Minimum
3929 0x1800, // Range Maximum
3930 0x01, // Alignment
3931 0xA0, // Length
3932 )
3933 IO (Decode16,
3934 0x0800, // Range Minimum
3935 0x0800, // Range Maximum
3936 0x01, // Alignment
3937 0x80, // Length
3938 )
3939 IO (Decode16,
3940 0x0880, // Range Minimum
3941 0x0880, // Range Maximum
3942 0x01, // Alignment
3943 0x80, // Length
3944 )
3945 IO (Decode16,
3946 0x0900, // Range Minimum
3947 0x0900, // Range Maximum
3948 0x01, // Alignment
3949 0x80, // Length
3950 )
3951 IO (Decode16,
3952 0x0980, // Range Minimum
3953 0x0980, // Range Maximum
3954 0x01, // Alignment
3955 0x80, // Length
3956 )
3957 IO (Decode16,
3958 0x0A00, // Range Minimum
3959 0x0A00, // Range Maximum
3960 0x01, // Alignment
3961 0x80, // Length
3962 )
3963 IO (Decode16,
3964 0x0A80, // Range Minimum
3965 0x0A80, // Range Maximum
3966 0x01, // Alignment
3967 0x80, // Length
3968 )
3969 IO (Decode16,
3970 0x0B00, // Range Minimum
3971 0x0B00, // Range Maximum
3972 0x01, // Alignment
3973 0x80, // Length
3974 )
3975 IO (Decode16,
3976 0x0B80, // Range Minimum
3977 0x0B80, // Range Maximum
3978 0x01, // Alignment
3979 0x80, // Length
3980 )
3981 IO (Decode16,
3982 0x15E0, // Range Minimum
3983 0x15E0, // Range Maximum
3984 0x01, // Alignment
3985 0x10, // Length
3986 )
3987 IO (Decode16,
3988 0x1600, // Range Minimum
3989 0x1600, // Range Maximum
3990 0x01, // Alignment
3991 0x80, // Length
3992 )
3993 IO (Decode16,
3994 0x1640, // Range Minimum
3995 0x1640, // Range Maximum
3996 0x01, // Alignment
3997 0x20, // Length
3998 )
3999 Memory32Fixed (ReadWrite,
4000 0xF8000000, // Address Base
4001 0x04000000, // Address Length
4002 )
4003 Memory32Fixed (ReadWrite,
4004 0xFED1C000, // Address Base
4005 0x00004000, // Address Length
4006 )
4007 Memory32Fixed (ReadWrite,
4008 0xFED10000, // Address Base
4009 0x00004000, // Address Length
4010 )
4011 Memory32Fixed (ReadWrite,
4012 0xFED18000, // Address Base
4013 0x00001000, // Address Length
4014 )
4015 Memory32Fixed (ReadWrite,
4016 0xFED19000, // Address Base
4017 0x00001000, // Address Length
4018 )
4019 Memory32Fixed (ReadWrite,
4020 0xFED45000, // Address Base
4021 0x00007000, // Address Length
4022 )
4023 })
4024 Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
4025 {
4026 If (!CondRefOf (\_SB.PCI0.LPC.TPM))
4027 {
4028 Return (SCRS) /* \_SB_.PCI0.LPC_.SIO_.SCRS */
4029 }
4030 Else
4031 {
4032 If ((\_SB.PCI0.LPC.TPM._STA () == 0x0F))
4033 {
4034 Return (SCRS) /* \_SB_.PCI0.LPC_.SIO_.SCRS */
4035 }
4036 Else
4037 {
4038 Local0 = (SizeOf (SCRS) - 0x02)
4039 Name (BUF0, Buffer (Local0) {})
4040 Local0 += SizeOf (\_SB.PCI0.LPC.TPM.BUF1)
4041 Name (BUF1, Buffer (Local0) {})
4042 BUF0 = SCRS /* \_SB_.PCI0.LPC_.SIO_.SCRS */
4043 Concatenate (BUF0, \_SB.PCI0.LPC.TPM.BUF1, BUF1) /* \_SB_.PCI0.LPC_.SIO_._CRS.BUF1 */
4044 Return (BUF1) /* \_SB_.PCI0.LPC_.SIO_._CRS.BUF1 */
4045 }
4046 }
4047 }
4048 }
4049
4050 OperationRegion (LPCS, PCI_Config, 0x00, 0x0100)
4051 Field (LPCS, AnyAcc, NoLock, Preserve)
4052 {
4053 Offset (0x60),
4054 PIRA, 8,
4055 PIRB, 8,
4056 PIRC, 8,
4057 PIRD, 8,
4058 SERQ, 8,
4059 Offset (0x68),
4060 PIRE, 8,
4061 PIRF, 8,
4062 PIRG, 8,
4063 PIRH, 8,
4064 Offset (0x80),
4065 XU1A, 3,
4066 , 1,
4067 XU2A, 3,
4068 Offset (0x81),
4069 XPA, 2,
4070 , 2,
4071 XFA, 1,
4072 Offset (0x82),
4073 XU1E, 1,
4074 XU2E, 1,
4075 XPE, 1,
4076 XFE, 1,
4077 Offset (0x84),
4078 XG1E, 1,
4079 , 1,
4080 XG1A, 14,
4081 Offset (0x88),
4082 XG2E, 1,
4083 , 1,
4084 XG2A, 14,
4085 Offset (0xA0),
4086 , 2,
4087 CLKR, 1,
4088 , 7,
4089 EXPE, 1,
4090 Offset (0xA2),
4091 Offset (0xAC),
4092 Offset (0xAD),
4093 Offset (0xAE),
4094 XUSB, 1,
4095 Offset (0xB8),
4096 GR00, 2,
4097 , 10,
4098 GR06, 2
4099 }
4100
4101 OperationRegion (LPIO, SystemIO, 0x0800, 0x0400)
4102 Field (LPIO, DWordAcc, NoLock, Preserve)
4103 {
4104 Offset (0x100),
4105 , 30,
4106 DOI0, 1,
4107 Offset (0x108),
4108 , 30,
4109 DOI1, 1,
4110 Offset (0x110),
4111 , 30,
4112 DOI2, 1,
4113 Offset (0x118),
4114 , 30,
4115 DOI3, 1,
4116 Offset (0x158),
4117 , 30,
4118 NFCI, 1,
4119 Offset (0x180),
4120 , 3,
4121 XHPD, 1,
4122 Offset (0x1B0),
4123 , 31,
4124 GLIS, 1,
4125 Offset (0x300),
4126 , 30,
4127 NFCD, 1,
4128 Offset (0x308),
4129 , 31,
4130 NFCP, 1
4131 }
4132
4133 OperationRegion (PMIO, SystemIO, 0x1800, 0x80)
4134 Field (PMIO, AnyAcc, NoLock, Preserve)
4135 {
4136 Offset (0x2A),
4137 , 6,
4138 XHPE, 1,
4139 Offset (0x42),
4140 , 1,
4141 SWGE, 1,
4142 Offset (0x64),
4143 , 9,
4144 SCIS, 1,
4145 Offset (0x66)
4146 }
4147
4148 Device (PIC)
4149 {
4150 Name (_HID, EisaId ("PNP0000") /* 8259-compatible Programmable Interrupt Controller */) // _HID: Hardware ID
4151 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
4152 {
4153 IO (Decode16,
4154 0x0020, // Range Minimum
4155 0x0020, // Range Maximum
4156 0x01, // Alignment
4157 0x02, // Length
4158 )
4159 IO (Decode16,
4160 0x00A0, // Range Minimum
4161 0x00A0, // Range Maximum
4162 0x01, // Alignment
4163 0x02, // Length
4164 )
4165 IO (Decode16,
4166 0x04D0, // Range Minimum
4167 0x04D0, // Range Maximum
4168 0x01, // Alignment
4169 0x02, // Length
4170 )
4171 IRQNoFlags ()
4172 {2}
4173 })
4174 }
4175
4176 Device (TIMR)
4177 {
4178 Name (_HID, EisaId ("PNP0100") /* PC-class System Timer */) // _HID: Hardware ID
4179 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
4180 {
4181 IO (Decode16,
4182 0x0040, // Range Minimum
4183 0x0040, // Range Maximum
4184 0x01, // Alignment
4185 0x04, // Length
4186 )
4187 IRQNoFlags ()
4188 {0}
4189 })
4190 }
4191
4192 Device (HPET)
4193 {
4194 Name (_HID, EisaId ("PNP0103") /* HPET System Timer */) // _HID: Hardware ID
4195 Method (_STA, 0, NotSerialized) // _STA: Status
4196 {
4197 If ((\WNTF && !\WXPF))
4198 {
4199 Return (0x00)
4200 }
4201 Else
4202 {
4203 Return (0x0F)
4204 }
4205
4206 Return (0x00)
4207 }
4208
4209 Name (BUF0, ResourceTemplate ()
4210 {
4211 Memory32Fixed (ReadOnly,
4212 0xFED00000, // Address Base
4213 0x00000400, // Address Length
4214 _Y26)
4215 })
4216 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
4217 {
4218 CreateDWordField (BUF0, \_SB.PCI0.LPC.HPET._Y26._BAS, HPT0) // _BAS: Base Address
4219 HPT0 = \HPET
4220 Return (BUF0) /* \_SB_.PCI0.LPC_.HPET.BUF0 */
4221 }
4222 }
4223
4224 Device (DMAC)
4225 {
4226 Name (_HID, EisaId ("PNP0200") /* PC-class DMA Controller */) // _HID: Hardware ID
4227 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
4228 {
4229 IO (Decode16,
4230 0x0000, // Range Minimum
4231 0x0000, // Range Maximum
4232 0x01, // Alignment
4233 0x10, // Length
4234 )
4235 IO (Decode16,
4236 0x0080, // Range Minimum
4237 0x0080, // Range Maximum
4238 0x01, // Alignment
4239 0x10, // Length
4240 )
4241 IO (Decode16,
4242 0x00C0, // Range Minimum
4243 0x00C0, // Range Maximum
4244 0x01, // Alignment
4245 0x20, // Length
4246 )
4247 DMA (Compatibility, BusMaster, Transfer8_16, )
4248 {4}
4249 })
4250 }
4251
4252 Device (SPKR)
4253 {
4254 Name (_HID, EisaId ("PNP0800") /* Microsoft Sound System Compatible Device */) // _HID: Hardware ID
4255 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
4256 {
4257 IO (Decode16,
4258 0x0061, // Range Minimum
4259 0x0061, // Range Maximum
4260 0x01, // Alignment
4261 0x01, // Length
4262 )
4263 })
4264 }
4265
4266 Device (FPU)
4267 {
4268 Name (_HID, EisaId ("PNP0C04") /* x87-compatible Floating Point Processing Unit */) // _HID: Hardware ID
4269 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
4270 {
4271 IO (Decode16,
4272 0x00F0, // Range Minimum
4273 0x00F0, // Range Maximum
4274 0x01, // Alignment
4275 0x01, // Length
4276 )
4277 IRQNoFlags ()
4278 {13}
4279 })
4280 }
4281
4282 Device (RTC)
4283 {
4284 Name (_HID, EisaId ("PNP0B00") /* AT Real-Time Clock */) // _HID: Hardware ID
4285 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
4286 {
4287 IO (Decode16,
4288 0x0070, // Range Minimum
4289 0x0070, // Range Maximum
4290 0x01, // Alignment
4291 0x02, // Length
4292 )
4293 IRQNoFlags ()
4294 {8}
4295 })
4296 }
4297
4298 Device (KBD)
4299 {
4300 Method (_HID, 0, NotSerialized) // _HID: Hardware ID
4301 {
4302 If (\WIN8)
4303 {
4304 Return (0x7100AE30)
4305 }
4306
4307 Return (0x0303D041)
4308 }
4309
4310 Name (_CID, EisaId ("PNP0303") /* IBM Enhanced Keyboard (101/102-key, PS/2 Mouse) */) // _CID: Compatible ID
4311 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
4312 {
4313 IO (Decode16,
4314 0x0060, // Range Minimum
4315 0x0060, // Range Maximum
4316 0x01, // Alignment
4317 0x01, // Length
4318 )
4319 IO (Decode16,
4320 0x0064, // Range Minimum
4321 0x0064, // Range Maximum
4322 0x01, // Alignment
4323 0x01, // Length
4324 )
4325 IRQNoFlags ()
4326 {1}
4327 })
4328 }
4329
4330 Device (MOU)
4331 {
4332 Name (_HID, EisaId ("IBM3780")) // _HID: Hardware ID
4333 Name (_CID, EisaId ("PNP0F13") /* PS/2 Mouse */) // _CID: Compatible ID
4334 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
4335 {
4336 IRQNoFlags ()
4337 {12}
4338 })
4339 Method (MHID, 0, NotSerialized)
4340 {
4341 If (\_SB.PCI0.LPC.PADD)
4342 {
4343 _HID = 0x80374D24
4344 }
4345 Else
4346 {
4347 If (\_SB.PCI0.LPC.NFCD)
4348 {
4349 _HID = 0x2C00AE30
4350 }
4351 Else
4352 {
4353 _HID = 0x2B00AE30
4354 }
4355 }
4356 }
4357 }
4358
4359 OperationRegion (IMGA, SystemIO, 0x15E0, 0x10)
4360 Field (IMGA, ByteAcc, NoLock, Preserve)
4361 {
4362 Offset (0x01),
4363 Offset (0x02),
4364 Offset (0x03),
4365 WAKR, 16,
4366 Offset (0x0C),
4367 GAIX, 8,
4368 Offset (0x0E),
4369 GADT, 8,
4370 Offset (0x10)
4371 }
4372
4373 IndexField (GAIX, GADT, ByteAcc, NoLock, Preserve)
4374 {
4375 Offset (0x50),
4376 , 3,
4377 IVPW, 1,
4378 DVPW, 1,
4379 BLPL, 1,
4380 Offset (0x51),
4381 TP4R, 1,
4382 PADR, 1,
4383 BPAD, 1,
4384 , 1,
4385 , 1,
4386 PADD, 1,
4387 Offset (0x60),
4388 EPWG, 1,
4389 , 1,
4390 CSON, 1,
4391 DSCI, 1,
4392 DSCS, 1,
4393 DLAN, 1,
4394 Offset (0xC2),
4395 GAID, 8
4396 }
4397
4398 Device (EC)
4399 {
4400 Name (_HID, EisaId ("PNP0C09") /* Embedded Controller Device */) // _HID: Hardware ID
4401 Name (_UID, 0x00) // _UID: Unique ID
4402 Name (_GPE, 0x25) // _GPE: General Purpose Events
4403 Method (_REG, 2, NotSerialized) // _REG: Region Availability
4404 {
4405 If ((Arg0 == 0x03))
4406 {
4407 \H8DR = Arg1
4408 }
4409 }
4410
4411 OperationRegion (ECOR, EmbeddedControl, 0x00, 0x0100)
4412 Field (ECOR, ByteAcc, NoLock, Preserve)
4413 {
4414 HDBM, 1,
4415 , 1,
4416 , 1,
4417 HFNE, 1,
4418 , 1,
4419 , 1,
4420 HLDM, 1,
4421 Offset (0x01),
4422 BBLS, 1,
4423 BTCM, 1,
4424 , 1,
4425 , 1,
4426 , 1,
4427 HBPR, 1,
4428 BTPC, 1,
4429 Offset (0x02),
4430 HDUE, 1,
4431 , 4,
4432 SNLK, 1,
4433 Offset (0x03),
4434 , 3,
4435 TAPM, 1,
4436 , 1,
4437 HAUM, 2,
4438 Offset (0x05),
4439 HSPA, 1,
4440 Offset (0x06),
4441 HSUN, 8,
4442 HSRP, 8,
4443 Offset (0x0C),
4444 HLCL, 8,
4445 , 4,
4446 CALM, 1,
4447 Offset (0x0E),
4448 HFNS, 2,
4449 Offset (0x0F),
4450 , 6,
4451 NULS, 1,
4452 Offset (0x10),
4453 HAM0, 8,
4454 HAM1, 8,
4455 HAM2, 8,
4456 HAM3, 8,
4457 HAM4, 8,
4458 HAM5, 8,
4459 HAM6, 8,
4460 HAM7, 8,
4461 HAM8, 8,
4462 HAM9, 8,
4463 HAMA, 8,
4464 HAMB, 8,
4465 HAMC, 8,
4466 HAMD, 8,
4467 HAME, 8,
4468 HAMF, 8,
4469 Offset (0x23),
4470 HANT, 8,
4471 Offset (0x26),
4472 , 2,
4473 HANA, 2,
4474 Offset (0x27),
4475 Offset (0x28),
4476 , 1,
4477 SKEM, 1,
4478 Offset (0x29),
4479 Offset (0x2A),
4480 HATR, 8,
4481 HT0H, 8,
4482 HT0L, 8,
4483 HT1H, 8,
4484 HT1L, 8,
4485 HFSP, 8,
4486 , 6,
4487 HMUT, 1,
4488 Offset (0x31),
4489 , 2,
4490 HUWB, 1,
4491 Offset (0x32),
4492 HWPM, 1,
4493 HWLB, 1,
4494 HWLO, 1,
4495 HWDK, 1,
4496 HWFN, 1,
4497 HWBT, 1,
4498 HWRI, 1,
4499 HWBU, 1,
4500 HWLU, 1,
4501 Offset (0x34),
4502 , 3,
4503 PIBS, 1,
4504 , 3,
4505 HPLO, 1,
4506 Offset (0x36),
4507 HWAC, 16,
4508 HB0S, 7,
4509 HB0A, 1,
4510 HB1S, 7,
4511 HB1A, 1,
4512 HCMU, 1,
4513 , 2,
4514 OVRQ, 1,
4515 DCBD, 1,
4516 DCWL, 1,
4517 DCWW, 1,
4518 HB1I, 1,
4519 , 1,
4520 KBLT, 1,
4521 BTPW, 1,
4522 FNKC, 1,
4523 HUBS, 1,
4524 BDPW, 1,
4525 BDDT, 1,
4526 HUBB, 1,
4527 Offset (0x46),
4528 , 1,
4529 BTWK, 1,
4530 HPLD, 1,
4531 , 1,
4532 HPAC, 1,
4533 BTST, 1,
4534 Offset (0x47),
4535 HPBU, 1,
4536 , 1,
4537 HBID, 1,
4538 , 3,
4539 HBCS, 1,
4540 HPNF, 1,
4541 , 1,
4542 GSTS, 1,
4543 , 2,
4544 HLBU, 1,
4545 DOCD, 1,
4546 HCBL, 1,
4547 Offset (0x49),
4548 SLUL, 1,
4549 Offset (0x4C),
4550 HTMH, 8,
4551 HTML, 8,
4552 HWAK, 16,
4553 HMPR, 8,
4554 , 7,
4555 HMDN, 1,
4556 Offset (0x78),
4557 TMP0, 8,
4558 Offset (0x80),
4559 Offset (0x81),
4560 HIID, 8,
4561 Offset (0x83),
4562 HFNI, 8,
4563 HSPD, 16,
4564 Offset (0x88),
4565 TSL0, 7,
4566 TSR0, 1,
4567 TSL1, 7,
4568 TSR1, 1,
4569 TSL2, 7,
4570 TSR2, 1,
4571 TSL3, 7,
4572 TSR3, 1,
4573 Offset (0x8D),
4574 HDAA, 3,
4575 HDAB, 3,
4576 HDAC, 2,
4577 Offset (0xB0),
4578 HDEN, 32,
4579 HDEP, 32,
4580 HDEM, 8,
4581 HDES, 8,
4582 Offset (0xC8),
4583 ATMX, 8,
4584 HWAT, 8,
4585 Offset (0xCC),
4586 PWMH, 8,
4587 PWML, 8,
4588 Offset (0xED),
4589 , 4,
4590 HDDD, 1,
4591 Offset (0xFF),
4592 GPLT, 1,
4593 GPLN, 1,
4594 GPSE, 1,
4595 Offset (0x100)
4596 }
4597
4598 Method (_INI, 0, NotSerialized) // _INI: Initialize
4599 {
4600 If (\H8DR)
4601 {
4602 HSPA = 0x00
4603 }
4604 Else
4605 {
4606 \MBEC (0x05, 0xFE, 0x00)
4607 }
4608
4609 \_SB.PCI0.LPC.EC.HKEY.WGIN ()
4610 }
4611
4612 Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
4613 {
4614 IO (Decode16,
4615 0x0062, // Range Minimum
4616 0x0062, // Range Maximum
4617 0x01, // Alignment
4618 0x01, // Length
4619 )
4620 IO (Decode16,
4621 0x0066, // Range Minimum
4622 0x0066, // Range Maximum
4623 0x01, // Alignment
4624 0x01, // Length
4625 )
4626 })
4627 Method (LED, 2, NotSerialized)
4628 {
4629 Local0 = (Arg0 | Arg1)
4630 If (\H8DR)
4631 {
4632 HLCL = Local0
4633 }
4634 Else
4635 {
4636 \WBEC (0x0C, Local0)
4637 }
4638 }
4639
4640 Name (BAON, 0x00)
4641 Name (WBON, 0x00)
4642 Method (BEEP, 1, NotSerialized)
4643 {
4644 If ((Arg0 == 0x05))
4645 {
4646 WBON = 0x00
4647 }
4648
4649 Local2 = WBON /* \_SB_.PCI0.LPC_.EC__.WBON */
4650 If (BAON)
4651 {
4652 If ((Arg0 == 0x00))
4653 {
4654 BAON = 0x00
4655 If (WBON)
4656 {
4657 Local0 = 0x03
4658 Local1 = 0x08
4659 }
4660 Else
4661 {
4662 Local0 = 0x00
4663 Local1 = 0x00
4664 }
4665 }
4666 Else
4667 {
4668 Local0 = 0xFF
4669 Local1 = 0xFF
4670 If ((Arg0 == 0x11))
4671 {
4672 WBON = 0x00
4673 }
4674
4675 If ((Arg0 == 0x10))
4676 {
4677 WBON = 0x01
4678 }
4679 }
4680 }
4681 Else
4682 {
4683 Local0 = Arg0
4684 Local1 = 0xFF
4685 If ((Arg0 == 0x0F))
4686 {
4687 Local0 = Arg0
4688 Local1 = 0x08
4689 BAON = 0x01
4690 }
4691
4692 If ((Arg0 == 0x11))
4693 {
4694 Local0 = 0x00
4695 Local1 = 0x00
4696 WBON = 0x00
4697 }
4698
4699 If ((Arg0 == 0x10))
4700 {
4701 Local0 = 0x03
4702 Local1 = 0x08
4703 WBON = 0x01
4704 }
4705 }
4706
4707 If ((Arg0 == 0x03))
4708 {
4709 WBON = 0x00
4710 If (Local2)
4711 {
4712 Local0 = 0x07
4713 If (((\SPS == 0x03) || (\SPS == 0x04)))
4714 {
4715 Local2 = 0x00
4716 Local0 = 0xFF
4717 Local1 = 0xFF
4718 }
4719 }
4720 }
4721
4722 If ((Arg0 == 0x07))
4723 {
4724 If (Local2)
4725 {
4726 Local2 = 0x00
4727 Local0 = 0xFF
4728 Local1 = 0xFF
4729 }
4730 }
4731
4732 If (\H8DR)
4733 {
4734 If ((Local2 && !WBON))
4735 {
4736 HSRP = 0x00
4737 HSUN = 0x00
4738 Sleep (0x64)
4739 }
4740
4741 If ((Local1 != 0xFF))
4742 {
4743 HSRP = Local1
4744 }
4745
4746 If ((Local0 != 0xFF))
4747 {
4748 HSUN = Local0
4749 }
4750 }
4751 Else
4752 {
4753 If ((Local2 && !WBON))
4754 {
4755 \WBEC (0x07, 0x00)
4756 \WBEC (0x06, 0x00)
4757 Sleep (0x64)
4758 }
4759
4760 If ((Local1 != 0xFF))
4761 {
4762 \WBEC (0x07, Local1)
4763 }
4764
4765 If ((Local0 != 0xFF))
4766 {
4767 \WBEC (0x06, Local0)
4768 }
4769 }
4770
4771 If ((Arg0 == 0x03)) {}
4772 If ((Arg0 == 0x07))
4773 {
4774 Sleep (0x01F4)
4775 }
4776 }
4777
4778 Method (EVNT, 1, NotSerialized)
4779 {
4780 If (\H8DR)
4781 {
4782 If (Arg0)
4783 {
4784 HAM5 |= 0x04
4785 }
4786 Else
4787 {
4788 HAM5 &= 0xFB
4789 }
4790 }
4791 Else
4792 {
4793 If (Arg0)
4794 {
4795 \MBEC (0x15, 0xFF, 0x04)
4796 }
4797 Else
4798 {
4799 \MBEC (0x15, 0xFB, 0x00)
4800 }
4801 }
4802 }
4803
4804 Name (USPS, 0x00)
4805 PowerResource (PUBS, 0x03, 0x0000)
4806 {
4807 Method (_STA, 0, NotSerialized) // _STA: Status
4808 {
4809 If (\H8DR)
4810 {
4811 Local0 = HUBS /* \_SB_.PCI0.LPC_.EC__.HUBS */
4812 }
4813 Else
4814 {
4815 Local0 = (\RBEC (0x3B) & 0x10)
4816 }
4817
4818 If (Local0)
4819 {
4820 Return (0x01)
4821 }
4822 Else
4823 {
4824 Return (0x00)
4825 }
4826 }
4827
4828 Method (_ON, 0, NotSerialized) // _ON_: Power On
4829 {
4830 Local0 = 0x64
4831 While ((USPS && Local0))
4832 {
4833 Sleep (0x01)
4834 Local0--
4835 }
4836
4837 If (\H8DR)
4838 {
4839 HUBS = 0x01
4840 }
4841 Else
4842 {
4843 \MBEC (0x3B, 0xFF, 0x10)
4844 }
4845 }
4846
4847 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
4848 {
4849 USPS = 0x01
4850 If (\H8DR)
4851 {
4852 HUBS = 0x00
4853 }
4854 Else
4855 {
4856 \MBEC (0x3B, 0xEF, 0x00)
4857 }
4858
4859 Sleep (0x14)
4860 USPS = 0x00
4861 }
4862 }
4863
4864 Method (CHKS, 0, NotSerialized)
4865 {
4866 Local0 = 0x03E8
4867 While (HMPR)
4868 {
4869 Sleep (0x01)
4870 Local0--
4871 If (!Local0)
4872 {
4873 Return (0x8080)
4874 }
4875 }
4876
4877 If (HMDN)
4878 {
4879 Return (Zero)
4880 }
4881
4882 Return (0x8081)
4883 }
4884
4885 Method (LPMD, 0, NotSerialized)
4886 {
4887 Local0 = 0x00
4888 Local1 = 0x00
4889 Local2 = 0x00
4890 If (\H8DR)
4891 {
4892 If (HPAC)
4893 {
4894 If (HPLO)
4895 {
4896 Local0 = \LPST
4897 }
4898 Else
4899 {
4900 If ((HWAT < 0x5A))
4901 {
4902 If (HB0A)
4903 {
4904 If (((HB0S & 0x10) || ((HB0S & 0x07) < 0x02)))
4905 {
4906 Local1 = 0x01
4907 }
4908 }
4909 Else
4910 {
4911 Local1 = 0x01
4912 }
4913
4914 If (HB1A)
4915 {
4916 If (((HB1S & 0x10) || ((HB1S & 0x07) < 0x02)))
4917 {
4918 Local2 = 0x01
4919 }
4920 }
4921 Else
4922 {
4923 Local2 = 0x01
4924 }
4925
4926 If ((Local1 && Local2))
4927 {
4928 Local0 = \LPST
4929 }
4930 }
4931 }
4932 }
4933 }
4934 Else
4935 {
4936 If ((\RBEC (0x46) & 0x10))
4937 {
4938 If ((\RBEC (0x34) & 0x80))
4939 {
4940 Local0 = \LPST
4941 }
4942 Else
4943 {
4944 If ((\RBEC (0xC9) < 0x5A))
4945 {
4946 Local3 = \RBEC (0x38)
4947 If ((Local3 & 0x80))
4948 {
4949 If (((Local3 & 0x10) || ((Local3 & 0x07) < 0x02)))
4950 {
4951 Local1 = 0x01
4952 }
4953 }
4954 Else
4955 {
4956 Local2 = 0x01
4957 }
4958
4959 Local3 = \RBEC (0x39)
4960 If ((Local3 & 0x80))
4961 {
4962 If (((Local3 & 0x10) || ((Local3 & 0x07) < 0x02)))
4963 {
4964 Local1 = 0x01
4965 }
4966 }
4967 Else
4968 {
4969 Local2 = 0x01
4970 }
4971
4972 If ((Local1 && Local2))
4973 {
4974 Local0 = \LPST
4975 }
4976 }
4977 }
4978 }
4979 }
4980
4981 Return (Local0)
4982 }
4983
4984 Method (CLPM, 0, NotSerialized)
4985 {
4986 If ((\_PR.CFGD & 0x01))
4987 {
4988 If ((\OSPX || \CPPX))
4989 {
4990 \PNTF (0x80)
4991 }
4992 Else
4993 {
4994 Local0 = LPMD ()
4995 If (Local0)
4996 {
4997 \STEP (0x04)
4998 }
4999 Else
5000 {
5001 \STEP (0x05)
5002 }
5003 }
5004 }
5005 }
5006
5007 Mutex (MCPU, 0x07)
5008 Method (_Q10, 0, NotSerialized) // _Qxx: EC Query
5009 {
5010 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01))
5011 {
5012 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1001)
5013 }
5014 }
5015
5016 Method (_Q11, 0, NotSerialized) // _Qxx: EC Query
5017 {
5018 Noop
5019 }
5020
5021 Method (_Q12, 0, NotSerialized) // _Qxx: EC Query
5022 {
5023 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02))
5024 {
5025 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1002)
5026 }
5027 }
5028
5029 Method (_Q13, 0, NotSerialized) // _Qxx: EC Query
5030 {
5031 If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
5032 {
5033 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1004)
5034 }
5035 Else
5036 {
5037 Notify (\_SB.SLPB, 0x80) // Status Change
5038 }
5039 }
5040
5041 Method (_Q64, 0, NotSerialized) // _Qxx: EC Query
5042 {
5043 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x10))
5044 {
5045 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1005)
5046 }
5047 }
5048
5049 Method (_Q65, 0, NotSerialized) // _Qxx: EC Query
5050 {
5051 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x20))
5052 {
5053 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1006)
5054 }
5055 }
5056
5057 Method (_Q16, 0, NotSerialized) // _Qxx: EC Query
5058 {
5059 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x40))
5060 {
5061 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1007)
5062 }
5063 Else
5064 {
5065 If ((\VHYB (0x03, 0x00) == 0x03))
5066 {
5067 Notify (\_SB.PCI0.VID, 0x80) // Status Change
5068 Return (Zero)
5069 }
5070
5071 If (VIGD)
5072 {
5073 \_SB.PCI0.VID.VSWT ()
5074 }
5075 Else
5076 {
5077 \_SB.PCI0.PEG.VID.VSWT ()
5078 }
5079 }
5080 }
5081
5082 Method (_Q17, 0, NotSerialized) // _Qxx: EC Query
5083 {
5084 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x80))
5085 {
5086 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1008)
5087 }
5088 Else
5089 {
5090 If (!\WNTF)
5091 {
5092 VEXP ()
5093 }
5094 }
5095 }
5096
5097 Method (_Q18, 0, NotSerialized) // _Qxx: EC Query
5098 {
5099 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x0100))
5100 {
5101 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1009)
5102 }
5103
5104 Noop
5105 }
5106
5107 Method (_Q1A, 0, NotSerialized) // _Qxx: EC Query
5108 {
5109 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x0400))
5110 {
5111 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100B)
5112 }
5113 }
5114
5115 Method (_Q1B, 0, NotSerialized) // _Qxx: EC Query
5116 {
5117 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100C)
5118 }
5119
5120 Method (_Q62, 0, NotSerialized) // _Qxx: EC Query
5121 {
5122 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x1000))
5123 {
5124 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100D)
5125 }
5126 }
5127
5128 Method (_Q60, 0, NotSerialized) // _Qxx: EC Query
5129 {
5130 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x2000))
5131 {
5132 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100E)
5133 }
5134 }
5135
5136 Method (_Q61, 0, NotSerialized) // _Qxx: EC Query
5137 {
5138 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x4000))
5139 {
5140 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100F)
5141 }
5142 }
5143
5144 Method (_Q1F, 0, NotSerialized) // _Qxx: EC Query
5145 {
5146 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x00020000))
5147 {
5148 If ((PKLI & 0x0C00))
5149 {
5150 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1012)
5151 }
5152 }
5153
5154 \UCMS (0x0E)
5155 }
5156
5157 Method (_Q1C, 0, NotSerialized) // _Qxx: EC Query
5158 {
5159 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01000000))
5160 {
5161 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1019)
5162 }
5163 }
5164
5165 Method (_Q1D, 0, NotSerialized) // _Qxx: EC Query
5166 {
5167 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02000000))
5168 {
5169 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101A)
5170 }
5171 }
5172
5173 Method (_Q66, 0, NotSerialized) // _Qxx: EC Query
5174 {
5175 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x10000000))
5176 {
5177 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101D)
5178 }
5179 }
5180
5181 Method (_Q67, 0, NotSerialized) // _Qxx: EC Query
5182 {
5183 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x20000000))
5184 {
5185 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101E)
5186 }
5187 }
5188
5189 Method (_Q68, 0, NotSerialized) // _Qxx: EC Query
5190 {
5191 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x40000000))
5192 {
5193 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101F)
5194 }
5195 }
5196
5197 Method (_Q69, 0, NotSerialized) // _Qxx: EC Query
5198 {
5199 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x80000000))
5200 {
5201 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1020)
5202 }
5203 }
5204
5205 Method (_Q26, 0, NotSerialized) // _Qxx: EC Query
5206 {
5207 If (VIGD)
5208 {
5209 If (\WVIS)
5210 {
5211 \VBTD ()
5212 }
5213
5214 \_SB.PCI0.LPC.EC.BRNS ()
5215 }
5216 Else
5217 {
5218 \UCMS (0x12)
5219 }
5220
5221 Sleep (0x01F4)
5222 Notify (AC, 0x80) // Status Change
5223 Notify (\_TZ.THM0, 0x80) // Thermal Status Change
5224 If (\WXPF)
5225 {
5226 Acquire (MCPU, 0xFFFF)
5227 }
5228
5229 PWRS = 0x01
5230 If ((\_PR.CFGD & 0x01))
5231 {
5232 If ((\OSPX || \CPPX))
5233 {
5234 \PNTF (0x80)
5235 }
5236 }
5237
5238 If (\WXPF)
5239 {
5240 Sleep (0x64)
5241 }
5242
5243 If (\OSC4)
5244 {
5245 \PNTF (0x81)
5246 }
5247
5248 If (\WXPF)
5249 {
5250 Release (MCPU)
5251 }
5252
5253 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6040)
5254 ATMC ()
5255 }
5256
5257 Method (_Q27, 0, NotSerialized) // _Qxx: EC Query
5258 {
5259 If (VIGD)
5260 {
5261 If (\WVIS)
5262 {
5263 \VBTD ()
5264 }
5265
5266 \_SB.PCI0.LPC.EC.BRNS ()
5267 }
5268 Else
5269 {
5270 \UCMS (0x12)
5271 }
5272
5273 If (\_SB.PCI0.PEG.VID.ISOP ())
5274 {
5275 Notify (\_SB.PCI0.PEG.VID, 0xDF) // Hardware-Specific
5276 }
5277
5278 Sleep (0x01F4)
5279 Notify (AC, 0x80) // Status Change
5280 Notify (\_TZ.THM0, 0x80) // Thermal Status Change
5281 If (\WXPF)
5282 {
5283 Acquire (MCPU, 0xFFFF)
5284 }
5285
5286 PWRS = 0x00
5287 If ((\_PR.CFGD & 0x01))
5288 {
5289 If ((\OSPX || \CPPX))
5290 {
5291 \PNTF (0x80)
5292 }
5293 }
5294
5295 If (\WXPF)
5296 {
5297 Sleep (0x64)
5298 }
5299
5300 If (\OSC4)
5301 {
5302 \PNTF (0x81)
5303 }
5304
5305 If (\WXPF)
5306 {
5307 Release (MCPU)
5308 }
5309
5310 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6040)
5311 ATMC ()
5312 }
5313
5314 Method (_Q2A, 0, NotSerialized) // _Qxx: EC Query
5315 {
5316 \VCMS (0x01, \_SB.LID._LID ())
5317 If ((\ILNF == 0x00))
5318 {
5319 If (\IOST)
5320 {
5321 If (!\ISOC (0x00))
5322 {
5323 \IOST = 0x00
5324 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x60D0)
5325 }
5326 }
5327
5328 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x5002)
5329 If ((\PLUX == 0x00))
5330 {
5331 If (VIGD)
5332 {
5333 \_SB.PCI0.VID.GLIS (0x01)
5334 \_SB.PCI0.VID.VLOC (0x01)
5335 }
5336 Else
5337 {
5338 \_SB.PCI0.PEG.VID.VLOC (0x01)
5339 }
5340
5341 Notify (\_SB.LID, 0x80) // Status Change
5342 }
5343 }
5344 }
5345
5346 Method (_Q2B, 0, NotSerialized) // _Qxx: EC Query
5347 {
5348 \UCMS (0x0D)
5349 \VCMS (0x01, \_SB.LID._LID ())
5350 If ((\ILNF == 0x00))
5351 {
5352 If ((\IOEN && !\IOST))
5353 {
5354 If (!\ISOC (0x01))
5355 {
5356 \IOST = 0x01
5357 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x60D0)
5358 }
5359 }
5360
5361 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x5001)
5362 If ((\PLUX == 0x00))
5363 {
5364 If (VIGD)
5365 {
5366 \_SB.PCI0.VID.GLIS (0x00)
5367 }
5368 Else
5369 {
5370 \_SB.PCI0.PEG.VID.VLOC (0x00)
5371 }
5372
5373 Notify (\_SB.LID, 0x80) // Status Change
5374 }
5375 }
5376 }
5377
5378 Method (_Q3D, 0, NotSerialized) // _Qxx: EC Query
5379 {
5380 }
5381
5382 Method (_Q48, 0, NotSerialized) // _Qxx: EC Query
5383 {
5384 If ((\_PR.CFGD & 0x01))
5385 {
5386 If ((\OSPX || \CPPX))
5387 {
5388 \PNTF (0x80)
5389 }
5390 Else
5391 {
5392 \STEP (0x04)
5393 }
5394
5395 \_SB.PCI0.LPC.EC.CALM = 0x01
5396 }
5397 }
5398
5399 Method (_Q49, 0, NotSerialized) // _Qxx: EC Query
5400 {
5401 If ((\_PR.CFGD & 0x01))
5402 {
5403 If ((\OSPX || \CPPX))
5404 {
5405 \PNTF (0x80)
5406 }
5407 Else
5408 {
5409 \STEP (0x05)
5410 }
5411 }
5412 }
5413
5414 Method (_Q7F, 0, NotSerialized) // _Qxx: EC Query
5415 {
5416 Fatal (0x01, 0x80010000, 0x1E50)
5417 }
5418
5419 Method (_Q4E, 0, NotSerialized) // _Qxx: EC Query
5420 {
5421 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6011)
5422 }
5423
5424 Method (_Q4F, 0, NotSerialized) // _Qxx: EC Query
5425 {
5426 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6012)
5427 }
5428
5429 Method (_Q46, 0, NotSerialized) // _Qxx: EC Query
5430 {
5431 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6012)
5432 }
5433
5434 Method (_Q7D, 0, NotSerialized) // _Qxx: EC Query
5435 {
5436 \_SB.PCI0.LPC.EC.GPLN = 0x01
5437 Notify (\_SB.PCI0.PEG.VID, 0xD5) // Hardware-Specific
5438 }
5439
5440 Method (_Q7E, 0, NotSerialized) // _Qxx: EC Query
5441 {
5442 Notify (\_SB.PCI0.PEG.VID, 0xD1) // Hardware-Specific
5443 }
5444
5445 Method (_Q22, 0, NotSerialized) // _Qxx: EC Query
5446 {
5447 CLPM ()
5448 If (HB0A)
5449 {
5450 Notify (BAT0, 0x80) // Status Change
5451 }
5452
5453 If (HB1A)
5454 {
5455 Notify (BAT1, 0x80) // Status Change
5456 }
5457 }
5458
5459 Method (_Q4A, 0, NotSerialized) // _Qxx: EC Query
5460 {
5461 CLPM ()
5462 Notify (BAT0, 0x81) // Information Change
5463 }
5464
5465 Method (_Q4B, 0, NotSerialized) // _Qxx: EC Query
5466 {
5467 CLPM ()
5468 Notify (BAT0, 0x80) // Status Change
5469 }
5470
5471 Method (_Q4D, 0, NotSerialized) // _Qxx: EC Query
5472 {
5473 CLPM ()
5474 If (\BT2T)
5475 {
5476 If ((^BAT1.SBLI == 0x01))
5477 {
5478 Sleep (0x0A)
5479 If ((HB1A && (SLUL == 0x00)))
5480 {
5481 ^BAT1.XB1S = 0x01
5482 Notify (\_SB.PCI0.LPC.EC.BAT1, 0x01) // Device Check
5483 }
5484 }
5485 Else
5486 {
5487 If ((SLUL == 0x01))
5488 {
5489 ^BAT1.XB1S = 0x00
5490 Notify (\_SB.PCI0.LPC.EC.BAT1, 0x03) // Eject Request
5491 }
5492 }
5493 }
5494
5495 If ((^BAT1.B1ST & ^BAT1.XB1S))
5496 {
5497 Notify (BAT1, 0x80) // Status Change
5498 }
5499 }
5500
5501 Method (_Q24, 0, NotSerialized) // _Qxx: EC Query
5502 {
5503 CLPM ()
5504 Notify (BAT0, 0x80) // Status Change
5505 }
5506
5507 Method (_Q25, 0, NotSerialized) // _Qxx: EC Query
5508 {
5509 If ((^BAT1.B1ST & ^BAT1.XB1S))
5510 {
5511 CLPM ()
5512 Notify (BAT1, 0x80) // Status Change
5513 }
5514 }
5515
5516 Method (BATW, 1, NotSerialized)
5517 {
5518 If (\BT2T)
5519 {
5520 Local0 = \_SB.PCI0.LPC.EC.BAT1.XB1S
5521 If ((HB1A && !SLUL))
5522 {
5523 Local1 = 0x01
5524 }
5525 Else
5526 {
5527 Local1 = 0x00
5528 }
5529
5530 If ((Local0 ^ Local1))
5531 {
5532 \_SB.PCI0.LPC.EC.BAT1.XB1S = Local1
5533 Notify (\_SB.PCI0.LPC.EC.BAT1, 0x01) // Device Check
5534 }
5535 }
5536 }
5537
5538 Field (ECOR, ByteAcc, NoLock, Preserve)
5539 {
5540 Offset (0xA0),
5541 SBRC, 16,
5542 SBFC, 16,
5543 SBAE, 16,
5544 SBRS, 16,
5545 SBAC, 16,
5546 SBVO, 16,
5547 SBAF, 16,
5548 SBBS, 16
5549 }
5550
5551 Field (ECOR, ByteAcc, NoLock, Preserve)
5552 {
5553 Offset (0xA0),
5554 SBBM, 16,
5555 SBMD, 16,
5556 SBCC, 16
5557 }
5558
5559 Field (ECOR, ByteAcc, NoLock, Preserve)
5560 {
5561 Offset (0xA0),
5562 SBDC, 16,
5563 SBDV, 16,
5564 SBOM, 16,
5565 SBSI, 16,
5566 SBDT, 16,
5567 SBSN, 16
5568 }
5569
5570 Field (ECOR, ByteAcc, NoLock, Preserve)
5571 {
5572 Offset (0xA0),
5573 SBCH, 32
5574 }
5575
5576 Field (ECOR, ByteAcc, NoLock, Preserve)
5577 {
5578 Offset (0xA0),
5579 SBMN, 128
5580 }
5581
5582 Field (ECOR, ByteAcc, NoLock, Preserve)
5583 {
5584 Offset (0xA0),
5585 SBDN, 128
5586 }
5587
5588 Mutex (BATM, 0x07)
5589 Method (GBIF, 3, NotSerialized)
5590 {
5591 Acquire (BATM, 0xFFFF)
5592 If (Arg2)
5593 {
5594 HIID = (Arg0 | 0x01)
5595 Local7 = SBBM /* \_SB_.PCI0.LPC_.EC__.SBBM */
5596 Local7 >>= 0x0F
5597 Index (Arg1, 0x00) = (Local7 ^ 0x01)
5598 HIID = Arg0
5599 If (Local7)
5600 {
5601 Local1 = (SBFC * 0x0A)
5602 }
5603 Else
5604 {
5605 Local1 = SBFC /* \_SB_.PCI0.LPC_.EC__.SBFC */
5606 }
5607
5608 Index (Arg1, 0x02) = Local1
5609 HIID = (Arg0 | 0x02)
5610 If (Local7)
5611 {
5612 Local0 = (SBDC * 0x0A)
5613 }
5614 Else
5615 {
5616 Local0 = SBDC /* \_SB_.PCI0.LPC_.EC__.SBDC */
5617 }
5618
5619 Index (Arg1, 0x01) = Local0
5620 Divide (Local1, 0x14, Local2, Index (Arg1, 0x05))
5621 If (Local7)
5622 {
5623 Index (Arg1, 0x06) = 0xC8
5624 }
5625 Else
5626 {
5627 If (SBDV)
5628 {
5629 Divide (0x00030D40, SBDV, Local2, Index (Arg1, 0x06))
5630 }
5631 Else
5632 {
5633 Index (Arg1, 0x06) = 0x00
5634 }
5635 }
5636
5637 Index (Arg1, 0x04) = SBDV /* \_SB_.PCI0.LPC_.EC__.SBDV */
5638 Local0 = SBSN /* \_SB_.PCI0.LPC_.EC__.SBSN */
5639 Name (SERN, Buffer (0x06)
5640 {
5641 " "
5642 })
5643 Local2 = 0x04
5644 While (Local0)
5645 {
5646 Divide (Local0, 0x0A, Local1, Local0)
5647 Index (SERN, Local2) = (Local1 + 0x30)
5648 Local2--
5649 }
5650
5651 Index (Arg1, 0x0A) = SERN /* \_SB_.PCI0.LPC_.EC__.GBIF.SERN */
5652 HIID = (Arg0 | 0x06)
5653 Index (Arg1, 0x09) = SBDN /* \_SB_.PCI0.LPC_.EC__.SBDN */
5654 HIID = (Arg0 | 0x04)
5655 Name (BTYP, Buffer (0x05)
5656 {
5657 0x00, 0x00, 0x00, 0x00, 0x00 /* ..... */
5658 })
5659 BTYP = SBCH /* \_SB_.PCI0.LPC_.EC__.SBCH */
5660 Index (Arg1, 0x0B) = BTYP /* \_SB_.PCI0.LPC_.EC__.GBIF.BTYP */
5661 HIID = (Arg0 | 0x05)
5662 Index (Arg1, 0x0C) = SBMN /* \_SB_.PCI0.LPC_.EC__.SBMN */
5663 }
5664 Else
5665 {
5666 Index (Arg1, 0x01) = 0xFFFFFFFF
5667 Index (Arg1, 0x05) = 0x00
5668 Index (Arg1, 0x06) = 0x00
5669 Index (Arg1, 0x02) = 0xFFFFFFFF
5670 }
5671
5672 Release (BATM)
5673 Return (Arg1)
5674 }
5675
5676 Method (GBST, 4, NotSerialized)
5677 {
5678 Acquire (BATM, 0xFFFF)
5679 If ((Arg1 & 0x20))
5680 {
5681 Local0 = 0x02
5682 }
5683 Else
5684 {
5685 If ((Arg1 & 0x40))
5686 {
5687 Local0 = 0x01
5688 }
5689 Else
5690 {
5691 Local0 = 0x00
5692 }
5693 }
5694
5695 If ((Arg1 & 0x07)) {}
5696 Else
5697 {
5698 Local0 |= 0x04
5699 }
5700
5701 If (((Arg1 & 0x07) == 0x07))
5702 {
5703 Local0 = 0x04
5704 Local1 = 0x00
5705 Local2 = 0x00
5706 Local3 = 0x00
5707 }
5708 Else
5709 {
5710 HIID = Arg0
5711 Local3 = SBVO /* \_SB_.PCI0.LPC_.EC__.SBVO */
5712 If (Arg2)
5713 {
5714 Local2 = (SBRC * 0x0A)
5715 }
5716 Else
5717 {
5718 Local2 = SBRC /* \_SB_.PCI0.LPC_.EC__.SBRC */
5719 }
5720
5721 Local1 = SBAC /* \_SB_.PCI0.LPC_.EC__.SBAC */
5722 If ((Local1 >= 0x8000))
5723 {
5724 If ((Local0 & 0x01))
5725 {
5726 Local1 = (0x00010000 - Local1)
5727 }
5728 Else
5729 {
5730 Local1 = 0x00
5731 }
5732 }
5733 Else
5734 {
5735 If (!(Local0 & 0x02))
5736 {
5737 Local1 = 0x00
5738 }
5739 }
5740
5741 If (Arg2)
5742 {
5743 Local1 *= Local3
5744 Divide (Local1, 0x03E8, Local7, Local1)
5745 }
5746 }
5747
5748 Index (Arg3, 0x00) = Local0
5749 Index (Arg3, 0x01) = Local1
5750 Index (Arg3, 0x02) = Local2
5751 Index (Arg3, 0x03) = Local3
5752 Release (BATM)
5753 Return (Arg3)
5754 }
5755
5756 Device (BAT0)
5757 {
5758 Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID
5759 Name (_UID, 0x00) // _UID: Unique ID
5760 Name (_PCL, Package (0x01) // _PCL: Power Consumer List
5761 {
5762 \_SB
5763 })
5764 Name (B0ST, 0x00)
5765 Name (BT0I, Package (0x0D)
5766 {
5767 0x00,
5768 0xFFFFFFFF,
5769 0xFFFFFFFF,
5770 0x01,
5771 0x2A30,
5772 0x00,
5773 0x00,
5774 0x01,
5775 0x01,
5776 "",
5777 "",
5778 "",
5779 ""
5780 })
5781 Name (BT0P, Package (0x04) {})
5782 Method (_STA, 0, NotSerialized) // _STA: Status
5783 {
5784 If (\H8DR)
5785 {
5786 B0ST = HB0A /* \_SB_.PCI0.LPC_.EC__.HB0A */
5787 }
5788 Else
5789 {
5790 If ((\RBEC (0x38) & 0x80))
5791 {
5792 B0ST = 0x01
5793 }
5794 Else
5795 {
5796 B0ST = 0x00
5797 }
5798 }
5799
5800 If (B0ST)
5801 {
5802 Return (0x1F)
5803 }
5804 Else
5805 {
5806 Return (0x0F)
5807 }
5808 }
5809
5810 Method (_BIF, 0, NotSerialized) // _BIF: Battery Information
5811 {
5812 Local7 = 0x00
5813 Local6 = 0x0A
5814 While ((!Local7 && Local6))
5815 {
5816 If (HB0A)
5817 {
5818 If (((HB0S & 0x07) == 0x07))
5819 {
5820 Sleep (0x03E8)
5821 Local6--
5822 }
5823 Else
5824 {
5825 Local7 = 0x01
5826 }
5827 }
5828 Else
5829 {
5830 Local6 = 0x00
5831 }
5832 }
5833
5834 Return (GBIF (0x00, BT0I, Local7))
5835 }
5836
5837 Method (_BST, 0, NotSerialized) // _BST: Battery Status
5838 {
5839 Local0 = (DerefOf (Index (BT0I, 0x00)) ^ 0x01)
5840 Return (GBST (0x00, HB0S, Local0, BT0P))
5841 }
5842
5843 Method (_BTP, 1, NotSerialized) // _BTP: Battery Trip Point
5844 {
5845 HAM4 &= 0xEF
5846 If (Arg0)
5847 {
5848 Local1 = Arg0
5849 If (!DerefOf (Index (BT0I, 0x00)))
5850 {
5851 Divide (Local1, 0x0A, Local0, Local1)
5852 }
5853
5854 HT0L = (Local1 & 0xFF)
5855 HT0H = ((Local1 >> 0x08) & 0xFF)
5856 HAM4 |= 0x10
5857 }
5858 }
5859 }
5860
5861 Device (BAT1)
5862 {
5863 Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID
5864 Name (_UID, 0x01) // _UID: Unique ID
5865 Name (_PCL, Package (0x01) // _PCL: Power Consumer List
5866 {
5867 \_SB
5868 })
5869 Name (B1ST, 0x00)
5870 Name (SBLI, 0x01)
5871 Name (XB1S, 0x00)
5872 Name (BT1I, Package (0x0D)
5873 {
5874 0x00,
5875 0xFFFFFFFF,
5876 0xFFFFFFFF,
5877 0x01,
5878 0x2A30,
5879 0x00,
5880 0x00,
5881 0x01,
5882 0x01,
5883 "",
5884 "",
5885 "",
5886 ""
5887 })
5888 Name (BT1P, Package (0x04) {})
5889 Method (_STA, 0, NotSerialized) // _STA: Status
5890 {
5891 If (\H8DR)
5892 {
5893 If (HB1A)
5894 {
5895 B1ST = 0x01
5896 If (\BT2T)
5897 {
5898 If (SLUL)
5899 {
5900 SBLI = 0x01
5901 XB1S = 0x00
5902 }
5903 Else
5904 {
5905 SBLI = 0x00
5906 XB1S = 0x01
5907 }
5908 }
5909 Else
5910 {
5911 XB1S = 0x01
5912 }
5913 }
5914 Else
5915 {
5916 B1ST = 0x00
5917 If (\BT2T)
5918 {
5919 SBLI = 0x01
5920 XB1S = 0x00
5921 }
5922 Else
5923 {
5924 XB1S = 0x00
5925 }
5926 }
5927 }
5928 Else
5929 {
5930 If ((\RBEC (0x39) & 0x80))
5931 {
5932 B1ST = 0x01
5933 If (\BT2T)
5934 {
5935 If ((\RBEC (0x49) & 0x01))
5936 {
5937 SBLI = 0x01
5938 XB1S = 0x00
5939 }
5940 Else
5941 {
5942 SBLI = 0x00
5943 XB1S = 0x01
5944 }
5945 }
5946 Else
5947 {
5948 XB1S = 0x01
5949 }
5950 }
5951 Else
5952 {
5953 B1ST = 0x00
5954 If (\BT2T)
5955 {
5956 SBLI = 0x01
5957 XB1S = 0x00
5958 }
5959 Else
5960 {
5961 XB1S = 0x00
5962 }
5963 }
5964 }
5965
5966 If (B1ST)
5967 {
5968 If (XB1S)
5969 {
5970 Return (0x1F)
5971 }
5972 Else
5973 {
5974 If (\WNTF)
5975 {
5976 Return (0x00)
5977 }
5978 Else
5979 {
5980 Return (0x1F)
5981 }
5982 }
5983 }
5984 Else
5985 {
5986 If (\WNTF)
5987 {
5988 Return (0x00)
5989 }
5990 Else
5991 {
5992 Return (0x0F)
5993 }
5994 }
5995 }
5996
5997 Method (_BIF, 0, NotSerialized) // _BIF: Battery Information
5998 {
5999 Local7 = 0x00
6000 Local6 = 0x0A
6001 While ((!Local7 && Local6))
6002 {
6003 If (HB1A)
6004 {
6005 If (((HB1S & 0x07) == 0x07))
6006 {
6007 Sleep (0x03E8)
6008 Local6--
6009 }
6010 Else
6011 {
6012 Local7 = 0x01
6013 }
6014 }
6015 Else
6016 {
6017 Local6 = 0x00
6018 }
6019 }
6020
6021 Return (GBIF (0x10, BT1I, Local7))
6022 }
6023
6024 Method (_BST, 0, NotSerialized) // _BST: Battery Status
6025 {
6026 Local0 = (DerefOf (Index (BT1I, 0x00)) ^ 0x01)
6027 Return (GBST (0x10, HB1S, Local0, BT1P))
6028 }
6029
6030 Method (_BTP, 1, NotSerialized) // _BTP: Battery Trip Point
6031 {
6032 HAM4 &= 0xDF
6033 If (Arg0)
6034 {
6035 Local1 = Arg0
6036 If (!DerefOf (Index (BT1I, 0x00)))
6037 {
6038 Divide (Local1, 0x0A, Local0, Local1)
6039 }
6040
6041 HT1L = (Local1 & 0xFF)
6042 HT1H = ((Local1 >> 0x08) & 0xFF)
6043 HAM4 |= 0x20
6044 }
6045 }
6046 }
6047
6048 Device (AC)
6049 {
6050 Name (_HID, "ACPI0003" /* Power Source Device */) // _HID: Hardware ID
6051 Name (_UID, 0x00) // _UID: Unique ID
6052 Name (_PCL, Package (0x01) // _PCL: Power Consumer List
6053 {
6054 \_SB
6055 })
6056 Method (_PSR, 0, NotSerialized) // _PSR: Power Source
6057 {
6058 If (\H8DR)
6059 {
6060 Return (HPAC) /* \_SB_.PCI0.LPC_.EC__.HPAC */
6061 }
6062 Else
6063 {
6064 If ((\RBEC (0x46) & 0x10))
6065 {
6066 Return (0x01)
6067 }
6068 Else
6069 {
6070 Return (0x00)
6071 }
6072 }
6073 }
6074
6075 Method (_STA, 0, NotSerialized) // _STA: Status
6076 {
6077 Return (0x0F)
6078 }
6079 }
6080
6081 Device (HKEY)
6082 {
6083 Name (_HID, EisaId ("LEN0068")) // _HID: Hardware ID
6084 Method (_STA, 0, NotSerialized) // _STA: Status
6085 {
6086 Return (0x0F)
6087 }
6088
6089 Method (MHKV, 0, NotSerialized)
6090 {
6091 Return (0x0100)
6092 }
6093
6094 Name (DHKC, 0x00)
6095 Name (DHKB, 0x01)
6096 Mutex (XDHK, 0x07)
6097 Name (DHKH, 0x00)
6098 Name (DHKW, 0x00)
6099 Name (DHKS, 0x00)
6100 Name (DHKD, 0x00)
6101 Name (DHKN, 0x0808)
6102 Name (DHKT, 0x00)
6103 Name (DHWW, 0x00)
6104 Method (MHKA, 0, NotSerialized)
6105 {
6106 Return (0xFFFFFFFB)
6107 }
6108
6109 Method (MHKN, 0, NotSerialized)
6110 {
6111 Return (DHKN) /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKN */
6112 }
6113
6114 Method (MHKK, 1, NotSerialized)
6115 {
6116 If (DHKC)
6117 {
6118 Return ((DHKN & Arg0))
6119 }
6120 Else
6121 {
6122 Return (Zero)
6123 }
6124 }
6125
6126 Method (MHKM, 2, NotSerialized)
6127 {
6128 Acquire (XDHK, 0xFFFF)
6129 If ((Arg0 > 0x20))
6130 {
6131 Noop
6132 }
6133 Else
6134 {
6135 Local0 = (One << Arg0--)
6136 If ((Local0 & 0xFFFFFFFB))
6137 {
6138 If (Arg1)
6139 {
6140 DHKN |= Local0 /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKN */
6141 }
6142 Else
6143 {
6144 DHKN &= (Local0 ^ 0xFFFFFFFF)
6145 }
6146 }
6147 Else
6148 {
6149 Noop
6150 }
6151 }
6152
6153 Release (XDHK)
6154 }
6155
6156 Method (MHKS, 0, NotSerialized)
6157 {
6158 Notify (\_SB.SLPB, 0x80) // Status Change
6159 }
6160
6161 Method (MHKC, 1, NotSerialized)
6162 {
6163 DHKC = Arg0
6164 }
6165
6166 Method (MHKP, 0, NotSerialized)
6167 {
6168 Acquire (XDHK, 0xFFFF)
6169 If (DHWW)
6170 {
6171 Local1 = DHWW /* \_SB_.PCI0.LPC_.EC__.HKEY.DHWW */
6172 DHWW = Zero
6173 }
6174 Else
6175 {
6176 If (DHKW)
6177 {
6178 Local1 = DHKW /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKW */
6179 DHKW = Zero
6180 }
6181 Else
6182 {
6183 If (DHKD)
6184 {
6185 Local1 = DHKD /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKD */
6186 DHKD = Zero
6187 }
6188 Else
6189 {
6190 If (DHKS)
6191 {
6192 Local1 = DHKS /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKS */
6193 DHKS = Zero
6194 }
6195 Else
6196 {
6197 If (DHKT)
6198 {
6199 Local1 = DHKT /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKT */
6200 DHKT = Zero
6201 }
6202 Else
6203 {
6204 Local1 = DHKH /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKH */
6205 DHKH = Zero
6206 }
6207 }
6208 }
6209 }
6210 }
6211
6212 Release (XDHK)
6213 Return (Local1)
6214 }
6215
6216 Method (MHKE, 1, NotSerialized)
6217 {
6218 DHKB = Arg0
6219 Acquire (XDHK, 0xFFFF)
6220 DHKH = Zero
6221 DHKW = Zero
6222 DHKS = Zero
6223 DHKD = Zero
6224 DHKT = Zero
6225 DHWW = Zero
6226 Release (XDHK)
6227 }
6228
6229 Method (MHKQ, 1, NotSerialized)
6230 {
6231 If (DHKB)
6232 {
6233 If (DHKC)
6234 {
6235 Acquire (XDHK, 0xFFFF)
6236 If ((Arg0 < 0x1000)) {}
6237 Else
6238 {
6239 If ((Arg0 < 0x2000))
6240 {
6241 DHKH = Arg0
6242 }
6243 Else
6244 {
6245 If ((Arg0 < 0x3000))
6246 {
6247 DHKW = Arg0
6248 }
6249 Else
6250 {
6251 If ((Arg0 < 0x4000))
6252 {
6253 DHKS = Arg0
6254 }
6255 Else
6256 {
6257 If ((Arg0 < 0x5000))
6258 {
6259 DHKD = Arg0
6260 }
6261 Else
6262 {
6263 If ((Arg0 < 0x6000))
6264 {
6265 DHKH = Arg0
6266 }
6267 Else
6268 {
6269 If ((Arg0 < 0x7000))
6270 {
6271 DHKT = Arg0
6272 }
6273 Else
6274 {
6275 If ((Arg0 < 0x8000))
6276 {
6277 DHWW = Arg0
6278 }
6279 Else
6280 {
6281 }
6282 }
6283 }
6284 }
6285 }
6286 }
6287 }
6288 }
6289
6290 Release (XDHK)
6291 Notify (HKEY, 0x80) // Status Change
6292 }
6293 Else
6294 {
6295 If ((Arg0 == 0x1004))
6296 {
6297 Notify (\_SB.SLPB, 0x80) // Status Change
6298 }
6299 }
6300 }
6301 }
6302
6303 Method (MHKB, 1, NotSerialized)
6304 {
6305 If ((Arg0 == 0x00))
6306 {
6307 \_SB.PCI0.LPC.EC.BEEP (0x11)
6308 \LIDB = 0x00
6309 }
6310 Else
6311 {
6312 If ((Arg0 == 0x01))
6313 {
6314 \_SB.PCI0.LPC.EC.BEEP (0x10)
6315 \LIDB = 0x01
6316 }
6317 Else
6318 {
6319 }
6320 }
6321 }
6322
6323 Method (MHKD, 0, NotSerialized)
6324 {
6325 If ((\PLUX == 0x00))
6326 {
6327 If (VIGD)
6328 {
6329 \_SB.PCI0.VID.VLOC (0x00)
6330 }
6331 Else
6332 {
6333 \_SB.PCI0.PEG.VID.VLOC (0x00)
6334 }
6335 }
6336 }
6337
6338 Method (MHQC, 1, NotSerialized)
6339 {
6340 If (\WNTF)
6341 {
6342 If ((Arg0 == 0x00))
6343 {
6344 Return (\CWAC)
6345 }
6346 Else
6347 {
6348 If ((Arg0 == 0x01))
6349 {
6350 Return (\CWAP)
6351 }
6352 Else
6353 {
6354 If ((Arg0 == 0x02))
6355 {
6356 Return (\CWAT)
6357 }
6358 Else
6359 {
6360 Noop
6361 }
6362 }
6363 }
6364 }
6365 Else
6366 {
6367 Noop
6368 }
6369
6370 Return (0x00)
6371 }
6372
6373 Method (MHGC, 0, NotSerialized)
6374 {
6375 If (\WNTF)
6376 {
6377 Acquire (XDHK, 0xFFFF)
6378 If (CKC4 (0x00))
6379 {
6380 Local0 = 0x03
6381 }
6382 Else
6383 {
6384 Local0 = 0x04
6385 }
6386
6387 Release (XDHK)
6388 Return (Local0)
6389 }
6390 Else
6391 {
6392 Noop
6393 }
6394
6395 Return (0x00)
6396 }
6397
6398 Method (MHSC, 1, NotSerialized)
6399 {
6400 If ((\CWAC && \WNTF))
6401 {
6402 Acquire (XDHK, 0xFFFF)
6403 If (\OSC4)
6404 {
6405 If ((Arg0 == 0x03))
6406 {
6407 If (!\CWAS)
6408 {
6409 \PNTF (0x81)
6410 \CWAS = 0x01
6411 }
6412 }
6413 Else
6414 {
6415 If ((Arg0 == 0x04))
6416 {
6417 If (\CWAS)
6418 {
6419 \PNTF (0x81)
6420 \CWAS = 0x00
6421 }
6422 }
6423 Else
6424 {
6425 Noop
6426 }
6427 }
6428 }
6429
6430 Release (XDHK)
6431 }
6432 Else
6433 {
6434 Noop
6435 }
6436 }
6437
6438 Method (CKC4, 1, NotSerialized)
6439 {
6440 Local0 = 0x00
6441 If (\C4WR)
6442 {
6443 If (!\C4AC)
6444 {
6445 Local0 |= 0x01
6446 }
6447 }
6448
6449 If (\C4NA)
6450 {
6451 Local0 |= 0x02
6452 }
6453
6454 If ((\CWAC && \CWAS))
6455 {
6456 Local0 |= 0x04
6457 }
6458
6459 Local0 &= ~Arg0
6460 Return (Local0)
6461 }
6462
6463 Method (MHQE, 0, NotSerialized)
6464 {
6465 Return (\C4WR)
6466 }
6467
6468 Method (MHGE, 0, NotSerialized)
6469 {
6470 If ((\C4WR && \C4AC))
6471 {
6472 Return (0x04)
6473 }
6474
6475 Return (0x03)
6476 }
6477
6478 Method (MHSE, 1, NotSerialized)
6479 {
6480 If (\C4WR)
6481 {
6482 Local0 = \C4AC
6483 If ((Arg0 == 0x03))
6484 {
6485 \C4AC = 0x00
6486 If ((Local0 ^ \C4AC))
6487 {
6488 If (\OSC4)
6489 {
6490 \PNTF (0x81)
6491 }
6492 }
6493 }
6494 Else
6495 {
6496 If ((Arg0 == 0x04))
6497 {
6498 \C4AC = 0x01
6499 If ((Local0 ^ \C4AC))
6500 {
6501 If (\OSC4)
6502 {
6503 \PNTF (0x81)
6504 }
6505 }
6506 }
6507 }
6508 }
6509 }
6510
6511 Method (UAWO, 1, NotSerialized)
6512 {
6513 Return (\UAWS (Arg0))
6514 }
6515
6516 Method (MLCG, 1, NotSerialized)
6517 {
6518 Local0 = \KBLS (0x00, 0x00)
6519 Return (Local0)
6520 }
6521
6522 Method (MLCS, 1, NotSerialized)
6523 {
6524 Local0 = \KBLS (0x01, Arg0)
6525 If (!(Local0 & 0x80000000))
6526 {
6527 If ((Arg0 & 0x00010000))
6528 {
6529 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6001)
6530 }
6531 Else
6532 {
6533 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x00020000))
6534 {
6535 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1012)
6536 }
6537 }
6538 }
6539
6540 Return (Local0)
6541 }
6542
6543 Method (DSSG, 1, NotSerialized)
6544 {
6545 Local0 = (0x0400 | \PDCI)
6546 Return (Local0)
6547 }
6548
6549 Method (DSSS, 1, NotSerialized)
6550 {
6551 \PDCI |= Arg0
6552 }
6553
6554 Method (SBSG, 1, NotSerialized)
6555 {
6556 Return (\SYBC (0x00, 0x00))
6557 }
6558
6559 Method (SBSS, 1, NotSerialized)
6560 {
6561 Return (\SYBC (0x01, Arg0))
6562 }
6563
6564 Method (PBLG, 1, NotSerialized)
6565 {
6566 Local0 = \BRLV
6567 Local1 = (Local0 | 0x0F00)
6568 Return (Local1)
6569 }
6570
6571 Method (PBLS, 1, NotSerialized)
6572 {
6573 \BRLV = Arg0
6574 If (\VIGD)
6575 {
6576 \_SB.PCI0.LPC.EC.BRNS ()
6577 }
6578 Else
6579 {
6580 \VBRC (\BRLV)
6581 }
6582
6583 If (!\NBCF)
6584 {
6585 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6050)
6586 }
6587
6588 Return (0x00)
6589 }
6590
6591 Method (PMSG, 1, NotSerialized)
6592 {
6593 Local0 = \PRSM (0x00, 0x00)
6594 Return (Local0)
6595 }
6596
6597 Method (PMSS, 1, NotSerialized)
6598 {
6599 \PRSM (0x01, Arg0)
6600 Return (0x00)
6601 }
6602
6603 Method (ISSG, 1, NotSerialized)
6604 {
6605 Local0 = \ISSP
6606 If (\ISSP)
6607 {
6608 Local0 |= 0x01000000
6609 Local0 |= (\ISFS << 0x19)
6610 }
6611
6612 Local0 |= 0x80
6613 Local0 |= (\ISCG & 0x30)
6614 Return (Local0)
6615 }
6616
6617 Method (ISSS, 1, NotSerialized)
6618 {
6619 \ISCG = Arg0
6620 Return (0x00)
6621 }
6622
6623 Method (FFSG, 1, NotSerialized)
6624 {
6625 Return (\IFRS (0x00, 0x00))
6626 }
6627
6628 Method (FFSS, 1, NotSerialized)
6629 {
6630 \IFRS (0x01, Arg0)
6631 Return (0x00)
6632 }
6633
6634 Method (GMKS, 0, NotSerialized)
6635 {
6636 Return (\FNSC (0x02, 0x00))
6637 }
6638
6639 Method (SMKS, 1, NotSerialized)
6640 {
6641 Return (\FNSC (0x03, (Arg0 & 0x00010001)))
6642 }
6643
6644 Method (INSG, 1, NotSerialized)
6645 {
6646 Local0 = \IOEN
6647 Local0 |= (\IOST << 0x07)
6648 Local0 |= (\IOCP << 0x08)
6649 Local0 |= 0x10000000
6650 Return (Local0)
6651 }
6652
6653 Method (INSS, 1, NotSerialized)
6654 {
6655 If ((Arg0 & 0x10000000))
6656 {
6657 If (\IOCP)
6658 {
6659 Local0 = ((Arg0 & 0x80) >> 0x07)
6660 If (!\EZRC (Local0))
6661 {
6662 \IOST = Local0
6663 }
6664 }
6665
6666 Return (0x00)
6667 }
6668
6669 If ((\IOCP && (Arg0 & 0x01)))
6670 {
6671 \IOEN = 0x01
6672 }
6673 Else
6674 {
6675 \IOEN = 0x00
6676 If (\IOST)
6677 {
6678 If (!\ISOC (0x00))
6679 {
6680 \IOST = 0x00
6681 }
6682 }
6683 }
6684
6685 Return (0x00)
6686 }
6687 }
6688
6689 Scope (\_SB.PCI0.LPC.EC.HKEY)
6690 {
6691 Name (INDV, 0x00)
6692 Method (MHQI, 0, NotSerialized)
6693 {
6694 If ((\IPMS & 0x01))
6695 {
6696 INDV |= 0x01
6697 }
6698
6699 If ((\IPMS & 0x02))
6700 {
6701 INDV |= 0x02
6702 }
6703
6704 If ((\IPMS & 0x04))
6705 {
6706 INDV |= 0x0100
6707 }
6708
6709 If ((\IPMS & 0x08))
6710 {
6711 INDV |= 0x0200
6712 }
6713
6714 If ((\IPMS & 0x10))
6715 {
6716 INDV |= 0x04
6717 }
6718
6719 Return (INDV) /* \_SB_.PCI0.LPC_.EC__.HKEY.INDV */
6720 }
6721
6722 Method (MHGI, 1, NotSerialized)
6723 {
6724 Name (RETB, Buffer (0x10) {})
6725 CreateByteField (RETB, 0x00, MHGS)
6726 Local0 = (0x01 << Arg0)
6727 If ((INDV & Local0))
6728 {
6729 If ((Arg0 == 0x00))
6730 {
6731 CreateField (RETB, 0x08, 0x78, BRBU)
6732 BRBU = \IPMB
6733 MHGS = 0x10
6734 }
6735 Else
6736 {
6737 If ((Arg0 == 0x01))
6738 {
6739 CreateField (RETB, 0x08, 0x18, RRBU)
6740 RRBU = \IPMR
6741 MHGS = 0x04
6742 }
6743 Else
6744 {
6745 If ((Arg0 == 0x08))
6746 {
6747 CreateField (RETB, 0x10, 0x18, ODBU)
6748 CreateByteField (RETB, 0x01, MHGZ)
6749 ODBU = \IPMO
6750 If (((^^BSTS == 0x00) && (^^BDEV == 0x03)))
6751 {
6752 MHGZ |= 0x01 /* \_SB_.PCI0.LPC_.EC__.HKEY.MHGI.MHGZ */
6753 MHGZ |= 0x02 /* \_SB_.PCI0.LPC_.EC__.HKEY.MHGI.MHGZ */
6754 }
6755
6756 MHGS = 0x05
6757 }
6758 Else
6759 {
6760 If ((Arg0 == 0x09))
6761 {
6762 CreateField (RETB, 0x10, 0x08, AUBU)
6763 AUBU = \IPMA
6764 Index (RETB, 0x01) = 0x01
6765 MHGS = 0x03
6766 }
6767 Else
6768 {
6769 If ((Arg0 == 0x02))
6770 {
6771 Local1 = \VDYN (0x00, 0x00)
6772 Index (RETB, 0x02) = (Local1 & 0x0F)
6773 Local1 >>= 0x04
6774 Index (RETB, 0x01) = (Local1 & 0x0F)
6775 MHGS = 0x03
6776 }
6777 }
6778 }
6779 }
6780 }
6781 }
6782
6783 Return (RETB) /* \_SB_.PCI0.LPC_.EC__.HKEY.MHGI.RETB */
6784 }
6785
6786 Method (MHSI, 2, NotSerialized)
6787 {
6788 Local0 = (0x01 << Arg0)
6789 If ((INDV & Local0))
6790 {
6791 If ((Arg0 == 0x08))
6792 {
6793 If (Arg1)
6794 {
6795 If (\H8DR)
6796 {
6797 Local1 = ^^HPBU /* \_SB_.PCI0.LPC_.EC__.HPBU */
6798 }
6799 Else
6800 {
6801 Local1 = (\RBEC (0x47) & 0x01)
6802 }
6803
6804 If (!Local1)
6805 {
6806 ^^BDEV = ^^BGID (0x00)
6807 ^^NBIN (Local1)
6808 }
6809 }
6810 }
6811 Else
6812 {
6813 If ((Arg0 == 0x02))
6814 {
6815 \VDYN (0x01, Arg1)
6816 }
6817 }
6818 }
6819 }
6820 }
6821
6822 Scope (\_SB.PCI0.LPC.EC)
6823 {
6824 Method (_Q6A, 0, NotSerialized) // _Qxx: EC Query
6825 {
6826 If (HDMC)
6827 {
6828 Noop
6829 }
6830 Else
6831 {
6832 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x04000000))
6833 {
6834 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101B)
6835 }
6836 }
6837 }
6838 }
6839
6840 Scope (\_SB.PCI0.LPC.EC.HKEY)
6841 {
6842 Method (MMTG, 0, NotSerialized)
6843 {
6844 Local0 = 0x0101
6845 If (HDMC)
6846 {
6847 Local0 |= 0x00010000
6848 }
6849
6850 Return (Local0)
6851 }
6852
6853 Method (MMTS, 1, NotSerialized)
6854 {
6855 If (HDMC)
6856 {
6857 Noop
6858 }
6859 Else
6860 {
6861 If ((Arg0 == 0x02))
6862 {
6863 \_SB.PCI0.LPC.EC.LED (0x0E, 0x80)
6864 }
6865 Else
6866 {
6867 If ((Arg0 == 0x03))
6868 {
6869 \_SB.PCI0.LPC.EC.LED (0x0E, 0xC0)
6870 }
6871 Else
6872 {
6873 \_SB.PCI0.LPC.EC.LED (0x0E, 0x00)
6874 }
6875 }
6876 }
6877 }
6878 }
6879
6880 Scope (\_SB.PCI0.LPC.EC.HKEY)
6881 {
6882 Method (PWMC, 0, NotSerialized)
6883 {
6884 Return (0x01)
6885 }
6886
6887 Method (PWMG, 0, NotSerialized)
6888 {
6889 Local0 = \_SB.PCI0.LPC.EC.PWMH
6890 Local0 <<= 0x08
6891 Local0 |= \_SB.PCI0.LPC.EC.PWML
6892 Return (Local0)
6893 }
6894 }
6895
6896 Scope (\_SB.PCI0.LPC.EC)
6897 {
6898 Method (_Q45, 0, NotSerialized) // _Qxx: EC Query
6899 {
6900 If (DOCD)
6901 {
6902 Sleep (0x64)
6903 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x4010)
6904 }
6905 Else
6906 {
6907 Sleep (0x64)
6908 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x4011)
6909 }
6910 }
6911
6912 Method (DKID, 0, NotSerialized)
6913 {
6914 Local0 = \_SB.PCI0.LPC.DOI0
6915 Local1 = \_SB.PCI0.LPC.DOI1
6916 Local2 = \_SB.PCI0.LPC.DOI2
6917 Local3 = \_SB.PCI0.LPC.DOI3
6918 Local0 |= (Local1 << 0x01)
6919 Local0 |= (Local2 << 0x02)
6920 Local0 |= (Local3 << 0x03)
6921 Return (Local0)
6922 }
6923 }
6924
6925 Scope (\_SB.PCI0.LPC.EC.HKEY)
6926 {
6927 Method (GDKS, 0, NotSerialized)
6928 {
6929 Local0 = 0x00
6930 If ((\_SB.PCI0.LPC.EC.DOCD == 0x01))
6931 {
6932 Local0 |= 0x01
6933 Local1 = \_SB.PCI0.LPC.EC.DKID ()
6934 Local1 <<= 0x08
6935 Local0 |= Local1
6936 }
6937
6938 Local0 |= 0x00010000
6939 Return (Local0)
6940 }
6941 }
6942
6943 Scope (\_SB.PCI0.LPC.EC)
6944 {
6945 Method (_Q3F, 0, NotSerialized) // _Qxx: EC Query
6946 {
6947 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6000)
6948 }
6949
6950 Method (_Q74, 0, NotSerialized) // _Qxx: EC Query
6951 {
6952 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6060)
6953 }
6954 }
6955
6956 Scope (\_SB.PCI0.LPC.EC.HKEY)
6957 {
6958 Method (NUMG, 0, NotSerialized)
6959 {
6960 Local0 = 0x01
6961 If (\_SB.PCI0.LPC.EC.SNLK)
6962 {
6963 Local0 &= ~0x02
6964 }
6965 Else
6966 {
6967 Local0 |= 0x02
6968 }
6969
6970 Local0 |= 0x02
6971 If (\_SB.PCI0.LPC.EC.NULS)
6972 {
6973 Local0 |= 0x0100
6974 }
6975 Else
6976 {
6977 Local0 &= ~0x0100
6978 }
6979
6980 Return (Local0)
6981 }
6982 }
6983 }
6984 }
6985
6986 Device (PEG)
6987 {
6988 Name (_ADR, 0x001C0004) // _ADR: Address
6989 Name (_S3D, 0x03) // _S3D: S3 Device State
6990 Name (RID, 0x00)
6991 Name (LTRS, Zero)
6992 Method (_INI, 0, NotSerialized) // _INI: Initialize
6993 {
6994 LTRE = LTR5 /* \LTR5 */
6995 LMSL = PML5 /* \PML5 */
6996 LNSL = PNL5 /* \PNL5 */
6997 OBFF = OBF5 /* \OBF5 */
6998 }
6999
7000 OperationRegion (RPCX, SystemMemory, ((PXBR << 0x1A) + 0x000E4000), 0x1000)
7001 Field (RPCX, DWordAcc, NoLock, Preserve)
7002 {
7003 Offset (0x4A),
7004 CEDR, 1,
7005 Offset (0x69),
7006 , 2,
7007 LREN, 1
7008 }
7009
7010 Name (LPRT, Package (0x04)
7011 {
7012 Package (0x04)
7013 {
7014 0xFFFF,
7015 0x00,
7016 \_SB.LNKA,
7017 0x00
7018 },
7019
7020 Package (0x04)
7021 {
7022 0xFFFF,
7023 0x01,
7024 \_SB.LNKB,
7025 0x00
7026 },
7027
7028 Package (0x04)
7029 {
7030 0xFFFF,
7031 0x02,
7032 \_SB.LNKC,
7033 0x00
7034 },
7035
7036 Package (0x04)
7037 {
7038 0xFFFF,
7039 0x03,
7040 \_SB.LNKD,
7041 0x00
7042 }
7043 })
7044 Name (APRT, Package (0x04)
7045 {
7046 Package (0x04)
7047 {
7048 0xFFFF,
7049 0x00,
7050 0x00,
7051 0x10
7052 },
7053
7054 Package (0x04)
7055 {
7056 0xFFFF,
7057 0x01,
7058 0x00,
7059 0x11
7060 },
7061
7062 Package (0x04)
7063 {
7064 0xFFFF,
7065 0x02,
7066 0x00,
7067 0x12
7068 },
7069
7070 Package (0x04)
7071 {
7072 0xFFFF,
7073 0x03,
7074 0x00,
7075 0x13
7076 }
7077 })
7078 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
7079 {
7080 If (\GPIC)
7081 {
7082 Return (APRT) /* \_SB_.PCI0.PEG_.APRT */
7083 }
7084 Else
7085 {
7086 Return (LPRT) /* \_SB_.PCI0.PEG_.LPRT */
7087 }
7088 }
7089
7090 Mutex (MDGS, 0x07)
7091 Name (VDEE, 0x01)
7092 Name (VDDA, Buffer (0x04) {})
7093 CreateBitField (VDDA, 0x00, VUPC)
7094 CreateBitField (VDDA, 0x01, VQDL)
7095 CreateBitField (VDDA, 0x02, VQDC)
7096 CreateBitField (VDDA, 0x03, VQD0)
7097 CreateBitField (VDDA, 0x04, VQD1)
7098 CreateBitField (VDDA, 0x05, VQD2)
7099 CreateBitField (VDDA, 0x06, VQD3)
7100 CreateBitField (VDDA, 0x07, VQD4)
7101 CreateBitField (VDDA, 0x08, VQD5)
7102 CreateBitField (VDDA, 0x09, VSDL)
7103 CreateBitField (VDDA, 0x0A, VSDC)
7104 CreateBitField (VDDA, 0x0B, VSD0)
7105 CreateBitField (VDDA, 0x0C, VSD1)
7106 CreateBitField (VDDA, 0x0D, VSD2)
7107 CreateBitField (VDDA, 0x0E, VSD3)
7108 CreateBitField (VDDA, 0x0F, VSD4)
7109 CreateBitField (VDDA, 0x10, VSD5)
7110 CreateBitField (VDDA, 0x11, MSWT)
7111 CreateBitField (VDDA, 0x12, VWST)
7112 Name (WKEN, 0x00)
7113 Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
7114 {
7115 If (Arg1)
7116 {
7117 WKEN = 0x00
7118 }
7119 Else
7120 {
7121 If ((Arg0 && Arg2))
7122 {
7123 WKEN = 0x01
7124 }
7125 Else
7126 {
7127 WKEN = 0x00
7128 }
7129 }
7130 }
7131
7132 PowerResource (NVP3, 0x00, 0x0000)
7133 {
7134 Name (_STA, One) // _STA: Status
7135 Method (_ON, 0, Serialized) // _ON_: Power On
7136 {
7137 \_SB.PCI0.PEG.VID.GPON (0x00)
7138 _STA = One
7139 }
7140
7141 Method (_OFF, 0, Serialized) // _OFF: Power Off
7142 {
7143 \_SB.PCI0.PEG.VID.GPOF (0x00)
7144 _STA = Zero
7145 }
7146 }
7147
7148 PowerResource (NVP2, 0x00, 0x0000)
7149 {
7150 Name (_STA, One) // _STA: Status
7151 Method (_ON, 0, Serialized) // _ON_: Power On
7152 {
7153 _STA = One
7154 }
7155
7156 Method (_OFF, 0, Serialized) // _OFF: Power Off
7157 {
7158 _STA = One
7159 }
7160 }
7161
7162 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
7163 {
7164 NVP3
7165 })
7166 Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
7167 {
7168 NVP2
7169 })
7170 Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
7171 {
7172 NVP3
7173 })
7174 Method (_S0W, 0, NotSerialized) // _S0W: S0 Device Wake State
7175 {
7176 Return (0x04)
7177 }
7178
7179 Device (VID)
7180 {
7181 Name (_ADR, 0x00) // _ADR: Address
7182 OperationRegion (VPCG, PCI_Config, 0x00, 0x0100)
7183 Field (VPCG, DWordAcc, NoLock, Preserve)
7184 {
7185 DVID, 16,
7186 DDID, 16,
7187 Offset (0x2C),
7188 VSID, 32,
7189 Offset (0x40),
7190 VIDS, 32,
7191 Offset (0x70),
7192 VPWR, 8
7193 }
7194
7195 OperationRegion (GPPB, PCI_Config, 0xB4, 0x14)
7196 Field (GPPB, ByteAcc, NoLock, Preserve)
7197 {
7198 PBCI, 8,
7199 PBNP, 8,
7200 PBLS, 8,
7201 PBCC, 8,
7202 PBCR, 32,
7203 PBDI, 32,
7204 PBDO, 32,
7205 PBMR, 32
7206 }
7207
7208 Method (VRSI, 0, NotSerialized)
7209 {
7210 VIDS = 0x222517AA
7211 }
7212
7213 Name (_S3D, 0x03) // _S3D: S3 Device State
7214 Name (DGOS, 0x00)
7215 Method (_INI, 0, NotSerialized) // _INI: Initialize
7216 {
7217 \VUPS (0x02)
7218 VQDL = \VCDL
7219 VQDC = \VCDC
7220 VQD0 = \VCDT
7221 VQD1 = \VCDD
7222 VRSI ()
7223 If (ISOP ())
7224 {
7225 \VHYB (0x04, 0x01)
7226 }
7227 }
7228
7229 Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
7230 {
7231 If (!VMSH)
7232 {
7233 GPON (0x00)
7234 }
7235 }
7236
7237 Method (_PS1, 0, NotSerialized) // _PS1: Power State 1
7238 {
7239 Noop
7240 }
7241
7242 Method (_PS2, 0, NotSerialized) // _PS2: Power State 2
7243 {
7244 Noop
7245 }
7246
7247 Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
7248 {
7249 If (!VMSH)
7250 {
7251 GPOF (0x00)
7252 }
7253 }
7254
7255 Method (GPON, 1, NotSerialized)
7256 {
7257 If (ISOP ())
7258 {
7259 If (DGOS)
7260 {
7261 \VHYB (0x02, 0x00)
7262 Sleep (0x14)
7263 If ((ToInteger (Arg0) == 0x00)) {}
7264 \VHYB (0x00, 0x01)
7265 Sleep (0x14)
7266 Local2 = \VHYB (0x0E, 0x00)
7267 While ((Local2 != 0x0F))
7268 {
7269 \VHYB (0x00, 0x00)
7270 Sleep (0x14)
7271 \VHYB (0x00, 0x01)
7272 Sleep (0x0A)
7273 Local2 = \VHYB (0x0E, 0x00)
7274 }
7275
7276 \VHYB (0x02, 0x01)
7277 Sleep (0x01)
7278 \VHYB (0x08, 0x01)
7279 Local0 = 0x0A
7280 Local1 = 0x32
7281 LREN = LTRS /* \_SB_.PCI0.PEG_.LTRS */
7282 CEDR = One
7283 While (Local1)
7284 {
7285 Sleep (Local0)
7286 If (\LCHK (0x01))
7287 {
7288 Break
7289 }
7290
7291 Local1--
7292 }
7293
7294 \VHYB (0x08, 0x03)
7295 If (VMSH)
7296 {
7297 \VHYB (0x0D, 0x00)
7298 }
7299
7300 Local1 = 0xC8
7301 While (Local1)
7302 {
7303 Sleep (0x01)
7304 If (\VHYB (0x0C, 0x00))
7305 {
7306 Break
7307 }
7308
7309 Local1--
7310 }
7311
7312 \VHYB (0x04, 0x00)
7313 \SWTT (0x01)
7314 DGOS = Zero
7315 }
7316 Else
7317 {
7318 If ((VSID != 0x222517AA))
7319 {
7320 \VHYB (0x04, 0x00)
7321 }
7322 }
7323
7324 If (VMSH)
7325 {
7326 \VHYB (0x09, 0x00)
7327 }
7328 Else
7329 {
7330 \VHYB (0x09, \_SB.PCI0.PEG.VID.HDAS)
7331 }
7332 }
7333 }
7334
7335 Method (GPOF, 1, NotSerialized)
7336 {
7337 If (ISOP ())
7338 {
7339 If ((VMSH || (\_SB.PCI0.PEG.VID.OMPR == 0x03)))
7340 {
7341 LTRS = LREN /* \_SB_.PCI0.PEG_.LREN */
7342 \SWTT (0x00)
7343 \VHYB (0x08, 0x00)
7344 \VHYB (0x08, 0x02)
7345 \VHYB (0x02, 0x00)
7346 Sleep (0x09)
7347 \VHYB (0x00, 0x00)
7348 If ((ToInteger (Arg0) == 0x00)) {}
7349 DGOS = One
7350 \_SB.PCI0.PEG.VID.OMPR = 0x02
7351 }
7352 }
7353 }
7354
7355 Method (_STA, 0, NotSerialized) // _STA: Status
7356 {
7357 Return (0x0F)
7358 }
7359
7360 Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
7361 {
7362 If (\CMPB (Arg0, ToUUID ("a486d8f8-0bda-471b-a72b-6042a6b5bee0")))
7363 {
7364 Return (NVOP (Arg0, Arg1, Arg2, Arg3))
7365 }
7366
7367 If (\CMPB (Arg0, ToUUID ("a3132d01-8cda-49ba-a52e-bc9d46df6b81")))
7368 {
7369 Return (NVPS (Arg0, Arg1, Arg2, Arg3))
7370 }
7371
7372 If (\WIN8)
7373 {
7374 If (\CMPB (Arg0, ToUUID ("d4a50b75-65c7-46f7-bfb7-41514cea0244")))
7375 {
7376 Return (NBCI (Arg0, Arg1, Arg2, Arg3))
7377 }
7378 }
7379
7380 Return (Buffer (0x04)
7381 {
7382 0x01, 0x00, 0x00, 0x80 /* .... */
7383 })
7384 }
7385
7386 OperationRegion (ATRP, SystemMemory, \ATRB, 0x00010000)
7387 Field (ATRP, AnyAcc, Lock, Preserve)
7388 {
7389 IDX0, 262144,
7390 IDX1, 262144
7391 }
7392
7393 Method (_ROM, 2, Serialized) // _ROM: Read-Only Memory
7394 {
7395 If ((Arg0 >= 0x8000))
7396 {
7397 Return (GETB ((Arg0 - 0x8000), Arg1, IDX1))
7398 }
7399
7400 If (((Arg0 + Arg1) > 0x8000))
7401 {
7402 Local0 = (0x8000 - Arg0)
7403 Local1 = (Arg1 - Local0)
7404 Local3 = GETB (Arg0, Local0, IDX0)
7405 Local4 = GETB (0x00, Local1, IDX1)
7406 Concatenate (Local3, Local4, Local5)
7407 Return (Local5)
7408 }
7409
7410 Return (GETB (Arg0, Arg1, IDX0))
7411 }
7412
7413 Method (GETB, 3, Serialized)
7414 {
7415 Local0 = (Arg0 * 0x08)
7416 Local1 = (Arg1 * 0x08)
7417 CreateField (Arg2, Local0, Local1, TBF3)
7418 Return (TBF3) /* \_SB_.PCI0.PEG_.VID_.GETB.TBF3 */
7419 }
7420
7421 Method (VSWT, 0, NotSerialized)
7422 {
7423 If (\WVIS)
7424 {
7425 Local0 = \VEVT (0x07)
7426 }
7427 Else
7428 {
7429 Local0 = \VEVT (0x05)
7430 }
7431
7432 Local1 = (0xFF & Local0)
7433 If (Local1)
7434 {
7435 ASWT (Local1, 0x01)
7436 }
7437 }
7438
7439 Method (VLOC, 1, NotSerialized)
7440 {
7441 If ((Arg0 == \_SB.LID._LID ()))
7442 {
7443 \VSLD (Arg0)
7444 If (((VPWR & 0x03) == 0x00))
7445 {
7446 If (Arg0)
7447 {
7448 Local0 = \VEVT (0x01)
7449 }
7450 Else
7451 {
7452 Local0 = \VEVT (0x02)
7453 }
7454
7455 Local1 = (0x0F & Local0)
7456 If (Local1)
7457 {
7458 ASWT (Local1, 0x00)
7459 }
7460 }
7461 }
7462 }
7463
7464 Method (_DOS, 1, NotSerialized) // _DOS: Disable Output Switching
7465 {
7466 If ((Arg0 == 0x02))
7467 {
7468 Local0 = 0x14
7469 While (Local0)
7470 {
7471 Local0--
7472 Acquire (MDGS, 0xFFFF)
7473 If ((0x00 == MSWT))
7474 {
7475 MSWT = 0x01
7476 Local0 = 0x00
7477 VDEE = Arg0
7478 }
7479
7480 Release (MDGS)
7481 Sleep (0xC8)
7482 }
7483 }
7484 Else
7485 {
7486 Acquire (MDGS, 0xFFFF)
7487 If ((VDEE == 0x02))
7488 {
7489 MSWT = 0x00
7490 }
7491
7492 If ((Arg0 > 0x02))
7493 {
7494 VDEE = 0x01
7495 }
7496 Else
7497 {
7498 VDEE = Arg0
7499 }
7500
7501 Release (MDGS)
7502 }
7503 }
7504
7505 Method (_DOD, 0, NotSerialized) // _DOD: Display Output Devices
7506 {
7507 Return (Package (0x08)
7508 {
7509 0x0100,
7510 0x0114,
7511 0x0111,
7512 0x0115,
7513 0x0112,
7514 0x0116,
7515 0x0113,
7516 0x0110
7517 })
7518 }
7519
7520 Method (ASWT, 2, NotSerialized)
7521 {
7522 If ((0x01 == VDEE))
7523 {
7524 Local1 = (0x01 & Arg1)
7525 \VSDS (Arg0, Local1)
7526 }
7527 Else
7528 {
7529 Local0 = 0x14
7530 While (Local0)
7531 {
7532 Local0--
7533 Acquire (MDGS, 0xFFFF)
7534 If ((0x00 == MSWT))
7535 {
7536 Local0 = 0x00
7537 If ((0x01 & Arg1))
7538 {
7539 VUPC = 0x01
7540 }
7541 Else
7542 {
7543 VUPC = 0x00
7544 }
7545
7546 If ((0x01 & Arg0))
7547 {
7548 VQDL = 0x01
7549 }
7550 Else
7551 {
7552 VQDL = 0x00
7553 }
7554
7555 If ((0x02 & Arg0))
7556 {
7557 VQDC = 0x01
7558 }
7559 Else
7560 {
7561 VQDC = 0x00
7562 }
7563
7564 If ((0x04 & Arg0))
7565 {
7566 VQD0 = 0x01
7567 }
7568 Else
7569 {
7570 VQD0 = 0x00
7571 }
7572
7573 If ((0x08 & Arg0))
7574 {
7575 VQD1 = 0x01
7576 }
7577 Else
7578 {
7579 VQD1 = 0x00
7580 }
7581
7582 If ((0x10 & Arg0))
7583 {
7584 VQD2 = 0x01
7585 }
7586 Else
7587 {
7588 VQD2 = 0x00
7589 }
7590
7591 If ((0x20 & Arg0))
7592 {
7593 VQD3 = 0x01
7594 }
7595 Else
7596 {
7597 VQD3 = 0x00
7598 }
7599
7600 If ((0x40 & Arg0))
7601 {
7602 VQD4 = 0x01
7603 }
7604 Else
7605 {
7606 VQD4 = 0x00
7607 }
7608
7609 If ((0x80 & Arg0))
7610 {
7611 VQD5 = 0x01
7612 }
7613 Else
7614 {
7615 VQD5 = 0x00
7616 }
7617 }
7618
7619 Release (MDGS)
7620 Sleep (0xC8)
7621 }
7622
7623 If ((0x02 & Arg1))
7624 {
7625 Notify (VID, 0x81) // Information Change
7626 }
7627 Else
7628 {
7629 Notify (VID, 0x80) // Status Change
7630 }
7631 }
7632 }
7633
7634 Method (VDSW, 1, NotSerialized)
7635 {
7636 If ((VPWR == 0x00))
7637 {
7638 If (Arg0)
7639 {
7640 Local0 = \VEVT (0x03)
7641 }
7642 Else
7643 {
7644 Local0 = \VEVT (0x04)
7645 }
7646
7647 Local1 = (0x0F & Local0)
7648 If (Local1)
7649 {
7650 ASWT (Local1, 0x00)
7651 }
7652 }
7653 }
7654
7655 Device (LCD0)
7656 {
7657 Method (_ADR, 0, NotSerialized) // _ADR: Address
7658 {
7659 Return (0x0110)
7660 }
7661
7662 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
7663 {
7664 \VUPS (0x00)
7665 If (\VCDL)
7666 {
7667 Return (0x1F)
7668 }
7669 Else
7670 {
7671 Return (0x1D)
7672 }
7673 }
7674
7675 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
7676 {
7677 Return (VQDL) /* \_SB_.PCI0.PEG_.VQDL */
7678 }
7679
7680 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
7681 {
7682 VSDL = (Arg0 & 0x01)
7683 If ((Arg0 & 0x80000000))
7684 {
7685 If ((Arg0 & 0x40000000))
7686 {
7687 DSWT (0x02)
7688 }
7689 Else
7690 {
7691 DSWT (0x01)
7692 }
7693 }
7694 }
7695
7696 Method (_DDC, 1, NotSerialized) // _DDC: Display Data Current
7697 {
7698 If (ISOP ())
7699 {
7700 Return (0x00)
7701 }
7702
7703 If ((Arg0 == 0x01))
7704 {
7705 Return (\VEDI)
7706 }
7707 Else
7708 {
7709 If ((Arg0 == 0x02))
7710 {
7711 Return (\VEDI)
7712 }
7713 }
7714
7715 Return (0x00)
7716 }
7717 }
7718
7719 Device (CRT0)
7720 {
7721 Method (_ADR, 0, NotSerialized) // _ADR: Address
7722 {
7723 Return (0x0100)
7724 }
7725
7726 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
7727 {
7728 \VUPS (0x01)
7729 If (\VCSS)
7730 {
7731 If (\VCDC)
7732 {
7733 Return (0x1F)
7734 }
7735 Else
7736 {
7737 Return (0x1D)
7738 }
7739 }
7740 Else
7741 {
7742 If (\VCDC)
7743 {
7744 Return (0x0F)
7745 }
7746 Else
7747 {
7748 Return (0x0D)
7749 }
7750 }
7751 }
7752
7753 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
7754 {
7755 Return (VQDC) /* \_SB_.PCI0.PEG_.VQDC */
7756 }
7757
7758 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
7759 {
7760 VSDC = (Arg0 & 0x01)
7761 If ((Arg0 & 0x80000000))
7762 {
7763 If ((Arg0 & 0x40000000))
7764 {
7765 DSWT (0x02)
7766 }
7767 Else
7768 {
7769 DSWT (0x01)
7770 }
7771 }
7772 }
7773 }
7774
7775 Device (DVI0)
7776 {
7777 Method (_ADR, 0, NotSerialized) // _ADR: Address
7778 {
7779 Return (0x0111)
7780 }
7781
7782 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
7783 {
7784 \VUPS (0x00)
7785 If (\VCDD)
7786 {
7787 Return (0x1F)
7788 }
7789 Else
7790 {
7791 Return (0x1D)
7792 }
7793 }
7794
7795 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
7796 {
7797 Return (VQD1) /* \_SB_.PCI0.PEG_.VQD1 */
7798 }
7799
7800 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
7801 {
7802 VSD1 = (Arg0 & 0x01)
7803 If ((Arg0 & 0x80000000))
7804 {
7805 If ((Arg0 & 0x40000000))
7806 {
7807 DSWT (0x02)
7808 }
7809 Else
7810 {
7811 DSWT (0x01)
7812 }
7813 }
7814 }
7815 }
7816
7817 Device (DP0)
7818 {
7819 Method (_ADR, 0, NotSerialized) // _ADR: Address
7820 {
7821 Return (0x0114)
7822 }
7823
7824 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
7825 {
7826 \VUPS (0x00)
7827 If (\VCDT)
7828 {
7829 Return (0x1F)
7830 }
7831 Else
7832 {
7833 Return (0x1D)
7834 }
7835 }
7836
7837 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
7838 {
7839 Return (VQD0) /* \_SB_.PCI0.PEG_.VQD0 */
7840 }
7841
7842 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
7843 {
7844 VSD0 = (Arg0 & 0x01)
7845 If ((Arg0 & 0x80000000))
7846 {
7847 If ((Arg0 & 0x40000000))
7848 {
7849 DSWT (0x02)
7850 }
7851 Else
7852 {
7853 DSWT (0x01)
7854 }
7855 }
7856 }
7857 }
7858
7859 Device (DVI1)
7860 {
7861 Method (_ADR, 0, NotSerialized) // _ADR: Address
7862 {
7863 Return (0x0112)
7864 }
7865
7866 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
7867 {
7868 \VUPS (0x00)
7869 If (\VCDD)
7870 {
7871 Return (0x1F)
7872 }
7873 Else
7874 {
7875 Return (0x1D)
7876 }
7877 }
7878
7879 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
7880 {
7881 Return (VQD3) /* \_SB_.PCI0.PEG_.VQD3 */
7882 }
7883
7884 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
7885 {
7886 VSD3 = (Arg0 & 0x01)
7887 If ((Arg0 & 0x80000000))
7888 {
7889 If ((Arg0 & 0x40000000))
7890 {
7891 DSWT (0x02)
7892 }
7893 Else
7894 {
7895 DSWT (0x01)
7896 }
7897 }
7898 }
7899 }
7900
7901 Device (DP1)
7902 {
7903 Method (_ADR, 0, NotSerialized) // _ADR: Address
7904 {
7905 Return (0x0115)
7906 }
7907
7908 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
7909 {
7910 \VUPS (0x00)
7911 If (\VCDT)
7912 {
7913 Return (0x1F)
7914 }
7915 Else
7916 {
7917 Return (0x1D)
7918 }
7919 }
7920
7921 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
7922 {
7923 Return (VQD2) /* \_SB_.PCI0.PEG_.VQD2 */
7924 }
7925
7926 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
7927 {
7928 VSD2 = (Arg0 & 0x01)
7929 If ((Arg0 & 0x80000000))
7930 {
7931 If ((Arg0 & 0x40000000))
7932 {
7933 DSWT (0x02)
7934 }
7935 Else
7936 {
7937 DSWT (0x01)
7938 }
7939 }
7940 }
7941 }
7942
7943 Device (DVI2)
7944 {
7945 Method (_ADR, 0, NotSerialized) // _ADR: Address
7946 {
7947 Return (0x0113)
7948 }
7949
7950 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
7951 {
7952 \VUPS (0x00)
7953 If (\VCDD)
7954 {
7955 Return (0x1F)
7956 }
7957 Else
7958 {
7959 Return (0x1D)
7960 }
7961 }
7962
7963 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
7964 {
7965 Return (VQD5) /* \_SB_.PCI0.PEG_.VQD5 */
7966 }
7967
7968 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
7969 {
7970 VSD5 = (Arg0 & 0x01)
7971 If ((Arg0 & 0x80000000))
7972 {
7973 If ((Arg0 & 0x40000000))
7974 {
7975 DSWT (0x02)
7976 }
7977 Else
7978 {
7979 DSWT (0x01)
7980 }
7981 }
7982 }
7983 }
7984
7985 Device (DP2)
7986 {
7987 Method (_ADR, 0, NotSerialized) // _ADR: Address
7988 {
7989 Return (0x0116)
7990 }
7991
7992 Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
7993 {
7994 \VUPS (0x00)
7995 If (\VCDT)
7996 {
7997 Return (0x1F)
7998 }
7999 Else
8000 {
8001 Return (0x1D)
8002 }
8003 }
8004
8005 Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
8006 {
8007 Return (VQD4) /* \_SB_.PCI0.PEG_.VQD4 */
8008 }
8009
8010 Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
8011 {
8012 VSD4 = (Arg0 & 0x01)
8013 If ((Arg0 & 0x80000000))
8014 {
8015 If ((Arg0 & 0x40000000))
8016 {
8017 DSWT (0x02)
8018 }
8019 Else
8020 {
8021 DSWT (0x01)
8022 }
8023 }
8024 }
8025 }
8026
8027 Method (DSWT, 1, NotSerialized)
8028 {
8029 If (VSDL)
8030 {
8031 Local0 = 0x01
8032 }
8033 Else
8034 {
8035 Local0 = 0x00
8036 }
8037
8038 If (VSDC)
8039 {
8040 Local0 |= 0x02
8041 }
8042
8043 If (VSD0)
8044 {
8045 Local0 |= 0x08
8046 }
8047
8048 If (Local0)
8049 {
8050 If (VUPC)
8051 {
8052 \VSDS (Local0, Arg0)
8053 }
8054 }
8055 Else
8056 {
8057 Noop
8058 }
8059 }
8060 }
8061
8062 Scope (\_SB.PCI0.PEG.VID)
8063 {
8064 Method (NBCI, 4, Serialized)
8065 {
8066 Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
8067 Debug = "------- NBCI DSM --------"
8068 While (One)
8069 {
8070 _T_0 = ToInteger (Arg2)
8071 If ((_T_0 == 0x00))
8072 {
8073 Local0 = Buffer (0x04)
8074 {
8075 0x00, 0x00, 0x00, 0x00 /* .... */
8076 }
8077 Divide (0x00, 0x08, Local2, Local1)
8078 Local2 = (0x01 << Local2)
8079 Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
8080 Divide (0x14, 0x08, Local2, Local1)
8081 Local2 = (0x01 << Local2)
8082 Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
8083 Return (Local0)
8084 }
8085 Else
8086 {
8087 If ((_T_0 == 0x14))
8088 {
8089 Local0 = Package (0x07)
8090 {
8091 0x0110,
8092 0x0200,
8093 0x00,
8094 0x00,
8095 0x05,
8096 0x01,
8097 Package (0x04)
8098 {
8099 0xDC,
8100 0x00,
8101 0x03E8,
8102 Package (0x03)
8103 {
8104 0x65,
8105 Package (0x65)
8106 {
8107 0x00,
8108 0x0A,
8109 0x14,
8110 0x1E,
8111 0x28,
8112 0x32,
8113 0x3C,
8114 0x46,
8115 0x50,
8116 0x5A,
8117 0x64,
8118 0x6E,
8119 0x78,
8120 0x82,
8121 0x8C,
8122 0x96,
8123 0xA0,
8124 0xAA,
8125 0xB4,
8126 0xBE,
8127 0xC8,
8128 0xD2,
8129 0xDC,
8130 0xE6,
8131 0xF0,
8132 0xFA,
8133 0x0104,
8134 0x010E,
8135 0x0118,
8136 0x0122,
8137 0x012C,
8138 0x0136,
8139 0x0140,
8140 0x014A,
8141 0x0154,
8142 0x015E,
8143 0x0168,
8144 0x0172,
8145 0x017C,
8146 0x0186,
8147 0x0190,
8148 0x019A,
8149 0x01A4,
8150 0x01AE,
8151 0x01B8,
8152 0x01C2,
8153 0x01CC,
8154 0x01D6,
8155 0x01E0,
8156 0x01EA,
8157 0x01F4,
8158 0x01FE,
8159 0x0208,
8160 0x0212,
8161 0x021C,
8162 0x0226,
8163 0x0230,
8164 0x023A,
8165 0x0244,
8166 0x024E,
8167 0x0258,
8168 0x0262,
8169 0x026C,
8170 0x0276,
8171 0x0280,
8172 0x028A,
8173 0x0294,
8174 0x029E,
8175 0x02A8,
8176 0x02B2,
8177 0x02BC,
8178 0x02C6,
8179 0x02D0,
8180 0x02DA,
8181 0x02E4,
8182 0x02EE,
8183 0x02F8,
8184 0x0302,
8185 0x030C,
8186 0x0316,
8187 0x0320,
8188 0x032A,
8189 0x0334,
8190 0x033E,
8191 0x0348,
8192 0x0352,
8193 0x035C,
8194 0x0366,
8195 0x0370,
8196 0x037A,
8197 0x0384,
8198 0x038E,
8199 0x0398,
8200 0x03A2,
8201 0x03AC,
8202 0x03B6,
8203 0x03C0,
8204 0x03CA,
8205 0x03D4,
8206 0x03DE,
8207 0x03E8
8208 },
8209
8210 Package (0x65)
8211 {
8212 0x00,
8213 0x0A,
8214 0x14,
8215 0x1E,
8216 0x28,
8217 0x32,
8218 0x3C,
8219 0x46,
8220 0x50,
8221 0x5A,
8222 0x64,
8223 0x6E,
8224 0x78,
8225 0x82,
8226 0x8C,
8227 0x96,
8228 0xA0,
8229 0xAA,
8230 0xB4,
8231 0xBE,
8232 0xC8,
8233 0xD2,
8234 0xDC,
8235 0xE6,
8236 0xF0,
8237 0xFA,
8238 0x0104,
8239 0x010E,
8240 0x0118,
8241 0x0122,
8242 0x012C,
8243 0x0136,
8244 0x0140,
8245 0x014A,
8246 0x0154,
8247 0x015E,
8248 0x0168,
8249 0x0172,
8250 0x017C,
8251 0x0186,
8252 0x0190,
8253 0x019A,
8254 0x01A4,
8255 0x01AE,
8256 0x01B8,
8257 0x01C2,
8258 0x01CC,
8259 0x01D6,
8260 0x01E0,
8261 0x01EA,
8262 0x01F4,
8263 0x01FE,
8264 0x0208,
8265 0x0212,
8266 0x021C,
8267 0x0226,
8268 0x0230,
8269 0x023A,
8270 0x0244,
8271 0x024E,
8272 0x0258,
8273 0x0262,
8274 0x026C,
8275 0x0276,
8276 0x0280,
8277 0x028A,
8278 0x0294,
8279 0x029E,
8280 0x02A8,
8281 0x02B2,
8282 0x02BC,
8283 0x02C6,
8284 0x02D0,
8285 0x02DA,
8286 0x02E4,
8287 0x02EE,
8288 0x02F8,
8289 0x0302,
8290 0x030C,
8291 0x0316,
8292 0x0320,
8293 0x032A,
8294 0x0334,
8295 0x033E,
8296 0x0348,
8297 0x0352,
8298 0x035C,
8299 0x0366,
8300 0x0370,
8301 0x037A,
8302 0x0384,
8303 0x038E,
8304 0x0398,
8305 0x03A2,
8306 0x03AC,
8307 0x03B6,
8308 0x03C0,
8309 0x03CA,
8310 0x03D4,
8311 0x03DE,
8312 0x03E8
8313 }
8314 }
8315 }
8316 }
8317 Local1 = 0x00
8318 While ((Local1 <= 0x64))
8319 {
8320 Local2 = DerefOf (Index (DerefOf (Index (\_SB.PCI0.LPC.EC.BRTD, \BRTN)), Local1))
8321 Local2 *= 0x03E8
8322 Divide (Local2, 0xFF, Local2, Local3)
8323 Index (DerefOf (Index (DerefOf (Index (DerefOf (Index (Local0, 0x06)), 0x03
8324 )), 0x01)), Local1) = Local3
8325 Local1++
8326 }
8327
8328 Return (Local0)
8329 }
8330 }
8331
8332 Break
8333 }
8334
8335 Return (0x80000002)
8336 }
8337
8338 Method (NVSB, 1, NotSerialized)
8339 {
8340 Name (CNT, 0x00)
8341 If ((PBCC == 0x01))
8342 {
8343 If ((PBMR == 0x00))
8344 {
8345 PBMR = 0x02
8346 If ((PBMR == 0x02))
8347 {
8348 While (((PBCC && 0xFF) && (CNT < 0x0A)))
8349 {
8350 CNT++
8351 Sleep (0x01)
8352 }
8353
8354 If (((PBCR & 0x02) == 0x00))
8355 {
8356 Local0 = (Arg0 * 0x03E8)
8357 Divide (Local0, 0xFF, Local1, Local2)
8358 Local2 <<= 0x08
8359 PBDI = Local2
8360 PBCR = 0x86100000
8361 }
8362
8363 PBMR = 0x00
8364 Return (0x01)
8365 }
8366 }
8367 }
8368
8369 Return (0x00)
8370 }
8371 }
8372
8373 OperationRegion (PEGC, PCI_Config, 0x00, 0x0100)
8374 Field (PEGC, DWordAcc, NoLock, Preserve)
8375 {
8376 Offset (0xEC),
8377 GMGP, 1,
8378 HPGP, 1,
8379 PMGP, 1
8380 }
8381 }
8382
8383 Device (B0D3)
8384 {
8385 Name (_ADR, 0x00030000) // _ADR: Address
8386 }
8387
8388 Device (IGBE)
8389 {
8390 Name (_ADR, 0x00190000) // _ADR: Address
8391 Name (_S3D, 0x03) // _S3D: S3 Device State
8392 Name (RID, 0x00)
8393 Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
8394 {
8395 0x6D,
8396 0x04
8397 })
8398 }
8399
8400 Name (LTRE, 0x00)
8401 Name (OBFF, 0x00)
8402 Name (LMSL, 0x00)
8403 Name (LNSL, 0x00)
8404 Device (EXP1)
8405 {
8406 Name (_ADR, 0x001C0000) // _ADR: Address
8407 Name (RID, 0x00)
8408 Method (_INI, 0, NotSerialized) // _INI: Initialize
8409 {
8410 LTRE = LTR1 /* \LTR1 */
8411 LMSL = PML1 /* \PML1 */
8412 LNSL = PNL1 /* \PNL1 */
8413 OBFF = OBF1 /* \OBF1 */
8414 }
8415
8416 Name (LPRT, Package (0x04)
8417 {
8418 Package (0x04)
8419 {
8420 0xFFFF,
8421 0x00,
8422 \_SB.LNKA,
8423 0x00
8424 },
8425
8426 Package (0x04)
8427 {
8428 0xFFFF,
8429 0x01,
8430 \_SB.LNKB,
8431 0x00
8432 },
8433
8434 Package (0x04)
8435 {
8436 0xFFFF,
8437 0x02,
8438 \_SB.LNKC,
8439 0x00
8440 },
8441
8442 Package (0x04)
8443 {
8444 0xFFFF,
8445 0x03,
8446 \_SB.LNKD,
8447 0x00
8448 }
8449 })
8450 Name (APRT, Package (0x04)
8451 {
8452 Package (0x04)
8453 {
8454 0xFFFF,
8455 0x00,
8456 0x00,
8457 0x10
8458 },
8459
8460 Package (0x04)
8461 {
8462 0xFFFF,
8463 0x01,
8464 0x00,
8465 0x11
8466 },
8467
8468 Package (0x04)
8469 {
8470 0xFFFF,
8471 0x02,
8472 0x00,
8473 0x12
8474 },
8475
8476 Package (0x04)
8477 {
8478 0xFFFF,
8479 0x03,
8480 0x00,
8481 0x13
8482 }
8483 })
8484 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
8485 {
8486 If (\GPIC)
8487 {
8488 Return (APRT) /* \_SB_.PCI0.EXP1.APRT */
8489 }
8490 Else
8491 {
8492 Return (LPRT) /* \_SB_.PCI0.EXP1.LPRT */
8493 }
8494 }
8495
8496 OperationRegion (PXCS, PCI_Config, 0x00, 0x0380)
8497 Field (PXCS, AnyAcc, NoLock, Preserve)
8498 {
8499 VDID, 32,
8500 Offset (0x50),
8501 L0SE, 1,
8502 , 3,
8503 LDIS, 1,
8504 Offset (0x51),
8505 Offset (0x52),
8506 , 13,
8507 LASX, 1,
8508 Offset (0x5A),
8509 ABPX, 1,
8510 , 2,
8511 PDCX, 1,
8512 , 2,
8513 PDSX, 1,
8514 Offset (0x5B),
8515 Offset (0x60),
8516 Offset (0x62),
8517 PSPX, 1,
8518 Offset (0xA4),
8519 D3HT, 2,
8520 Offset (0xD8),
8521 , 30,
8522 HPEX, 1,
8523 PMEX, 1,
8524 Offset (0xE2),
8525 , 2,
8526 L23E, 1,
8527 L23R, 1,
8528 Offset (0x324),
8529 , 3,
8530 LEDM, 1
8531 }
8532
8533 Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
8534 {
8535 Offset (0xDC),
8536 , 30,
8537 HPSX, 1,
8538 PMSX, 1
8539 }
8540
8541 Name (LTRV, Package (0x04)
8542 {
8543 0x00,
8544 0x00,
8545 0x00,
8546 0x00
8547 })
8548 Name (OPTS, 0x00)
8549 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
8550 {
8551 Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
8552 Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
8553 While (One)
8554 {
8555 _T_0 = ToInteger (Arg0)
8556 If ((_T_0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
8557 {
8558 While (One)
8559 {
8560 _T_1 = ToInteger (Arg2)
8561 If ((_T_1 == 0x00))
8562 {
8563 OPTS = 0x00
8564 If ((Arg1 >= 0x02))
8565 {
8566 OPTS = 0x01
8567 If (LTRE)
8568 {
8569 OPTS |= 0x40
8570 }
8571
8572 If (OBFF)
8573 {
8574 OPTS |= 0x10
8575 }
8576 }
8577
8578 Return (OPTS) /* \_SB_.PCI0.EXP1.OPTS */
8579 }
8580 Else
8581 {
8582 If ((_T_1 == 0x04))
8583 {
8584 If ((Arg1 >= 0x02))
8585 {
8586 If (OBFF)
8587 {
8588 Return (Buffer (0x10)
8589 {
8590 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
8591 /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00 /* ........ */
8592 })
8593 }
8594 Else
8595 {
8596 Return (Buffer (0x10)
8597 {
8598 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
8599 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
8600 })
8601 }
8602 }
8603 }
8604 Else
8605 {
8606 If ((_T_1 == 0x06))
8607 {
8608 If ((Arg1 >= 0x02))
8609 {
8610 If (LTRE)
8611 {
8612 If (((LMSL == 0x00) || (LNSL == 0x00)))
8613 {
8614 If ((PCHS == 0x01))
8615 {
8616 LMSL = 0x0846
8617 LNSL = 0x0846
8618 }
8619 Else
8620 {
8621 If ((PCHS == 0x02))
8622 {
8623 LMSL = 0x1003
8624 LNSL = 0x1003
8625 }
8626 }
8627 }
8628
8629 Index (LTRV, 0x00) = ((LMSL >> 0x0A) & 0x07)
8630 Index (LTRV, 0x01) = (LMSL & 0x03FF)
8631 Index (LTRV, 0x02) = ((LNSL >> 0x0A) & 0x07)
8632 Index (LTRV, 0x03) = (LNSL & 0x03FF)
8633 Return (LTRV) /* \_SB_.PCI0.EXP1.LTRV */
8634 }
8635 Else
8636 {
8637 Return (0x00)
8638 }
8639 }
8640 }
8641 }
8642 }
8643
8644 Break
8645 }
8646 }
8647
8648 Break
8649 }
8650
8651 Return (Buffer (0x01)
8652 {
8653 0x00 /* . */
8654 })
8655 }
8656
8657 Method (HPME, 0, Serialized)
8658 {
8659 If (PMSX)
8660 {
8661 Local0 = 0xC8
8662 While (Local0)
8663 {
8664 PMSX = 0x01
8665 If (PMSX)
8666 {
8667 Local0--
8668 }
8669 Else
8670 {
8671 Local0 = 0x00
8672 }
8673 }
8674 }
8675 }
8676 }
8677
8678 Device (EXP2)
8679 {
8680 Name (_ADR, 0x001C0001) // _ADR: Address
8681 Name (RID, 0x00)
8682 Method (_INI, 0, NotSerialized) // _INI: Initialize
8683 {
8684 LTRE = LTR2 /* \LTR2 */
8685 LMSL = PML2 /* \PML2 */
8686 LNSL = PNL2 /* \PNL2 */
8687 OBFF = OBF2 /* \OBF2 */
8688 }
8689
8690 Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
8691 {
8692 0x69,
8693 0x04
8694 })
8695 Name (LPRT, Package (0x04)
8696 {
8697 Package (0x04)
8698 {
8699 0xFFFF,
8700 0x00,
8701 \_SB.LNKB,
8702 0x00
8703 },
8704
8705 Package (0x04)
8706 {
8707 0xFFFF,
8708 0x01,
8709 \_SB.LNKC,
8710 0x00
8711 },
8712
8713 Package (0x04)
8714 {
8715 0xFFFF,
8716 0x02,
8717 \_SB.LNKD,
8718 0x00
8719 },
8720
8721 Package (0x04)
8722 {
8723 0xFFFF,
8724 0x03,
8725 \_SB.LNKA,
8726 0x00
8727 }
8728 })
8729 Name (APRT, Package (0x04)
8730 {
8731 Package (0x04)
8732 {
8733 0xFFFF,
8734 0x00,
8735 0x00,
8736 0x11
8737 },
8738
8739 Package (0x04)
8740 {
8741 0xFFFF,
8742 0x01,
8743 0x00,
8744 0x12
8745 },
8746
8747 Package (0x04)
8748 {
8749 0xFFFF,
8750 0x02,
8751 0x00,
8752 0x13
8753 },
8754
8755 Package (0x04)
8756 {
8757 0xFFFF,
8758 0x03,
8759 0x00,
8760 0x10
8761 }
8762 })
8763 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
8764 {
8765 If (\GPIC)
8766 {
8767 Return (APRT) /* \_SB_.PCI0.EXP2.APRT */
8768 }
8769 Else
8770 {
8771 Return (LPRT) /* \_SB_.PCI0.EXP2.LPRT */
8772 }
8773 }
8774
8775 OperationRegion (PXCS, PCI_Config, 0x00, 0x0380)
8776 Field (PXCS, AnyAcc, NoLock, Preserve)
8777 {
8778 VDID, 32,
8779 Offset (0x50),
8780 L0SE, 1,
8781 , 3,
8782 LDIS, 1,
8783 Offset (0x51),
8784 Offset (0x52),
8785 , 13,
8786 LASX, 1,
8787 Offset (0x5A),
8788 ABPX, 1,
8789 , 2,
8790 PDCX, 1,
8791 , 2,
8792 PDSX, 1,
8793 Offset (0x5B),
8794 Offset (0x60),
8795 Offset (0x62),
8796 PSPX, 1,
8797 Offset (0xA4),
8798 D3HT, 2,
8799 Offset (0xD8),
8800 , 30,
8801 HPEX, 1,
8802 PMEX, 1,
8803 Offset (0xE2),
8804 , 2,
8805 L23E, 1,
8806 L23R, 1,
8807 Offset (0x324),
8808 , 3,
8809 LEDM, 1
8810 }
8811
8812 Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
8813 {
8814 Offset (0xDC),
8815 , 30,
8816 HPSX, 1,
8817 PMSX, 1
8818 }
8819
8820 Name (LTRV, Package (0x04)
8821 {
8822 0x00,
8823 0x00,
8824 0x00,
8825 0x00
8826 })
8827 Name (OPTS, 0x00)
8828 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
8829 {
8830 Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
8831 Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
8832 While (One)
8833 {
8834 _T_0 = ToInteger (Arg0)
8835 If ((_T_0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
8836 {
8837 While (One)
8838 {
8839 _T_1 = ToInteger (Arg2)
8840 If ((_T_1 == 0x00))
8841 {
8842 OPTS = 0x00
8843 If ((Arg1 >= 0x02))
8844 {
8845 OPTS = 0x01
8846 If (LTRE)
8847 {
8848 OPTS |= 0x40
8849 }
8850
8851 If (OBFF)
8852 {
8853 OPTS |= 0x10
8854 }
8855 }
8856
8857 Return (OPTS) /* \_SB_.PCI0.EXP2.OPTS */
8858 }
8859 Else
8860 {
8861 If ((_T_1 == 0x04))
8862 {
8863 If ((Arg1 >= 0x02))
8864 {
8865 If (OBFF)
8866 {
8867 Return (Buffer (0x10)
8868 {
8869 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
8870 /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00 /* ........ */
8871 })
8872 }
8873 Else
8874 {
8875 Return (Buffer (0x10)
8876 {
8877 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
8878 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
8879 })
8880 }
8881 }
8882 }
8883 Else
8884 {
8885 If ((_T_1 == 0x06))
8886 {
8887 If ((Arg1 >= 0x02))
8888 {
8889 If (LTRE)
8890 {
8891 If (((LMSL == 0x00) || (LNSL == 0x00)))
8892 {
8893 If ((PCHS == 0x01))
8894 {
8895 LMSL = 0x0846
8896 LNSL = 0x0846
8897 }
8898 Else
8899 {
8900 If ((PCHS == 0x02))
8901 {
8902 LMSL = 0x1003
8903 LNSL = 0x1003
8904 }
8905 }
8906 }
8907
8908 Index (LTRV, 0x00) = ((LMSL >> 0x0A) & 0x07)
8909 Index (LTRV, 0x01) = (LMSL & 0x03FF)
8910 Index (LTRV, 0x02) = ((LNSL >> 0x0A) & 0x07)
8911 Index (LTRV, 0x03) = (LNSL & 0x03FF)
8912 Return (LTRV) /* \_SB_.PCI0.EXP2.LTRV */
8913 }
8914 Else
8915 {
8916 Return (0x00)
8917 }
8918 }
8919 }
8920 }
8921 }
8922
8923 Break
8924 }
8925 }
8926
8927 Break
8928 }
8929
8930 Return (Buffer (0x01)
8931 {
8932 0x00 /* . */
8933 })
8934 }
8935
8936 Method (HPME, 0, Serialized)
8937 {
8938 If (PMSX)
8939 {
8940 Local0 = 0xC8
8941 While (Local0)
8942 {
8943 PMSX = 0x01
8944 If (PMSX)
8945 {
8946 Local0--
8947 }
8948 Else
8949 {
8950 Local0 = 0x00
8951 }
8952 }
8953 }
8954 }
8955 }
8956
8957 Device (EXP3)
8958 {
8959 Name (_ADR, 0x001C0002) // _ADR: Address
8960 Name (RID, 0x00)
8961 Method (_INI, 0, NotSerialized) // _INI: Initialize
8962 {
8963 LTRE = LTR3 /* \LTR3 */
8964 LMSL = PML3 /* \PML3 */
8965 LNSL = PNL3 /* \PNL3 */
8966 OBFF = OBF3 /* \OBF3 */
8967 }
8968
8969 Name (LPRT, Package (0x04)
8970 {
8971 Package (0x04)
8972 {
8973 0xFFFF,
8974 0x00,
8975 \_SB.LNKC,
8976 0x00
8977 },
8978
8979 Package (0x04)
8980 {
8981 0xFFFF,
8982 0x01,
8983 \_SB.LNKD,
8984 0x00
8985 },
8986
8987 Package (0x04)
8988 {
8989 0xFFFF,
8990 0x02,
8991 \_SB.LNKA,
8992 0x00
8993 },
8994
8995 Package (0x04)
8996 {
8997 0xFFFF,
8998 0x03,
8999 \_SB.LNKB,
9000 0x00
9001 }
9002 })
9003 Name (APRT, Package (0x04)
9004 {
9005 Package (0x04)
9006 {
9007 0xFFFF,
9008 0x00,
9009 0x00,
9010 0x12
9011 },
9012
9013 Package (0x04)
9014 {
9015 0xFFFF,
9016 0x01,
9017 0x00,
9018 0x13
9019 },
9020
9021 Package (0x04)
9022 {
9023 0xFFFF,
9024 0x02,
9025 0x00,
9026 0x10
9027 },
9028
9029 Package (0x04)
9030 {
9031 0xFFFF,
9032 0x03,
9033 0x00,
9034 0x11
9035 }
9036 })
9037 Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
9038 {
9039 If (\GPIC)
9040 {
9041 Return (APRT) /* \_SB_.PCI0.EXP3.APRT */
9042 }
9043 Else
9044 {
9045 Return (LPRT) /* \_SB_.PCI0.EXP3.LPRT */
9046 }
9047 }
9048
9049 OperationRegion (PXCS, PCI_Config, 0x00, 0x0380)
9050 Field (PXCS, AnyAcc, NoLock, Preserve)
9051 {
9052 VDID, 32,
9053 Offset (0x50),
9054 L0SE, 1,
9055 , 3,
9056 LDIS, 1,
9057 Offset (0x51),
9058 Offset (0x52),
9059 , 13,
9060 LASX, 1,
9061 Offset (0x5A),
9062 ABPX, 1,
9063 , 2,
9064 PDCX, 1,
9065 , 2,
9066 PDSX, 1,
9067 Offset (0x5B),
9068 Offset (0x60),
9069 Offset (0x62),
9070 PSPX, 1,
9071 Offset (0xA4),
9072 D3HT, 2,
9073 Offset (0xD8),
9074 , 30,
9075 HPEX, 1,
9076 PMEX, 1,
9077 Offset (0xE2),
9078 , 2,
9079 L23E, 1,
9080 L23R, 1,
9081 Offset (0x324),
9082 , 3,
9083 LEDM, 1
9084 }
9085
9086 Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
9087 {
9088 Offset (0xDC),
9089 , 30,
9090 HPSX, 1,
9091 PMSX, 1
9092 }
9093
9094 Name (LTRV, Package (0x04)
9095 {
9096 0x00,
9097 0x00,
9098 0x00,
9099 0x00
9100 })
9101 Name (OPTS, 0x00)
9102 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
9103 {
9104 Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
9105 Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
9106 While (One)
9107 {
9108 _T_0 = ToInteger (Arg0)
9109 If ((_T_0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
9110 {
9111 While (One)
9112 {
9113 _T_1 = ToInteger (Arg2)
9114 If ((_T_1 == 0x00))
9115 {
9116 OPTS = 0x00
9117 If ((Arg1 >= 0x02))
9118 {
9119 OPTS = 0x01
9120 If (LTRE)
9121 {
9122 OPTS |= 0x40
9123 }
9124
9125 If (OBFF)
9126 {
9127 OPTS |= 0x10
9128 }
9129 }
9130
9131 Return (OPTS) /* \_SB_.PCI0.EXP3.OPTS */
9132 }
9133 Else
9134 {
9135 If ((_T_1 == 0x04))
9136 {
9137 If ((Arg1 >= 0x02))
9138 {
9139 If (OBFF)
9140 {
9141 Return (Buffer (0x10)
9142 {
9143 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
9144 /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00 /* ........ */
9145 })
9146 }
9147 Else
9148 {
9149 Return (Buffer (0x10)
9150 {
9151 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
9152 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
9153 })
9154 }
9155 }
9156 }
9157 Else
9158 {
9159 If ((_T_1 == 0x06))
9160 {
9161 If ((Arg1 >= 0x02))
9162 {
9163 If (LTRE)
9164 {
9165 If (((LMSL == 0x00) || (LNSL == 0x00)))
9166 {
9167 If ((PCHS == 0x01))
9168 {
9169 LMSL = 0x0846
9170 LNSL = 0x0846
9171 }
9172 Else
9173 {
9174 If ((PCHS == 0x02))
9175 {
9176 LMSL = 0x1003
9177 LNSL = 0x1003
9178 }
9179 }
9180 }
9181
9182 Index (LTRV, 0x00) = ((LMSL >> 0x0A) & 0x07)
9183 Index (LTRV, 0x01) = (LMSL & 0x03FF)
9184 Index (LTRV, 0x02) = ((LNSL >> 0x0A) & 0x07)
9185 Index (LTRV, 0x03) = (LNSL & 0x03FF)
9186 Return (LTRV) /* \_SB_.PCI0.EXP3.LTRV */
9187 }
9188 Else
9189 {
9190 Return (0x00)
9191 }
9192 }
9193 }
9194 }
9195 }
9196
9197 Break
9198 }
9199 }
9200
9201 Break
9202 }
9203
9204 Return (Buffer (0x01)
9205 {
9206 0x00 /* . */
9207 })
9208 }
9209
9210 Method (HPME, 0, Serialized)
9211 {
9212 If (PMSX)
9213 {
9214 Local0 = 0xC8
9215 While (Local0)
9216 {
9217 PMSX = 0x01
9218 If (PMSX)
9219 {
9220 Local0--
9221 }
9222 Else
9223 {
9224 Local0 = 0x00
9225 }
9226 }
9227 }
9228 }
9229 }
9230
9231 Device (SAT1)
9232 {
9233 Name (_ADR, 0x001F0002) // _ADR: Address
9234 Name (_S3D, 0x03) // _S3D: S3 Device State
9235 Name (RID, 0x00)
9236 }
9237
9238 Device (SAT2)
9239 {
9240 Name (_ADR, 0x001F0005) // _ADR: Address
9241 Name (_S3D, 0x03) // _S3D: S3 Device State
9242 Name (RID, 0x00)
9243 }
9244
9245 Device (SMBU)
9246 {
9247 Name (_ADR, 0x001F0003) // _ADR: Address
9248 Name (_S3D, 0x03) // _S3D: S3 Device State
9249 Name (RID, 0x00)
9250 Device (NFC)
9251 {
9252 Name (_HID, EisaId ("BCM2F29")) // _HID: Hardware ID
9253 Name (_CID, EisaId ("BCM2F29")) // _CID: Compatible ID
9254 Name (_UID, 0x00) // _UID: Unique ID
9255 Method (_STA, 0, NotSerialized) // _STA: Status
9256 {
9257 If ((\_SB.PCI0.LPC.NFCD || \NFCF))
9258 {
9259 Return (0x00)
9260 }
9261 Else
9262 {
9263 Return (0x0F)
9264 }
9265 }
9266
9267 Method (GPEN, 0, NotSerialized)
9268 {
9269 \_GPE.GPFG = 0x01
9270 }
9271
9272 Method (SNFC, 1, NotSerialized)
9273 {
9274 If (Arg0)
9275 {
9276 \_SB.PCI0.LPC.NFCP = 0x01
9277 }
9278 Else
9279 {
9280 \_SB.PCI0.LPC.NFCP = 0x00
9281 }
9282 }
9283 }
9284 }
9285
9286 Device (XHCI)
9287 {
9288 Name (_ADR, 0x00140000) // _ADR: Address
9289 Name (_S3D, 0x03) // _S3D: S3 Device State
9290 Name (RID, 0x00)
9291 Name (LPTH, 0x01)
9292 Name (LPTL, 0x02)
9293 Name (WPTL, 0x03)
9294 Method (PCHV, 0, NotSerialized)
9295 {
9296 If (((PCHG == 0x01) && (PCHS == 0x01)))
9297 {
9298 Return (LPTH) /* \_SB_.PCI0.XHCI.LPTH */
9299 }
9300
9301 If (((PCHG == 0x01) && (PCHS == 0x02)))
9302 {
9303 Return (LPTL) /* \_SB_.PCI0.XHCI.LPTL */
9304 }
9305
9306 If (((PCHG == 0x02) && (PCHS == 0x02)))
9307 {
9308 Return (WPTL) /* \_SB_.PCI0.XHCI.WPTL */
9309 }
9310
9311 Return (0x00)
9312 }
9313
9314 OperationRegion (XHCB, PCI_Config, 0x00, 0x0100)
9315 Field (XHCB, AnyAcc, NoLock, Preserve)
9316 {
9317 DVID, 16,
9318 Offset (0x40),
9319 , 11,
9320 SWAI, 1,
9321 Offset (0x44),
9322 , 12,
9323 SAIP, 2,
9324 Offset (0x48),
9325 Offset (0x74),
9326 D0D3, 2,
9327 Offset (0x75),
9328 PMEE, 1,
9329 , 6,
9330 PMES, 1,
9331 Offset (0xA8),
9332 , 13,
9333 MW13, 1,
9334 MW14, 1,
9335 Offset (0xAC),
9336 Offset (0xB0),
9337 , 13,
9338 MB13, 1,
9339 MB14, 1,
9340 Offset (0xB4),
9341 Offset (0xD0),
9342 PR2, 32,
9343 PR2M, 32,
9344 PR3, 32,
9345 PR3M, 32
9346 }
9347
9348 OperationRegion (XHCP, SystemMemory, (0xF8000000 + 0x000A0000), 0x0100)
9349 Field (XHCP, AnyAcc, Lock, Preserve)
9350 {
9351 Offset (0x04),
9352 PDBM, 16,
9353 Offset (0x10),
9354 MBA1, 32
9355 }
9356
9357 Name (XRST, Zero)
9358 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
9359 {
9360 \_SB.PCI0.LPC.EC.PUBS
9361 })
9362 Name (_PR1, Package (0x01) // _PR1: Power Resources for D1
9363 {
9364 \_SB.PCI0.LPC.EC.PUBS
9365 })
9366 Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
9367 {
9368 \_SB.PCI0.LPC.EC.PUBS
9369 })
9370 Name (_PRW, Package (0x03) // _PRW: Power Resources for Wake
9371 {
9372 0x6D,
9373 0x03,
9374 \_SB.PCI0.LPC.EC.PUBS
9375 })
9376 Method (CUID, 1, Serialized)
9377 {
9378 If ((Arg0 == ToUUID ("7c9512a9-1705-4cb4-af7d-506a2423ab71")))
9379 {
9380 Return (0x01)
9381 }
9382
9383 Return (0x00)
9384 }
9385
9386 Method (POSC, 3, Serialized)
9387 {
9388 CreateDWordField (Arg2, 0x00, CDW1)
9389 CreateDWordField (Arg2, 0x08, CDW3)
9390 If ((\XHCI == 0x00))
9391 {
9392 CDW1 |= 0x02
9393 \_SB.PCI0.LPC.XUSB = 0x00
9394 XRST = 0x00
9395 }
9396
9397 If (!(CDW1 & 0x01))
9398 {
9399 If ((CDW3 & 0x01))
9400 {
9401 ESEL ()
9402 }
9403 Else
9404 {
9405 If (0x00)
9406 {
9407 If ((Arg0 > 0x01))
9408 {
9409 SXHC ()
9410 }
9411 Else
9412 {
9413 CDW1 |= 0x0A
9414 }
9415 }
9416 Else
9417 {
9418 If ((Arg0 > 0x02))
9419 {
9420 SXHC ()
9421 }
9422 Else
9423 {
9424 CDW1 |= 0x0A
9425 }
9426 }
9427 }
9428
9429 Return (Arg2)
9430 }
9431
9432 If ((!(CDW1 & 0x01) && ((\XHCI == 0x02) || (
9433 \XHCI == 0x03))))
9434 {
9435 SXHC ()
9436 }
9437
9438 Return (Arg2)
9439 }
9440
9441 Method (ESEL, 0, Serialized)
9442 {
9443 If (((\XHCI == 0x02) || (\XHCI == 0x03)))
9444 {
9445 PR3 &= 0xFFFFFFC0
9446 PR2 &= 0xFFFF8000
9447 \_SB.PCI0.LPC.XUSB = 0x00
9448 XRST = 0x00
9449 }
9450 }
9451
9452 Method (DEHC, 0, NotSerialized)
9453 {
9454 \XHCC = 0x01
9455 \DIEH (0x01)
9456 }
9457
9458 Method (EEHC, 0, NotSerialized)
9459 {
9460 \XHCC = 0x00
9461 \DIEH (0x00)
9462 }
9463
9464 Method (SXHC, 0, NotSerialized)
9465 {
9466 \_SB.PCI0.LPC.XUSB = 0x01
9467 XRST = 0x01
9468 Local0 = 0x00
9469 Local0 = (PR3 & 0xFFFFFFC0)
9470 PR3 = (Local0 | PR3M) /* \_SB_.PCI0.XHCI.PR3M */
9471 Local0 = 0x00
9472 Local0 = (PR2 & 0xFFFF8000)
9473 PR2 = (Local0 | PR2M) /* \_SB_.PCI0.XHCI.PR2M */
9474 \_SB.PCI0.LPC.XUSB = 0x01
9475 \USBR = 0x01
9476 }
9477
9478 Method (_INI, 0, NotSerialized) // _INI: Initialize
9479 {
9480 If (\WIN8)
9481 {
9482 DEHC ()
9483 SXHC ()
9484 }
9485 Else
9486 {
9487 EEHC ()
9488 }
9489 }
9490
9491 Method (_S0W, 0, NotSerialized) // _S0W: S0 Device Wake State
9492 {
9493 Return (0x03)
9494 }
9495
9496 Method (_PS0, 0, Serialized) // _PS0: Power State 0
9497 {
9498 If ((^DVID == 0xFFFF))
9499 {
9500 Return (Zero)
9501 }
9502
9503 If ((PCHV () == WPTL))
9504 {
9505 Local2 = ^MBA1 /* \_SB_.PCI0.XHCI.MBA1 */
9506 Local1 = ^PDBM /* \_SB_.PCI0.XHCI.PDBM */
9507 ^PDBM &= ~0x06
9508 }
9509 Else
9510 {
9511 If ((PCHV () == LPTL))
9512 {
9513 Local6 = 0x00
9514 Local7 = \_SB.PCI0.XHCI.MBA1
9515 Local7 &= 0xFFFFFFF0
9516 If (((Local7 == 0x00) || (Local7 == 0xFFFFFFF0)))
9517 {
9518 \_SB.PCI0.XHCI.MBA1 = 0xFEAF0000
9519 Local6 = 0x01
9520 }
9521
9522 Local3 = 0x00
9523 Local4 = \_SB.PCI0.XHCI.PDBM
9524 If (((Local4 & 0xFF) == 0x00))
9525 {
9526 Local0 = \_SB.PCI0.XHCI.PDBM
9527 Local0 |= 0x06
9528 \_SB.PCI0.XHCI.PDBM = Local0
9529 Local3 = 0x01
9530 }
9531
9532 Local0 = \_SB.PCI0.XHCI.MBA1
9533 Local0 &= 0xFFFFFFF0
9534 }
9535 }
9536
9537 If ((PCHV () == WPTL))
9538 {
9539 Local5 = ^D0D3 /* \_SB_.PCI0.XHCI.D0D3 */
9540 ^D0D3 = 0x00
9541 ^MBA1 = \XWMB
9542 ^PDBM = (Local1 | 0x02)
9543 }
9544
9545 OperationRegion (MCA1, SystemMemory, \XWMB, 0x9000)
9546 Field (MCA1, DWordAcc, Lock, Preserve)
9547 {
9548 Offset (0x510),
9549 P141, 14,
9550 , 17,
9551 WPR1, 1,
9552 Offset (0x520),
9553 P142, 14,
9554 , 17,
9555 WPR2, 1,
9556 Offset (0x530),
9557 P143, 14,
9558 , 17,
9559 WPR3, 1,
9560 Offset (0x540),
9561 P144, 14,
9562 , 17,
9563 WPR4, 1,
9564 Offset (0x80E0),
9565 , 15,
9566 AX15, 1,
9567 Offset (0x8154),
9568 , 31,
9569 CLK2, 1,
9570 Offset (0x816C),
9571 , 2,
9572 CLK0, 1,
9573 , 11,
9574 CLK1, 1
9575 }
9576
9577 If ((PCHV () == WPTL))
9578 {
9579 ^PDBM &= ~0x02
9580 ^MBA1 = Local2
9581 ^PDBM = Local1
9582 }
9583 Else
9584 {
9585 If ((PCHV () == LPTL))
9586 {
9587 Local0 = \_SB.PCI0.XHCI.MBA1
9588 Local0 &= 0xFFFFFFF0
9589 Local0 = \XWMB
9590 OperationRegion (MCA2, SystemMemory, Local0, 0x9000)
9591 Field (MCA2, DWordAcc, Lock, Preserve)
9592 {
9593 Offset (0x510),
9594 , 4,
9595 WIT1, 1,
9596 , 12,
9597 A171, 7,
9598 Offset (0x520),
9599 , 4,
9600 WIT2, 1,
9601 , 12,
9602 A172, 7,
9603 Offset (0x530),
9604 , 4,
9605 WIT3, 1,
9606 , 12,
9607 A173, 7,
9608 Offset (0x540),
9609 , 4,
9610 WIT4, 1,
9611 , 12,
9612 A174, 7
9613 }
9614
9615 Local5 = \_SB.PCI0.XHCI.D0D3
9616 Local5 &= 0x03
9617 If ((Local5 == 0x03))
9618 {
9619 Local5 = \_SB.PCI0.XHCI.D0D3
9620 Local5 &= 0xFFFFFFFC
9621 \_SB.PCI0.XHCI.D0D3 = Local5
9622 CLK0 = 0x00
9623 CLK1 = 0x00
9624 CLK2 = 0x01
9625 While ((((P141 == 0x02E0) || (P142 == 0x02E0)) || ((P143 ==
9626 0x02E0) || (P144 == 0x02E0)))) {}
9627 If ((P141 == 0x02A0))
9628 {
9629 WPR1 = 0x01
9630 While (((A171 & 0x04) == 0x00)) {}
9631 A171 = 0x7F
9632 }
9633
9634 If ((P142 == 0x02A0))
9635 {
9636 WPR2 = 0x01
9637 While (((A172 & 0x04) == 0x00)) {}
9638 A172 = 0x7F
9639 }
9640
9641 If ((P143 == 0x02A0))
9642 {
9643 WPR3 = 0x01
9644 While (((A173 & 0x04) == 0x00)) {}
9645 A173 = 0x7F
9646 }
9647
9648 If ((P144 == 0x02A0))
9649 {
9650 WPR4 = 0x01
9651 While (((A174 & 0x04) == 0x00)) {}
9652 A174 = 0x7F
9653 }
9654
9655 AX15 = 0x01
9656 Local5 = \_SB.PCI0.XHCI.D0D3
9657 Local5 |= 0x03
9658 \_SB.PCI0.XHCI.D0D3 = Local5
9659 }
9660 Else
9661 {
9662 CLK0 = 0x00
9663 CLK1 = 0x00
9664 CLK2 = 0x01
9665 While ((((P141 == 0x02E0) || (P142 == 0x02E0)) || ((P143 ==
9666 0x02E0) || (P144 == 0x02E0)))) {}
9667 If ((P141 == 0x02A0))
9668 {
9669 WPR1 = 0x01
9670 While (((A171 & 0x04) == 0x00)) {}
9671 A171 = 0x7F
9672 }
9673
9674 If ((P142 == 0x02A0))
9675 {
9676 WPR2 = 0x01
9677 While (((A172 & 0x04) == 0x00)) {}
9678 A172 = 0x7F
9679 }
9680
9681 If ((P143 == 0x02A0))
9682 {
9683 WPR3 = 0x01
9684 While (((A173 & 0x04) == 0x00)) {}
9685 A173 = 0x7F
9686 }
9687
9688 If ((P144 == 0x02A0))
9689 {
9690 WPR4 = 0x01
9691 While (((A174 & 0x04) == 0x00)) {}
9692 A174 = 0x7F
9693 }
9694
9695 AX15 = 0x01
9696 }
9697
9698 ^SWAI = 0x00
9699 ^SAIP = 0x00
9700 If ((Local3 == 0x01))
9701 {
9702 \_SB.PCI0.XHCI.PDBM = Local4
9703 }
9704
9705 If ((Local6 == 0x01))
9706 {
9707 \_SB.PCI0.XHCI.MBA1 = Local7
9708 }
9709 }
9710 }
9711 }
9712
9713 Method (_PS3, 0, Serialized) // _PS3: Power State 3
9714 {
9715 Local1 = ^PDBM /* \_SB_.PCI0.XHCI.PDBM */
9716 Local2 = ^MBA1 /* \_SB_.PCI0.XHCI.MBA1 */
9717 ^PDBM &= ~0x06
9718 ^D0D3 = 0x00
9719 ^MBA1 = \XWMB
9720 ^PDBM = (Local1 | 0x02)
9721 ^PMES = 0x01
9722 ^PMEE = 0x01
9723 Local0 = \XWMB
9724 OperationRegion (MCA1, SystemMemory, \XWMB, 0x9000)
9725 Field (MCA1, DWordAcc, Lock, Preserve)
9726 {
9727 Offset (0x80E0),
9728 , 15,
9729 AX15, 1,
9730 Offset (0x8154),
9731 , 31,
9732 CLK2, 1,
9733 Offset (0x816C),
9734 , 2,
9735 CLK0, 1,
9736 , 11,
9737 CLK1, 1,
9738 Offset (0x8170)
9739 }
9740
9741 If ((PCHV () == LPTL))
9742 {
9743 ^MB13 = 0x01
9744 ^MB14 = 0x01
9745 CLK0 = 0x01
9746 CLK1 = 0x01
9747 }
9748
9749 If ((PCHG == 0x01))
9750 {
9751 CLK2 = 0x00
9752 }
9753
9754 If (((PCHS == 0x02) && (PCHG == 0x01)))
9755 {
9756 AX15 = 0x00
9757 }
9758
9759 If (((PCHG == 0x01) || ((PCHV () == WPTL) && (PCHP == 0x41))))
9760 {
9761 ^SWAI = 0x01
9762 ^SAIP = 0x01
9763 }
9764
9765 ^PDBM &= ~0x02
9766 ^D0D3 = 0x03
9767 ^MBA1 = Local2
9768 ^PDBM = Local1
9769 }
9770
9771 Device (URTH)
9772 {
9773 Name (_ADR, 0x00) // _ADR: Address
9774 Device (HSP0)
9775 {
9776 Name (_ADR, 0x01) // _ADR: Address
9777 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
9778 {
9779 Name (UPCP, Package (0x04)
9780 {
9781 0x00,
9782 0x00,
9783 0x00,
9784 0x00
9785 })
9786 CopyObject (\UPC0, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP0._UPC.UPCP */
9787 If (!(PR2 & 0x01))
9788 {
9789 Index (UPCP, 0x00) = 0x00
9790 }
9791
9792 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP0._UPC.UPCP */
9793 }
9794
9795 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
9796 {
9797 Name (PLDP, Buffer (0x10) {})
9798 PLDP = \PLD0
9799 CreateBitField (PLDP, 0x40, VIS)
9800 If (!(PR2 & 0x01))
9801 {
9802 VIS &= 0x00
9803 }
9804
9805 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP0._PLD.PLDP */
9806 }
9807 }
9808
9809 Device (HSP1)
9810 {
9811 Name (_ADR, 0x02) // _ADR: Address
9812 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
9813 {
9814 Name (UPCP, Package (0x04)
9815 {
9816 0x00,
9817 0x00,
9818 0x00,
9819 0x00
9820 })
9821 CopyObject (\UPC1, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP1._UPC.UPCP */
9822 If (!(PR2 & 0x02))
9823 {
9824 Index (UPCP, 0x00) = 0x00
9825 }
9826
9827 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP1._UPC.UPCP */
9828 }
9829
9830 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
9831 {
9832 Name (PLDP, Buffer (0x10) {})
9833 PLDP = \PLD1
9834 CreateBitField (PLDP, 0x40, VIS)
9835 If (!(PR2 & 0x02))
9836 {
9837 VIS &= 0x00
9838 }
9839
9840 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP1._PLD.PLDP */
9841 }
9842 }
9843
9844 Device (HSP2)
9845 {
9846 Name (_ADR, 0x03) // _ADR: Address
9847 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
9848 {
9849 Name (UPCP, Package (0x04)
9850 {
9851 0x00,
9852 0x00,
9853 0x00,
9854 0x00
9855 })
9856 CopyObject (\UPC2, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP2._UPC.UPCP */
9857 If (!(PR2 & 0x04))
9858 {
9859 Index (UPCP, 0x00) = 0x00
9860 }
9861
9862 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP2._UPC.UPCP */
9863 }
9864
9865 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
9866 {
9867 Name (PLDP, Buffer (0x10) {})
9868 PLDP = \PLD2
9869 CreateBitField (PLDP, 0x40, VIS)
9870 If (!(PR2 & 0x04))
9871 {
9872 VIS &= 0x00
9873 }
9874
9875 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP2._PLD.PLDP */
9876 }
9877 }
9878
9879 Device (HSP3)
9880 {
9881 Name (_ADR, 0x04) // _ADR: Address
9882 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
9883 {
9884 Name (UPCP, Package (0x04)
9885 {
9886 0x00,
9887 0x00,
9888 0x00,
9889 0x00
9890 })
9891 CopyObject (\UPC3, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP3._UPC.UPCP */
9892 If (!(PR2 & 0x08))
9893 {
9894 Index (UPCP, 0x00) = 0x00
9895 }
9896
9897 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP3._UPC.UPCP */
9898 }
9899
9900 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
9901 {
9902 Name (PLDP, Buffer (0x10) {})
9903 PLDP = \PLD3
9904 CreateBitField (PLDP, 0x40, VIS)
9905 If (!(PR2 & 0x08))
9906 {
9907 VIS &= 0x00
9908 }
9909
9910 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP3._PLD.PLDP */
9911 }
9912 }
9913
9914 Device (HSP4)
9915 {
9916 Name (_ADR, 0x05) // _ADR: Address
9917 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
9918 {
9919 Name (UPCP, Package (0x04)
9920 {
9921 0x00,
9922 0x00,
9923 0x00,
9924 0x00
9925 })
9926 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP4._UPC.UPCP */
9927 If (!(PR2 & 0x10))
9928 {
9929 Index (UPCP, 0x00) = 0x00
9930 }
9931
9932 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP4._UPC.UPCP */
9933 }
9934
9935 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
9936 {
9937 Name (PLDP, Buffer (0x10) {})
9938 PLDP = \PLDI
9939 CreateBitField (PLDP, 0x40, VIS)
9940 If (!(PR2 & 0x10))
9941 {
9942 VIS &= 0x00
9943 }
9944
9945 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP4._PLD.PLDP */
9946 }
9947 }
9948
9949 Device (HSP5)
9950 {
9951 Name (_ADR, 0x06) // _ADR: Address
9952 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
9953 {
9954 Name (UPCP, Package (0x04)
9955 {
9956 0x00,
9957 0x00,
9958 0x00,
9959 0x00
9960 })
9961 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP5._UPC.UPCP */
9962 If (!(PR2 & 0x20))
9963 {
9964 Index (UPCP, 0x00) = 0x00
9965 }
9966
9967 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP5._UPC.UPCP */
9968 }
9969
9970 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
9971 {
9972 Name (PLDP, Buffer (0x10) {})
9973 PLDP = \PLDI
9974 CreateBitField (PLDP, 0x40, VIS)
9975 If (!(PR2 & 0x20))
9976 {
9977 VIS &= 0x00
9978 }
9979
9980 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP5._PLD.PLDP */
9981 }
9982 }
9983
9984 Device (HSP6)
9985 {
9986 Name (_ADR, 0x07) // _ADR: Address
9987 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
9988 {
9989 Name (UPCP, Package (0x04)
9990 {
9991 0x00,
9992 0x00,
9993 0x00,
9994 0x00
9995 })
9996 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP6._UPC.UPCP */
9997 If (!(PR2 & 0x40))
9998 {
9999 Index (UPCP, 0x00) = 0x00
10000 }
10001
10002 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP6._UPC.UPCP */
10003 }
10004
10005 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10006 {
10007 Name (PLDP, Buffer (0x10) {})
10008 PLDP = \PLDI
10009 CreateBitField (PLDP, 0x40, VIS)
10010 If (!(PR2 & 0x40))
10011 {
10012 VIS &= 0x00
10013 }
10014
10015 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP6._PLD.PLDP */
10016 }
10017 }
10018
10019 Device (HSP7)
10020 {
10021 Name (_ADR, 0x08) // _ADR: Address
10022 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10023 {
10024 Name (UPCP, Package (0x04)
10025 {
10026 0x00,
10027 0x00,
10028 0x00,
10029 0x00
10030 })
10031 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP7._UPC.UPCP */
10032 If (!(PR2 & 0x80))
10033 {
10034 Index (UPCP, 0x00) = 0x00
10035 }
10036
10037 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP7._UPC.UPCP */
10038 }
10039
10040 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10041 {
10042 Name (PLDP, Buffer (0x10) {})
10043 PLDP = \PLDI
10044 CreateBitField (PLDP, 0x40, VIS)
10045 If (!(PR2 & 0x80))
10046 {
10047 VIS &= 0x00
10048 }
10049
10050 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP7._PLD.PLDP */
10051 }
10052
10053 Device (WCAM)
10054 {
10055 Name (_ADR, 0x08) // _ADR: Address
10056 Method (_STA, 0, NotSerialized) // _STA: Status
10057 {
10058 If (\WIN8)
10059 {
10060 Return (0x0F)
10061 }
10062 Else
10063 {
10064 Return (0x00)
10065 }
10066 }
10067
10068 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10069 {
10070 Return (\UPCI)
10071 }
10072
10073 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10074 {
10075 Return (\PLDC)
10076 }
10077 }
10078 }
10079
10080 Device (HSPA)
10081 {
10082 Name (_ADR, 0x0B) // _ADR: Address
10083 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10084 {
10085 Name (UPCP, Package (0x04)
10086 {
10087 0x00,
10088 0x00,
10089 0x00,
10090 0x00
10091 })
10092 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSPA._UPC.UPCP */
10093 If (!(PR2 & 0x40))
10094 {
10095 Index (UPCP, 0x00) = 0x00
10096 }
10097
10098 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSPA._UPC.UPCP */
10099 }
10100
10101 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10102 {
10103 Name (PLDP, Buffer (0x10) {})
10104 PLDP = \PLDI
10105 CreateBitField (PLDP, 0x40, VIS)
10106 If (!(PR2 & 0x40))
10107 {
10108 VIS &= 0x00
10109 }
10110
10111 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSPA._PLD.PLDP */
10112 }
10113 }
10114
10115 Device (SSP0)
10116 {
10117 Name (_ADR, 0x0C) // _ADR: Address
10118 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10119 {
10120 Name (UPCP, Package (0x04)
10121 {
10122 0x00,
10123 0x00,
10124 0x00,
10125 0x00
10126 })
10127 CopyObject (\UPC0, UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP0._UPC.UPCP */
10128 If ((!(PR2 & 0x01) || !(PR3 & 0x01)))
10129 {
10130 Index (UPCP, 0x00) = 0x00
10131 }
10132
10133 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP0._UPC.UPCP */
10134 }
10135
10136 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10137 {
10138 Name (PLDP, Buffer (0x10) {})
10139 PLDP = \PLD0
10140 CreateBitField (PLDP, 0x40, VIS)
10141 If ((!(PR2 & 0x01) || !(PR3 & 0x01)))
10142 {
10143 VIS &= 0x00
10144 }
10145
10146 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.SSP0._PLD.PLDP */
10147 }
10148 }
10149
10150 Device (SSP1)
10151 {
10152 Name (_ADR, 0x0D) // _ADR: Address
10153 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10154 {
10155 Name (UPCP, Package (0x04)
10156 {
10157 0x00,
10158 0x00,
10159 0x00,
10160 0x00
10161 })
10162 CopyObject (\UPC1, UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP1._UPC.UPCP */
10163 If ((!(PR2 & 0x02) || !(PR3 & 0x02)))
10164 {
10165 Index (UPCP, 0x00) = 0x00
10166 }
10167
10168 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP1._UPC.UPCP */
10169 }
10170
10171 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10172 {
10173 Name (PLDP, Buffer (0x10) {})
10174 PLDP = \PLD1
10175 CreateBitField (PLDP, 0x40, VIS)
10176 If ((!(PR2 & 0x02) || !(PR3 & 0x02)))
10177 {
10178 VIS &= 0x00
10179 }
10180
10181 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.SSP1._PLD.PLDP */
10182 }
10183 }
10184
10185 Device (SSP2)
10186 {
10187 Name (_ADR, 0x0E) // _ADR: Address
10188 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10189 {
10190 Name (UPCP, Package (0x04)
10191 {
10192 0x00,
10193 0x00,
10194 0x00,
10195 0x00
10196 })
10197 CopyObject (\UPC2, UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP2._UPC.UPCP */
10198 If ((!(PR2 & 0x04) || !(PR3 & 0x04)))
10199 {
10200 Index (UPCP, 0x00) = 0x00
10201 }
10202
10203 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP2._UPC.UPCP */
10204 }
10205
10206 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10207 {
10208 Name (PLDP, Buffer (0x10) {})
10209 PLDP = \PLD2
10210 CreateBitField (PLDP, 0x40, VIS)
10211 If ((!(PR2 & 0x04) || !(PR3 & 0x04)))
10212 {
10213 VIS &= 0x00
10214 }
10215
10216 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.SSP2._PLD.PLDP */
10217 }
10218 }
10219
10220 Device (SSP3)
10221 {
10222 Name (_ADR, 0x0F) // _ADR: Address
10223 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10224 {
10225 Name (UPCP, Package (0x04)
10226 {
10227 0x00,
10228 0x00,
10229 0x00,
10230 0x00
10231 })
10232 CopyObject (\UPC3, UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP3._UPC.UPCP */
10233 If ((!(PR2 & 0x04) || !(PR3 & 0x04)))
10234 {
10235 Index (UPCP, 0x00) = 0x00
10236 }
10237
10238 Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP3._UPC.UPCP */
10239 }
10240
10241 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10242 {
10243 Name (PLDP, Buffer (0x10) {})
10244 PLDP = \PLD3
10245 CreateBitField (PLDP, 0x40, VIS)
10246 If ((!(PR2 & 0x04) || !(PR3 & 0x04)))
10247 {
10248 VIS &= 0x00
10249 }
10250
10251 Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.SSP3._PLD.PLDP */
10252 }
10253 }
10254 }
10255 }
10256
10257 Device (EHC1)
10258 {
10259 Name (_ADR, 0x001D0000) // _ADR: Address
10260 Name (_S3D, 0x03) // _S3D: S3 Device State
10261 Name (RID, 0x00)
10262 OperationRegion (EHCS, PCI_Config, 0x00, 0x0100)
10263 Field (EHCS, DWordAcc, NoLock, Preserve)
10264 {
10265 Offset (0x62),
10266 PWKI, 1,
10267 PWUC, 8,
10268 Offset (0x64)
10269 }
10270
10271 Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
10272 {
10273 \_SB.PCI0.LPC.EC.PUBS
10274 })
10275 Name (_PR1, Package (0x01) // _PR1: Power Resources for D1
10276 {
10277 \_SB.PCI0.LPC.EC.PUBS
10278 })
10279 Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
10280 {
10281 \_SB.PCI0.LPC.EC.PUBS
10282 })
10283 Method (_INI, 0, NotSerialized) // _INI: Initialize
10284 {
10285 PWKI = 0x01
10286 PWUC = 0x23
10287 }
10288
10289 Name (_PRW, Package (0x03) // _PRW: Power Resources for Wake
10290 {
10291 0x6D,
10292 0x03,
10293 \_SB.PCI0.LPC.EC.PUBS
10294 })
10295 Device (URTH)
10296 {
10297 Name (_ADR, 0x00) // _ADR: Address
10298 Device (URMH)
10299 {
10300 Name (_ADR, 0x01) // _ADR: Address
10301 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10302 {
10303 Return (\UPCI)
10304 }
10305
10306 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10307 {
10308 Return (\PLDI)
10309 }
10310
10311 Device (PRT0)
10312 {
10313 Name (_ADR, 0x01) // _ADR: Address
10314 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10315 {
10316 Name (UPCP, Package (0x04)
10317 {
10318 0x00,
10319 0x00,
10320 0x00,
10321 0x00
10322 })
10323 CopyObject (\UPC0, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT0._UPC.UPCP */
10324 If ((\XHCI == 0x00)) {}
10325 Else
10326 {
10327 If ((\_SB.PCI0.XHCI.PR2 & 0x01))
10328 {
10329 Index (UPCP, 0x00) = 0x00
10330 }
10331 }
10332
10333 Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT0._UPC.UPCP */
10334 }
10335
10336 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10337 {
10338 Name (PLDP, Buffer (0x10) {})
10339 PLDP = \PLD0
10340 CreateBitField (PLDP, 0x40, VIS)
10341 If ((\XHCI == 0x00)) {}
10342 Else
10343 {
10344 If ((\_SB.PCI0.XHCI.PR2 & 0x01))
10345 {
10346 VIS &= 0x00
10347 }
10348
10349 Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT0._PLD.PLDP */
10350 }
10351 }
10352 }
10353
10354 Device (PRT1)
10355 {
10356 Name (_ADR, 0x02) // _ADR: Address
10357 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10358 {
10359 Name (UPCP, Package (0x04)
10360 {
10361 0x00,
10362 0x00,
10363 0x00,
10364 0x00
10365 })
10366 CopyObject (\UPC1, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT1._UPC.UPCP */
10367 If ((\XHCI == 0x00)) {}
10368 Else
10369 {
10370 If ((\_SB.PCI0.XHCI.PR2 & 0x02))
10371 {
10372 Index (UPCP, 0x00) = 0x00
10373 }
10374 }
10375
10376 Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT1._UPC.UPCP */
10377 }
10378
10379 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10380 {
10381 Name (PLDP, Buffer (0x10) {})
10382 PLDP = \PLD1
10383 CreateBitField (PLDP, 0x40, VIS)
10384 If ((\XHCI == 0x00)) {}
10385 Else
10386 {
10387 If ((\_SB.PCI0.XHCI.PR2 & 0x02))
10388 {
10389 VIS &= 0x00
10390 }
10391 }
10392
10393 Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT1._PLD.PLDP */
10394 }
10395 }
10396
10397 Device (PRT2)
10398 {
10399 Name (_ADR, 0x03) // _ADR: Address
10400 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10401 {
10402 Name (UPCP, Package (0x04)
10403 {
10404 0x00,
10405 0x00,
10406 0x00,
10407 0x00
10408 })
10409 CopyObject (\UPC2, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT2._UPC.UPCP */
10410 If ((\XHCI == 0x00)) {}
10411 Else
10412 {
10413 If ((\_SB.PCI0.XHCI.PR2 & 0x04))
10414 {
10415 Index (UPCP, 0x00) = 0x00
10416 }
10417 }
10418
10419 Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT2._UPC.UPCP */
10420 }
10421
10422 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10423 {
10424 Name (PLDP, Buffer (0x10) {})
10425 PLDP = \PLD2
10426 CreateBitField (PLDP, 0x40, VIS)
10427 If ((\XHCI == 0x00)) {}
10428 Else
10429 {
10430 If ((\_SB.PCI0.XHCI.PR2 & 0x04))
10431 {
10432 VIS &= 0x00
10433 }
10434 }
10435
10436 Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT2._PLD.PLDP */
10437 }
10438 }
10439
10440 Device (PRT3)
10441 {
10442 Name (_ADR, 0x04) // _ADR: Address
10443 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10444 {
10445 Name (UPCP, Package (0x04)
10446 {
10447 0x00,
10448 0x00,
10449 0x00,
10450 0x00
10451 })
10452 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT3._UPC.UPCP */
10453 If ((\XHCI == 0x00)) {}
10454 Else
10455 {
10456 If ((\_SB.PCI0.XHCI.PR2 & 0x08))
10457 {
10458 Index (UPCP, 0x00) = 0x00
10459 }
10460 }
10461
10462 Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT3._UPC.UPCP */
10463 }
10464
10465 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10466 {
10467 Name (PLDP, Buffer (0x10) {})
10468 PLDP = \PLD3
10469 CreateBitField (PLDP, 0x40, VIS)
10470 If ((\XHCI == 0x00)) {}
10471 Else
10472 {
10473 If ((\_SB.PCI0.XHCI.PR2 & 0x08))
10474 {
10475 VIS &= 0x00
10476 }
10477 }
10478
10479 Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT3._PLD.PLDP */
10480 }
10481 }
10482
10483 Device (PRT4)
10484 {
10485 Name (_ADR, 0x05) // _ADR: Address
10486 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10487 {
10488 Name (UPCP, Package (0x04)
10489 {
10490 0x00,
10491 0x00,
10492 0x00,
10493 0x00
10494 })
10495 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT4._UPC.UPCP */
10496 If ((\XHCI == 0x00)) {}
10497 Else
10498 {
10499 If ((\_SB.PCI0.XHCI.PR2 & 0x10))
10500 {
10501 Index (UPCP, 0x00) = 0x00
10502 }
10503 }
10504
10505 Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT4._UPC.UPCP */
10506 }
10507
10508 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10509 {
10510 Name (PLDP, Buffer (0x10) {})
10511 PLDP = \PLDI
10512 CreateBitField (PLDP, 0x40, VIS)
10513 If ((\XHCI == 0x00)) {}
10514 Else
10515 {
10516 If ((\_SB.PCI0.XHCI.PR2 & 0x10))
10517 {
10518 VIS &= 0x00
10519 }
10520 }
10521
10522 Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT4._PLD.PLDP */
10523 }
10524 }
10525
10526 Device (PRT5)
10527 {
10528 Name (_ADR, 0x06) // _ADR: Address
10529 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10530 {
10531 Name (UPCP, Package (0x04)
10532 {
10533 0x00,
10534 0x00,
10535 0x00,
10536 0x00
10537 })
10538 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT5._UPC.UPCP */
10539 If ((\XHCI == 0x00)) {}
10540 Else
10541 {
10542 If ((\_SB.PCI0.XHCI.PR2 & 0x20))
10543 {
10544 Index (UPCP, 0x00) = 0x00
10545 }
10546 }
10547
10548 Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT5._UPC.UPCP */
10549 }
10550
10551 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10552 {
10553 Name (PLDP, Buffer (0x10) {})
10554 PLDP = \PLDI
10555 CreateBitField (PLDP, 0x40, VIS)
10556 If ((\XHCI == 0x00)) {}
10557 Else
10558 {
10559 If ((\_SB.PCI0.XHCI.PR2 & 0x20))
10560 {
10561 VIS &= 0x00
10562 }
10563 }
10564
10565 Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT5._PLD.PLDP */
10566 }
10567 }
10568
10569 Device (PRT6)
10570 {
10571 Name (_ADR, 0x07) // _ADR: Address
10572 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10573 {
10574 Name (UPCP, Package (0x04)
10575 {
10576 0x00,
10577 0x00,
10578 0x00,
10579 0x00
10580 })
10581 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT6._UPC.UPCP */
10582 If ((\XHCI == 0x00)) {}
10583 Else
10584 {
10585 If ((\_SB.PCI0.XHCI.PR2 & 0x40))
10586 {
10587 Index (UPCP, 0x00) = 0x00
10588 }
10589 }
10590
10591 Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT6._UPC.UPCP */
10592 }
10593
10594 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10595 {
10596 Name (PLDP, Buffer (0x10) {})
10597 PLDP = \PLDI
10598 CreateBitField (PLDP, 0x40, VIS)
10599 If ((\XHCI == 0x00)) {}
10600 Else
10601 {
10602 If ((\_SB.PCI0.XHCI.PR2 & 0x40))
10603 {
10604 VIS &= 0x00
10605 }
10606 }
10607
10608 Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT6._PLD.PLDP */
10609 }
10610 }
10611
10612 Device (PRT7)
10613 {
10614 Name (_ADR, 0x08) // _ADR: Address
10615 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10616 {
10617 Return (\UPCI)
10618 }
10619
10620 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10621 {
10622 Return (\PLDI)
10623 }
10624
10625 Device (WCAM)
10626 {
10627 Name (_ADR, 0x08) // _ADR: Address
10628 Method (_STA, 0, NotSerialized) // _STA: Status
10629 {
10630 If (\WIN8)
10631 {
10632 Return (0x0F)
10633 }
10634 Else
10635 {
10636 Return (0x00)
10637 }
10638 }
10639
10640 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10641 {
10642 Return (\UPCI)
10643 }
10644
10645 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10646 {
10647 Return (\PLDC)
10648 }
10649 }
10650 }
10651 }
10652
10653 Device (PRT3)
10654 {
10655 Name (_ADR, 0x03) // _ADR: Address
10656 Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
10657 {
10658 Name (UPCP, Package (0x04)
10659 {
10660 0x00,
10661 0x00,
10662 0x00,
10663 0x00
10664 })
10665 CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.EHC1.URTH.PRT3._UPC.UPCP */
10666 If ((\XHCI == 0x00))
10667 {
10668 Index (UPCP, 0x00) = 0x00
10669 }
10670 Else
10671 {
10672 If ((\_SB.PCI0.XHCI.PR2 & 0x40))
10673 {
10674 Index (UPCP, 0x00) = 0x00
10675 }
10676 }
10677
10678 Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.PRT3._UPC.UPCP */
10679 }
10680
10681 Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
10682 {
10683 Name (PLDP, Buffer (0x10) {})
10684 PLDP = \PLDI
10685 CreateBitField (PLDP, 0x40, VIS)
10686 If ((\XHCI == 0x00)) {}
10687 Else
10688 {
10689 If ((\_SB.PCI0.XHCI.PR2 & 0x40))
10690 {
10691 VIS &= 0x00
10692 }
10693 }
10694
10695 Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.PRT3._PLD.PLDP */
10696 }
10697 }
10698 }
10699 }
10700
10701 Device (HDEF)
10702 {
10703 Name (_ADR, 0x001B0000) // _ADR: Address
10704 Name (_S3D, 0x03) // _S3D: S3 Device State
10705 Name (RID, 0x00)
10706 }
10707 }
10708
10709 Scope (\_SB.PCI0.LPC.EC)
10710 {
10711 Name (BDEV, 0xFF)
10712 Name (BSTS, 0x00)
10713 Name (BHKE, 0x00)
10714 Method (_Q2C, 0, NotSerialized) // _Qxx: EC Query
10715 {
10716 If ((BSTS == 0x00))
10717 {
10718 BDEV = BGID (0x00)
10719 NBRE (BDEV)
10720 }
10721 }
10722
10723 Method (_Q2D, 0, NotSerialized) // _Qxx: EC Query
10724 {
10725 BDEV = BGID (0x00)
10726 NBIN (BDEV)
10727 }
10728
10729 Method (_Q38, 0, NotSerialized) // _Qxx: EC Query
10730 {
10731 Local0 = BGID (0x00)
10732 If ((Local0 == 0x0F))
10733 {
10734 BDIS ()
10735 \BHDP (0x01, 0x00)
10736 NBEJ (BDEV)
10737 BDEV = Local0
10738 If ((\BIDE == 0x03))
10739 {
10740 \_SB.PCI0.SAT1.PRIM.GTME = 0x00
10741 \_SB.PCI0.SAT1.SCND.GTME = 0x00
10742 }
10743 }
10744 Else
10745 {
10746 If (HPBU) {}
10747 Else
10748 {
10749 BDEV = Local0
10750 NBIN (Local0)
10751 }
10752 }
10753 }
10754
10755 Method (NBRE, 1, NotSerialized)
10756 {
10757 If ((Arg0 < 0x0C))
10758 {
10759 If ((\BIDE == 0x03))
10760 {
10761 Notify (\_SB.PCI0.SAT1.SCND.MSTR, 0x03) // Eject Request
10762 }
10763 Else
10764 {
10765 Notify (\_SB.PCI0.SAT1.PRT1, 0x03) // Eject Request
10766 }
10767 }
10768 }
10769
10770 Method (NBEJ, 1, NotSerialized)
10771 {
10772 If ((BSTS == 0x00))
10773 {
10774 If ((Arg0 < 0x0C))
10775 {
10776 If ((\BIDE == 0x03))
10777 {
10778 Notify (\_SB.PCI0.SAT1.SCND.MSTR, 0x01) // Device Check
10779 }
10780 Else
10781 {
10782 Notify (\_SB.PCI0.SAT1.PRT1, 0x01) // Device Check
10783 }
10784 }
10785 }
10786
10787 BEEP (0x00)
10788 BSTS = 0x00
10789 }
10790
10791 Method (NBIN, 1, NotSerialized)
10792 {
10793 If ((Arg0 < 0x0C))
10794 {
10795 BEN (0x01)
10796 If ((\BIDE == 0x03))
10797 {
10798 Notify (\_SB.PCI0.SAT1.SCND.MSTR, 0x01) // Device Check
10799 }
10800 Else
10801 {
10802 Notify (\_SB.PCI0.SAT1.PRT1, 0x01) // Device Check
10803 }
10804 }
10805
10806 BEEP (0x00)
10807 BSTS = 0x00
10808 }
10809
10810 Method (BEJ0, 1, NotSerialized)
10811 {
10812 If (Arg0)
10813 {
10814 BDIS ()
10815 \BHDP (0x01, 0x00)
10816 BSTS = 0x01
10817 If (BHKE)
10818 {
10819 BHKE = 0x00
10820 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x3003)
10821 }
10822 }
10823 Else
10824 {
10825 BSTS = 0x00
10826 }
10827 }
10828
10829 Method (BEJ3, 1, NotSerialized)
10830 {
10831 If (Arg0)
10832 {
10833 BDIS ()
10834 BSTS = 0x01
10835 }
10836 Else
10837 {
10838 BSTS = 0x00
10839 }
10840 }
10841
10842 Method (BPTS, 1, NotSerialized)
10843 {
10844 HDBM = 0x01
10845 If ((BSTS != 0x00))
10846 {
10847 BDEV = 0x0F
10848 BSTS = 0x00
10849 }
10850
10851 BHKE = 0x00
10852 BUWK (0x00)
10853 }
10854
10855 Method (BWAK, 1, NotSerialized)
10856 {
10857 BUWK (0x00)
10858 Local0 = BGID (0x00)
10859 If ((BSTS == 0x00))
10860 {
10861 If ((Local0 != BDEV))
10862 {
10863 NBEJ (BDEV)
10864 BDEV = Local0
10865 NBIN (Local0)
10866 }
10867 Else
10868 {
10869 If ((\LFDC || (BDEV != 0x0D)))
10870 {
10871 If ((Local0 != 0x0F))
10872 {
10873 If (HPBU)
10874 {
10875 If ((Arg0 <= 0x02)) {}
10876 Else
10877 {
10878 NBRE (Local0)
10879 }
10880 }
10881 }
10882 }
10883 }
10884 }
10885
10886 If ((BDEV < 0x0C))
10887 {
10888 \UBIS (0x00)
10889 }
10890 Else
10891 {
10892 \UBIS (0x01)
10893 }
10894 }
10895
10896 Method (BDIS, 0, NotSerialized)
10897 {
10898 If (!\_SB.PCI0.LPC.CSON)
10899 {
10900 If (!\_SB.PCI0.LPC.GLIS)
10901 {
10902 \UBIS (0x01)
10903 }
10904
10905 \_SB.PCI0.LPC.CSON = 0x01
10906 \IDET = 0x0F
10907 }
10908 }
10909
10910 Method (BPON, 1, NotSerialized)
10911 {
10912 If (\_SB.PCI0.LPC.CSON)
10913 {
10914 \_SB.PCI0.LPC.CSON = 0x00
10915 If (\_SB.PCI0.LPC.GLIS)
10916 {
10917 \UBIS (0x00)
10918 }
10919 }
10920 }
10921
10922 Method (BEN, 1, NotSerialized)
10923 {
10924 If (\_SB.PCI0.LPC.CSON)
10925 {
10926 BPON (Arg0)
10927 If (Arg0)
10928 {
10929 IRDY ()
10930 }
10931 }
10932 }
10933
10934 Method (BSTA, 1, NotSerialized)
10935 {
10936 If (\_SB.PCI0.LPC.CSON)
10937 {
10938 Return (0x00)
10939 }
10940
10941 BINI ()
10942 If ((Arg0 == 0x01))
10943 {
10944 Return ((BDEV < 0x0C))
10945 }
10946
10947 Return (0x00)
10948 }
10949
10950 Method (BUWK, 1, NotSerialized)
10951 {
10952 If (\H8DR)
10953 {
10954 If (Arg0)
10955 {
10956 \_SB.PCI0.LPC.EC.HWBU = 0x01
10957 }
10958 Else
10959 {
10960 \_SB.PCI0.LPC.EC.HWBU = 0x00
10961 }
10962 }
10963 Else
10964 {
10965 If (Arg0)
10966 {
10967 \MBEC (0x32, 0xFF, 0x80)
10968 }
10969 Else
10970 {
10971 \MBEC (0x32, 0x7F, 0x00)
10972 }
10973 }
10974 }
10975
10976 Method (BINI, 0, NotSerialized)
10977 {
10978 If ((BDEV == 0xFF))
10979 {
10980 BDEV = BGID (0x00)
10981 }
10982 }
10983
10984 Method (BGID, 1, NotSerialized)
10985 {
10986 If (Arg0)
10987 {
10988 Local0 = 0xFF
10989 }
10990 Else
10991 {
10992 If (\H8DR)
10993 {
10994 Local1 = HPBU /* \_SB_.PCI0.LPC_.EC__.HPBU */
10995 Local2 = HBID /* \_SB_.PCI0.LPC_.EC__.HBID */
10996 }
10997 Else
10998 {
10999 Local2 = RBEC (0x47)
11000 Local1 = (Local2 & 0x01)
11001 Local2 &= 0x04
11002 Local2 >>= 0x02
11003 }
11004
11005 If (Local2)
11006 {
11007 Local0 = 0x0F
11008 }
11009 Else
11010 {
11011 If (HDUB)
11012 {
11013 Local0 = 0x0F
11014 }
11015 Else
11016 {
11017 If (((\IDET == 0x03) || (\IDET == 0x06)))
11018 {
11019 Local0 = \IDET
11020 }
11021 Else
11022 {
11023 Local0 = 0x07
11024 }
11025 }
11026 }
11027
11028 If ((Local0 == 0x0F)) {}
11029 }
11030
11031 If ((\HDUB && (Local0 < 0x0C)))
11032 {
11033 Local0 = 0x0F
11034 }
11035
11036 Return (Local0)
11037 }
11038
11039 Method (IRDY, 0, NotSerialized)
11040 {
11041 Local0 = 0x01F4
11042 Local1 = 0x3C
11043 Local2 = Zero
11044 While (Local1)
11045 {
11046 Sleep (Local0)
11047 Local3 = \BCHK ()
11048 If (!Local3)
11049 {
11050 Break
11051 }
11052
11053 If ((Local3 == 0x02))
11054 {
11055 Local2 = One
11056 Break
11057 }
11058
11059 Local1--
11060 }
11061
11062 Return (Local2)
11063 }
11064 }
11065
11066 Scope (\_SB.PCI0.LPC.EC)
11067 {
11068 Method (_Q43, 0, NotSerialized) // _Qxx: EC Query
11069 {
11070 \UCMS (0x18)
11071 }
11072
11073 Method (SAUM, 1, NotSerialized)
11074 {
11075 If ((Arg0 > 0x03))
11076 {
11077 Noop
11078 }
11079 Else
11080 {
11081 If (\H8DR)
11082 {
11083 HAUM = Arg0
11084 }
11085 Else
11086 {
11087 \MBEC (0x03, 0x9F, (Arg0 << 0x05))
11088 }
11089 }
11090 }
11091 }
11092
11093 Scope (\_SB.PCI0.LPC.EC.HKEY)
11094 {
11095 Method (GSMS, 1, NotSerialized)
11096 {
11097 Return (\AUDC (0x00, 0x00))
11098 }
11099
11100 Method (SSMS, 1, NotSerialized)
11101 {
11102 Return (\AUDC (0x01, (Arg0 & 0x01)))
11103 }
11104
11105 Method (SHDA, 1, NotSerialized)
11106 {
11107 Return (\AUDC (0x02, (Arg0 & 0x01)))
11108 }
11109 }
11110
11111 Scope (\_SB.PCI0.LPC.EC)
11112 {
11113 Name (BRTW, Package (0x12)
11114 {
11115 0x64,
11116 0x64,
11117 0x05,
11118 0x0A,
11119 0x14,
11120 0x19,
11121 0x1E,
11122 0x23,
11123 0x28,
11124 0x2D,
11125 0x32,
11126 0x37,
11127 0x3C,
11128 0x41,
11129 0x46,
11130 0x50,
11131 0x5A,
11132 0x64
11133 })
11134 Name (BRTB, Package (0x04)
11135 {
11136 Package (0x16)
11137 {
11138 0x1E,
11139 0x03,
11140 0x03,
11141 0x05,
11142 0x08,
11143 0x0A,
11144 0x0D,
11145 0x0F,
11146 0x12,
11147 0x19,
11148 0x22,
11149 0x2E,
11150 0x3E,
11151 0x54,
11152 0x6E,
11153 0x93,
11154 0xC1,
11155 0xFF,
11156 0xDC,
11157 0xDC,
11158 0x03,
11159 0x03
11160 },
11161
11162 Package (0x16)
11163 {
11164 0x16,
11165 0x04,
11166 0x04,
11167 0x07,
11168 0x09,
11169 0x0C,
11170 0x10,
11171 0x15,
11172 0x1C,
11173 0x25,
11174 0x32,
11175 0x40,
11176 0x50,
11177 0x64,
11178 0x82,
11179 0xA5,
11180 0xCD,
11181 0xFF,
11182 0xDC,
11183 0xDC,
11184 0x03,
11185 0x03
11186 },
11187
11188 Package (0x16)
11189 {
11190 0x14,
11191 0x04,
11192 0x04,
11193 0x07,
11194 0x09,
11195 0x0C,
11196 0x10,
11197 0x15,
11198 0x1C,
11199 0x25,
11200 0x32,
11201 0x40,
11202 0x50,
11203 0x64,
11204 0x82,
11205 0xA5,
11206 0xCD,
11207 0xFF,
11208 0xDC,
11209 0xDC,
11210 0x03,
11211 0x03
11212 },
11213
11214 Package (0x16)
11215 {
11216 0x23,
11217 0x03,
11218 0x03,
11219 0x05,
11220 0x08,
11221 0x0A,
11222 0x0D,
11223 0x0F,
11224 0x12,
11225 0x19,
11226 0x22,
11227 0x2E,
11228 0x3E,
11229 0x54,
11230 0x6E,
11231 0x93,
11232 0xC1,
11233 0xFF,
11234 0xDC,
11235 0xDC,
11236 0x03,
11237 0x03
11238 }
11239 })
11240 Name (BRTD, Package (0x04)
11241 {
11242 Package (0x65)
11243 {
11244 0x03,
11245 0x04,
11246 0x05,
11247 0x06,
11248 0x07,
11249 0x08,
11250 0x09,
11251 0x0A,
11252 0x0B,
11253 0x0C,
11254 0x0D,
11255 0x0E,
11256 0x0F,
11257 0x10,
11258 0x11,
11259 0x12,
11260 0x13,
11261 0x14,
11262 0x15,
11263 0x16,
11264 0x17,
11265 0x18,
11266 0x19,
11267 0x1A,
11268 0x1C,
11269 0x1D,
11270 0x1F,
11271 0x21,
11272 0x22,
11273 0x24,
11274 0x26,
11275 0x28,
11276 0x2A,
11277 0x2C,
11278 0x2E,
11279 0x30,
11280 0x33,
11281 0x35,
11282 0x37,
11283 0x3A,
11284 0x3C,
11285 0x3F,
11286 0x41,
11287 0x44,
11288 0x46,
11289 0x49,
11290 0x4C,
11291 0x4F,
11292 0x51,
11293 0x54,
11294 0x57,
11295 0x5A,
11296 0x5D,
11297 0x61,
11298 0x64,
11299 0x67,
11300 0x6A,
11301 0x6E,
11302 0x71,
11303 0x75,
11304 0x78,
11305 0x7C,
11306 0x80,
11307 0x83,
11308 0x87,
11309 0x8B,
11310 0x8F,
11311 0x93,
11312 0x97,
11313 0x9B,
11314 0x9F,
11315 0xA3,
11316 0xA8,
11317 0xAC,
11318 0xB0,
11319 0xB5,
11320 0xB9,
11321 0xBE,
11322 0xC3,
11323 0xC7,
11324 0xCC,
11325 0xCE,
11326 0xD1,
11327 0xD3,
11328 0xD6,
11329 0xD8,
11330 0xDB,
11331 0xDD,
11332 0xE0,
11333 0xE2,
11334 0xE5,
11335 0xE7,
11336 0xEA,
11337 0xEC,
11338 0xEF,
11339 0xF2,
11340 0xF4,
11341 0xF7,
11342 0xFA,
11343 0xFC,
11344 0xFF
11345 },
11346
11347 Package (0x65)
11348 {
11349 0x03,
11350 0x04,
11351 0x05,
11352 0x06,
11353 0x07,
11354 0x08,
11355 0x09,
11356 0x0A,
11357 0x0B,
11358 0x0C,
11359 0x0D,
11360 0x0E,
11361 0x0F,
11362 0x10,
11363 0x11,
11364 0x12,
11365 0x13,
11366 0x14,
11367 0x15,
11368 0x16,
11369 0x17,
11370 0x18,
11371 0x19,
11372 0x1A,
11373 0x1B,
11374 0x1C,
11375 0x1D,
11376 0x1E,
11377 0x1F,
11378 0x20,
11379 0x21,
11380 0x22,
11381 0x23,
11382 0x25,
11383 0x26,
11384 0x28,
11385 0x2A,
11386 0x2C,
11387 0x2E,
11388 0x2F,
11389 0x31,
11390 0x33,
11391 0x35,
11392 0x37,
11393 0x3A,
11394 0x3C,
11395 0x3E,
11396 0x40,
11397 0x42,
11398 0x45,
11399 0x47,
11400 0x4A,
11401 0x4C,
11402 0x4E,
11403 0x51,
11404 0x54,
11405 0x56,
11406 0x59,
11407 0x5C,
11408 0x5E,
11409 0x61,
11410 0x64,
11411 0x67,
11412 0x6A,
11413 0x6D,
11414 0x70,
11415 0x73,
11416 0x76,
11417 0x79,
11418 0x7D,
11419 0x80,
11420 0x83,
11421 0x86,
11422 0x8A,
11423 0x8D,
11424 0x91,
11425 0x94,
11426 0x98,
11427 0x9C,
11428 0x9F,
11429 0xA3,
11430 0xA7,
11431 0xAB,
11432 0xAF,
11433 0xB4,
11434 0xB8,
11435 0xBC,
11436 0xC1,
11437 0xC5,
11438 0xCA,
11439 0xCE,
11440 0xD3,
11441 0xD8,
11442 0xDC,
11443 0xE1,
11444 0xE6,
11445 0xEB,
11446 0xF0,
11447 0xF5,
11448 0xFA,
11449 0xFF
11450 },
11451
11452 Package (0x65)
11453 {
11454 0x03,
11455 0x04,
11456 0x05,
11457 0x06,
11458 0x07,
11459 0x08,
11460 0x09,
11461 0x0A,
11462 0x0B,
11463 0x0C,
11464 0x0D,
11465 0x0E,
11466 0x0F,
11467 0x10,
11468 0x11,
11469 0x12,
11470 0x13,
11471 0x14,
11472 0x15,
11473 0x16,
11474 0x17,
11475 0x18,
11476 0x19,
11477 0x1A,
11478 0x1C,
11479 0x1D,
11480 0x1F,
11481 0x21,
11482 0x22,
11483 0x24,
11484 0x26,
11485 0x28,
11486 0x2A,
11487 0x2C,
11488 0x2E,
11489 0x30,
11490 0x33,
11491 0x35,
11492 0x37,
11493 0x3A,
11494 0x3C,
11495 0x3F,
11496 0x41,
11497 0x44,
11498 0x46,
11499 0x49,
11500 0x4C,
11501 0x4F,
11502 0x51,
11503 0x54,
11504 0x57,
11505 0x5A,
11506 0x5D,
11507 0x61,
11508 0x64,
11509 0x67,
11510 0x6A,
11511 0x6E,
11512 0x71,
11513 0x75,
11514 0x78,
11515 0x7C,
11516 0x80,
11517 0x83,
11518 0x87,
11519 0x8B,
11520 0x8F,
11521 0x93,
11522 0x97,
11523 0x9B,
11524 0x9F,
11525 0xA3,
11526 0xA8,
11527 0xAC,
11528 0xB0,
11529 0xB5,
11530 0xB9,
11531 0xBE,
11532 0xC3,
11533 0xC7,
11534 0xCC,
11535 0xCE,
11536 0xD1,
11537 0xD3,
11538 0xD6,
11539 0xD8,
11540 0xDB,
11541 0xDD,
11542 0xE0,
11543 0xE2,
11544 0xE5,
11545 0xE7,
11546 0xEA,
11547 0xEC,
11548 0xEF,
11549 0xF2,
11550 0xF4,
11551 0xF7,
11552 0xFA,
11553 0xFC,
11554 0xFF
11555 },
11556
11557 Package (0x65)
11558 {
11559 0x03,
11560 0x04,
11561 0x05,
11562 0x06,
11563 0x07,
11564 0x08,
11565 0x09,
11566 0x0A,
11567 0x0B,
11568 0x0C,
11569 0x0D,
11570 0x0E,
11571 0x0F,
11572 0x10,
11573 0x11,
11574 0x12,
11575 0x13,
11576 0x14,
11577 0x15,
11578 0x16,
11579 0x17,
11580 0x18,
11581 0x19,
11582 0x1A,
11583 0x1C,
11584 0x1D,
11585 0x1F,
11586 0x21,
11587 0x22,
11588 0x24,
11589 0x26,
11590 0x28,
11591 0x2A,
11592 0x2C,
11593 0x2E,
11594 0x30,
11595 0x33,
11596 0x35,
11597 0x37,
11598 0x3A,
11599 0x3C,
11600 0x3F,
11601 0x41,
11602 0x44,
11603 0x46,
11604 0x49,
11605 0x4C,
11606 0x4F,
11607 0x51,
11608 0x54,
11609 0x57,
11610 0x5A,
11611 0x5D,
11612 0x61,
11613 0x64,
11614 0x67,
11615 0x6A,
11616 0x6E,
11617 0x71,
11618 0x75,
11619 0x78,
11620 0x7C,
11621 0x80,
11622 0x83,
11623 0x87,
11624 0x8B,
11625 0x8F,
11626 0x93,
11627 0x97,
11628 0x9B,
11629 0x9F,
11630 0xA3,
11631 0xA8,
11632 0xAC,
11633 0xB0,
11634 0xB5,
11635 0xB9,
11636 0xBE,
11637 0xC3,
11638 0xC7,
11639 0xCC,
11640 0xCE,
11641 0xD1,
11642 0xD3,
11643 0xD6,
11644 0xD8,
11645 0xDB,
11646 0xDD,
11647 0xE0,
11648 0xE2,
11649 0xE5,
11650 0xE7,
11651 0xEA,
11652 0xEC,
11653 0xEF,
11654 0xF2,
11655 0xF4,
11656 0xF7,
11657 0xFA,
11658 0xFC,
11659 0xFF
11660 }
11661 })
11662 Method (_Q14, 0, NotSerialized) // _Qxx: EC Query
11663 {
11664 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x8000))
11665 {
11666 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1010)
11667 }
11668
11669 If (\NBCF)
11670 {
11671 If (\VIGD)
11672 {
11673 Notify (\_SB.PCI0.VID.LCD0, 0x86) // Device-Specific
11674 }
11675 Else
11676 {
11677 Notify (\_SB.PCI0.PEG.VID.LCD0, 0x86) // Device-Specific
11678 }
11679 }
11680 Else
11681 {
11682 Local0 = \BRLV
11683 If ((Local0 != 0x0F))
11684 {
11685 Local0++
11686 \BRLV = Local0
11687 }
11688
11689 If (\VIGD)
11690 {
11691 \UCMS (0x16)
11692 \_SB.PCI0.LPC.EC.BRNS ()
11693 }
11694 Else
11695 {
11696 \VBRC (Local0)
11697 }
11698
11699 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6050)
11700 }
11701 }
11702
11703 Method (_Q15, 0, NotSerialized) // _Qxx: EC Query
11704 {
11705 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x00010000))
11706 {
11707 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1011)
11708 }
11709
11710 If (\NBCF)
11711 {
11712 If (\VIGD)
11713 {
11714 Notify (\_SB.PCI0.VID.LCD0, 0x87) // Device-Specific
11715 }
11716 Else
11717 {
11718 Notify (\_SB.PCI0.PEG.VID.LCD0, 0x87) // Device-Specific
11719 }
11720 }
11721 Else
11722 {
11723 Local0 = \BRLV
11724 If (Local0)
11725 {
11726 Local0--
11727 \BRLV = Local0
11728 }
11729
11730 If (\VIGD)
11731 {
11732 \UCMS (0x16)
11733 \_SB.PCI0.LPC.EC.BRNS ()
11734 }
11735 Else
11736 {
11737 \VBRC (Local0)
11738 }
11739
11740 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6050)
11741 }
11742
11743 Return (Zero)
11744 }
11745
11746 Method (BRNS, 0, NotSerialized)
11747 {
11748 Local0 = (\BRLV + 0x02)
11749 Local3 = \BRTN
11750 If (\_SB.PCI0.VID.DRDY)
11751 {
11752 If ((0x00 == Local0))
11753 {
11754 Local1 = DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x14))
11755 Local2 = DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x12))
11756 }
11757 Else
11758 {
11759 Local1 = DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x15))
11760 Local2 = DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x13))
11761 }
11762
11763 Local2 = (Local1 | (Local2 << 0x09))
11764 \_SB.PCI0.VID.AINT (0x03, Local2)
11765 Local2 = DerefOf (Index (DerefOf (Index (BRTB, Local3)), Local0))
11766 \_SB.PCI0.VID.AINT (0x01, Local2)
11767 }
11768 Else
11769 {
11770 \UCMS (0x12)
11771 }
11772 }
11773
11774 Method (BRCF, 1, NotSerialized)
11775 {
11776 If ((Arg0 < 0x00))
11777 {
11778 Return (0x00)
11779 }
11780
11781 If ((Arg0 > 0x64))
11782 {
11783 Return (0x0F)
11784 }
11785
11786 Local0 = (Arg0 + 0x03)
11787 Local0 *= 0x0F
11788 Divide (Local0, 0x64, Local0, Local1)
11789 Return (Local1)
11790 }
11791
11792 Method (BRCD, 1, NotSerialized)
11793 {
11794 Local0 = DerefOf (Index (DerefOf (Index (BRTD, \BRTN)), Arg0))
11795 Return (Local0)
11796 }
11797
11798 Method (BFRQ, 0, NotSerialized)
11799 {
11800 Local0 = 0x80000100
11801 Local1 = DerefOf (Index (DerefOf (Index (BRTB, \BRTN)), 0x13))
11802 Local0 |= (Local1 << 0x09)
11803 Local1 = DerefOf (Index (DerefOf (Index (BRTB, \BRTN)), 0x15))
11804 Local0 |= Local1
11805 Return (Local0)
11806 }
11807 }
11808
11809 Scope (\_SB.PCI0.LPC.EC)
11810 {
11811 Method (_Q19, 0, NotSerialized) // _Qxx: EC Query
11812 {
11813 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x00800000))
11814 {
11815 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1018)
11816 }
11817
11818 \UCMS (0x03)
11819 }
11820 }
11821
11822 Scope (\_SB.PCI0.LPC.EC)
11823 {
11824 Method (_Q63, 0, NotSerialized) // _Qxx: EC Query
11825 {
11826 If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x00080000))
11827 {
11828 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1014)
11829 }
11830
11831 \UCMS (0x0B)
11832 }
11833 }
11834
11835 Scope (\_SB.PCI0.LPC.EC)
11836 {
11837 Method (_Q70, 0, NotSerialized) // _Qxx: EC Query
11838 {
11839 FNST ()
11840 }
11841
11842 Method (_Q72, 0, NotSerialized) // _Qxx: EC Query
11843 {
11844 FNST ()
11845 }
11846
11847 Method (_Q73, 0, NotSerialized) // _Qxx: EC Query
11848 {
11849 FNST ()
11850 }
11851
11852 Method (FNST, 0, NotSerialized)
11853 {
11854 If (\H8DR)
11855 {
11856 Local0 = HFNS /* \_SB_.PCI0.LPC_.EC__.HFNS */
11857 Local1 = HFNE /* \_SB_.PCI0.LPC_.EC__.HFNE */
11858 }
11859 Else
11860 {
11861 Local0 = (\RBEC (0x0E) & 0x03)
11862 Local1 = (\RBEC (0x00) & 0x08)
11863 }
11864
11865 If (Local1)
11866 {
11867 If ((Local0 == 0x00))
11868 {
11869 \UCMS (0x11)
11870 }
11871
11872 If ((Local0 == 0x01))
11873 {
11874 \UCMS (0x0F)
11875 }
11876
11877 If ((Local0 == 0x02))
11878 {
11879 \UCMS (0x10)
11880 }
11881
11882 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6005)
11883 }
11884 }
11885 }
11886
11887 Scope (\_SB.PCI0.LPC.EC.HKEY)
11888 {
11889 Method (GHSL, 1, NotSerialized)
11890 {
11891 Return (\FNSC (0x00, 0x00))
11892 }
11893
11894 Method (SHSL, 1, NotSerialized)
11895 {
11896 Return (\FNSC (0x01, (Arg0 & 0x00010001)))
11897 }
11898 }
11899
11900 Scope (\_SB.PCI0.LPC.EC.HKEY)
11901 {
11902 Name (WGFL, 0x00)
11903 Method (WSIF, 0, NotSerialized)
11904 {
11905 Return (0x00)
11906 }
11907
11908 Method (WLSW, 0, NotSerialized)
11909 {
11910 Return (0x00010001)
11911 }
11912
11913 Method (GWAN, 0, NotSerialized)
11914 {
11915 Local0 = 0x00
11916 If ((WGFL & 0x01))
11917 {
11918 Local0 |= 0x01
11919 }
11920
11921 If ((WGFL & 0x08))
11922 {
11923 Return (Local0)
11924 }
11925
11926 If (WPWS ())
11927 {
11928 Local0 |= 0x02
11929 }
11930
11931 Local0 |= 0x04
11932 Return (Local0)
11933 }
11934
11935 Method (SWAN, 1, NotSerialized)
11936 {
11937 If ((Arg0 & 0x02))
11938 {
11939 WPWC (0x01)
11940 }
11941 Else
11942 {
11943 WPWC (0x00)
11944 }
11945 }
11946
11947 Method (GBDC, 0, NotSerialized)
11948 {
11949 Local0 = 0x00
11950 If ((WGFL & 0x10))
11951 {
11952 Local0 |= 0x01
11953 }
11954
11955 If ((WGFL & 0x80))
11956 {
11957 Return (Local0)
11958 }
11959
11960 If (BPWS ())
11961 {
11962 Local0 |= 0x02
11963 }
11964
11965 Local0 |= 0x04
11966 Return (Local0)
11967 }
11968
11969 Method (SBDC, 1, NotSerialized)
11970 {
11971 If ((Arg0 & 0x02))
11972 {
11973 BPWC (0x01)
11974 }
11975 Else
11976 {
11977 BPWC (0x00)
11978 }
11979 }
11980
11981 Method (WPWS, 0, NotSerialized)
11982 {
11983 If (\H8DR)
11984 {
11985 Local0 = \_SB.PCI0.LPC.EC.DCWW
11986 }
11987 Else
11988 {
11989 Local0 = ((\RBEC (0x3A) & 0x40) >> 0x06)
11990 }
11991
11992 Return (Local0)
11993 }
11994
11995 Method (WPWC, 1, NotSerialized)
11996 {
11997 If ((Arg0 && ((WGFL & 0x01) && !(WGFL & 0x08
11998 ))))
11999 {
12000 If (\H8DR)
12001 {
12002 \_SB.PCI0.LPC.EC.DCWW = One
12003 }
12004 Else
12005 {
12006 \MBEC (0x3A, 0xFF, 0x40)
12007 }
12008
12009 WGFL |= 0x02
12010 }
12011 Else
12012 {
12013 If (\H8DR)
12014 {
12015 \_SB.PCI0.LPC.EC.DCWW = Zero
12016 }
12017 Else
12018 {
12019 \MBEC (0x3A, 0xBF, 0x00)
12020 }
12021
12022 WGFL &= ~0x02
12023 }
12024 }
12025
12026 Method (BPWS, 0, NotSerialized)
12027 {
12028 If (\H8DR)
12029 {
12030 Local0 = \_SB.PCI0.LPC.EC.DCBD
12031 }
12032 Else
12033 {
12034 Local0 = ((\RBEC (0x3A) & 0x10) >> 0x04)
12035 }
12036
12037 Return (Local0)
12038 }
12039
12040 Method (BPWC, 1, NotSerialized)
12041 {
12042 If ((Arg0 && ((WGFL & 0x10) && !(WGFL & 0x80
12043 ))))
12044 {
12045 If (\H8DR)
12046 {
12047 \_SB.PCI0.LPC.EC.DCBD = One
12048 }
12049 Else
12050 {
12051 \MBEC (0x3A, 0xFF, 0x10)
12052 }
12053
12054 WGFL |= 0x20
12055 }
12056 Else
12057 {
12058 If (\H8DR)
12059 {
12060 \_SB.PCI0.LPC.EC.DCBD = Zero
12061 }
12062 Else
12063 {
12064 \MBEC (0x3A, 0xEF, 0x00)
12065 }
12066
12067 WGFL &= ~0x20
12068 }
12069 }
12070
12071 Method (WGIN, 0, NotSerialized)
12072 {
12073 WGFL = 0x00
12074 WGFL = \WGSV (0x01)
12075 If (\WIN8)
12076 {
12077 If ((WGFL && 0x10))
12078 {
12079 BPWC (0x01)
12080 }
12081 }
12082
12083 If (WPWS ())
12084 {
12085 WGFL |= 0x02
12086 }
12087
12088 If (BPWS ())
12089 {
12090 WGFL |= 0x20
12091 }
12092 }
12093
12094 Method (WGPS, 1, NotSerialized)
12095 {
12096 If ((Arg0 >= 0x04))
12097 {
12098 \BLTH (0x05)
12099 }
12100 }
12101
12102 Method (WGWK, 1, NotSerialized)
12103 {
12104 Noop
12105 }
12106 }
12107
12108 Scope (\_SB.PCI0.LPC.EC)
12109 {
12110 Method (_Q41, 0, NotSerialized) // _Qxx: EC Query
12111 {
12112 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x7000)
12113 }
12114 }
12115
12116 Device (WMI1)
12117 {
12118 Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */) // _HID: Hardware ID
12119 Name (_UID, 0x01) // _UID: Unique ID
12120 Name (_WDG, Buffer (0xB4)
12121 {
12122 /* 0000 */ 0x0E, 0x23, 0xF5, 0x51, 0x77, 0x96, 0xCD, 0x46, /* .#.Qw..F */
12123 /* 0008 */ 0xA1, 0xCF, 0xC0, 0xB2, 0x3E, 0xE3, 0x4D, 0xB7, /* ....>.M. */
12124 /* 0010 */ 0x41, 0x30, 0x50, 0x05, 0x64, 0x9A, 0x47, 0x98, /* A0P.d.G. */
12125 /* 0018 */ 0xF5, 0x33, 0x33, 0x4E, 0xA7, 0x07, 0x8E, 0x25, /* .33N...% */
12126 /* 0020 */ 0x1E, 0xBB, 0xC3, 0xA1, 0x41, 0x31, 0x01, 0x06, /* ....A1.. */
12127 /* 0028 */ 0xEF, 0x54, 0x4B, 0x6A, 0xED, 0xA5, 0x33, 0x4D, /* .TKj..3M */
12128 /* 0030 */ 0x94, 0x55, 0xB0, 0xD9, 0xB4, 0x8D, 0xF4, 0xB3, /* .U...... */
12129 /* 0038 */ 0x41, 0x32, 0x01, 0x06, 0xB6, 0xEB, 0xF1, 0x74, /* A2.....t */
12130 /* 0040 */ 0x7A, 0x92, 0x7D, 0x4C, 0x95, 0xDF, 0x69, 0x8E, /* z.}L..i. */
12131 /* 0048 */ 0x21, 0xE8, 0x0E, 0xB5, 0x41, 0x33, 0x01, 0x06, /* !...A3.. */
12132 /* 0050 */ 0xFF, 0x04, 0xEF, 0x7E, 0x28, 0x43, 0x7C, 0x44, /* ...~(C|D */
12133 /* 0058 */ 0xB5, 0xBB, 0xD4, 0x49, 0x92, 0x5D, 0x53, 0x8D, /* ...I.]S. */
12134 /* 0060 */ 0x41, 0x34, 0x01, 0x06, 0x9E, 0x15, 0xDB, 0x8A, /* A4...... */
12135 /* 0068 */ 0x32, 0x1E, 0x5C, 0x45, 0xBC, 0x93, 0x30, 0x8A, /* 2.\E..0. */
12136 /* 0070 */ 0x7E, 0xD9, 0x82, 0x46, 0x41, 0x35, 0x01, 0x01, /* ~..FA5.. */
12137 /* 0078 */ 0xFD, 0xD9, 0x51, 0x26, 0x1C, 0x91, 0x69, 0x4B, /* ..Q&..iK */
12138 /* 0080 */ 0xB9, 0x4E, 0xD0, 0xDE, 0xD5, 0x96, 0x3B, 0xD7, /* .N....;. */
12139 /* 0088 */ 0x41, 0x36, 0x01, 0x06, 0x1A, 0x65, 0x64, 0x73, /* A6...eds */
12140 /* 0090 */ 0x2F, 0x13, 0xE7, 0x4F, 0xAD, 0xAA, 0x40, 0xC6, /* /..O..@. */
12141 /* 0098 */ 0xC7, 0xEE, 0x2E, 0x3B, 0x41, 0x37, 0x01, 0x06, /* ...;A7.. */
12142 /* 00A0 */ 0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11, /* !...f... */
12143 /* 00A8 */ 0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, /* ......). */
12144 /* 00B0 */ 0x42, 0x41, 0x01, 0x00 /* BA.. */
12145 })
12146 Name (RETN, Package (0x05)
12147 {
12148 "Success",
12149 "Not Supported",
12150 "Invalid Parameter",
12151 "Access Denied",
12152 "System Busy"
12153 })
12154 Name (ITEM, Package (0x58)
12155 {
12156 Package (0x02)
12157 {
12158 0x0E,
12159 "WakeOnLAN"
12160 },
12161
12162 Package (0x02)
12163 {
12164 0x00,
12165 "EthernetLANOptionROM"
12166 },
12167
12168 Package (0x02)
12169 {
12170 0x00,
12171 "USBBIOSSupport"
12172 },
12173
12174 Package (0x02)
12175 {
12176 0x00,
12177 "AlwaysOnUSB"
12178 },
12179
12180 Package (0x02)
12181 {
12182 0x01,
12183 "TrackPoint"
12184 },
12185
12186 Package (0x02)
12187 {
12188 0x01,
12189 "TouchPad"
12190 },
12191
12192 Package (0x02)
12193 {
12194 0x00,
12195 "FnSticky"
12196 },
12197
12198 Package (0x02)
12199 {
12200 0x04,
12201 "ThinkPadNumLock"
12202 },
12203
12204 Package (0x02)
12205 {
12206 0x0C,
12207 "PowerOnNumLock"
12208 },
12209
12210 Package (0x02)
12211 {
12212 0x05,
12213 "BootDisplayDevice"
12214 },
12215
12216 Package (0x02)
12217 {
12218 0x00,
12219 "SpeedStep"
12220 },
12221
12222 Package (0x02)
12223 {
12224 0x09,
12225 "AdaptiveThermalManagementAC"
12226 },
12227
12228 Package (0x02)
12229 {
12230 0x09,
12231 "AdaptiveThermalManagementBattery"
12232 },
12233
12234 Package (0x02)
12235 {
12236 0x06,
12237 "CDROMSpeed"
12238 },
12239
12240 Package (0x02)
12241 {
12242 0x01,
12243 "CPUPowerManagement"
12244 },
12245
12246 Package (0x02)
12247 {
12248 0x00,
12249 "PowerControlBeep"
12250 },
12251
12252 Package (0x02)
12253 {
12254 0x00,
12255 "LowBatteryAlarm"
12256 },
12257
12258 Package (0x02)
12259 {
12260 0x00,
12261 "PasswordBeep"
12262 },
12263
12264 Package (0x02)
12265 {
12266 0x00,
12267 "KeyboardBeep"
12268 },
12269
12270 Package (0x02)
12271 {
12272 0x00,
12273 "ExtendedMemoryTest"
12274 },
12275
12276 Package (0x02)
12277 {
12278 0x07,
12279 "SATAControllerMode"
12280 },
12281
12282 Package (0x02)
12283 {
12284 0x00,
12285 "CoreMultiProcessing"
12286 },
12287
12288 Package (0x02)
12289 {
12290 0x00,
12291 "VirtualizationTechnology"
12292 },
12293
12294 Package (0x02)
12295 {
12296 0x00,
12297 "LockBIOSSetting"
12298 },
12299
12300 Package (0x02)
12301 {
12302 0x0B,
12303 "MinimumPasswordLength"
12304 },
12305
12306 Package (0x02)
12307 {
12308 0x00,
12309 "BIOSPasswordAtUnattendedBoot"
12310 },
12311
12312 Package (0x02)
12313 {
12314 0x00,
12315 "FingerprintPredesktopAuthentication"
12316 },
12317
12318 Package (0x02)
12319 {
12320 0x08,
12321 "FingerprintReaderPriority"
12322 },
12323
12324 Package (0x02)
12325 {
12326 0x03,
12327 "FingerprintSecurityMode"
12328 },
12329
12330 Package (0x02)
12331 {
12332 0x02,
12333 "SecurityChip"
12334 },
12335
12336 Package (0x02)
12337 {
12338 0x00,
12339 "BIOSUpdateByEndUsers"
12340 },
12341
12342 Package (0x02)
12343 {
12344 0x00,
12345 "DataExecutionPrevention"
12346 },
12347
12348 Package (0x02)
12349 {
12350 0x00,
12351 "EthernetLANAccess"
12352 },
12353
12354 Package (0x02)
12355 {
12356 0x00,
12357 "WirelessLANAccess"
12358 },
12359
12360 Package (0x02)
12361 {
12362 0x00,
12363 "WirelessWANAccess"
12364 },
12365
12366 Package (0x02)
12367 {
12368 0x00,
12369 "BluetoothAccess"
12370 },
12371
12372 Package (0x02)
12373 {
12374 0x00,
12375 "WirelessUSBAccess"
12376 },
12377
12378 Package (0x02)
12379 {
12380 0x00,
12381 "ModemAccess"
12382 },
12383
12384 Package (0x02)
12385 {
12386 0x00,
12387 "USBPortAccess"
12388 },
12389
12390 Package (0x02)
12391 {
12392 0x00,
12393 "IEEE1394Access"
12394 },
12395
12396 Package (0x02)
12397 {
12398 0x00,
12399 "ExpressCardAccess"
12400 },
12401
12402 Package (0x02)
12403 {
12404 0x00,
12405 "PCIExpressSlotAccess"
12406 },
12407
12408 Package (0x02)
12409 {
12410 0x00,
12411 "UltrabayAccess"
12412 },
12413
12414 Package (0x02)
12415 {
12416 0x00,
12417 "MemoryCardSlotAccess"
12418 },
12419
12420 Package (0x02)
12421 {
12422 0x00,
12423 "SmartCardSlotAccess"
12424 },
12425
12426 Package (0x02)
12427 {
12428 0x00,
12429 "IntegratedCameraAccess"
12430 },
12431
12432 Package (0x02)
12433 {
12434 0x00,
12435 "MicrophoneAccess"
12436 },
12437
12438 Package (0x02)
12439 {
12440 0x0A,
12441 "BootMode"
12442 },
12443
12444 Package (0x02)
12445 {
12446 0x00,
12447 "StartupOptionKeys"
12448 },
12449
12450 Package (0x02)
12451 {
12452 0x00,
12453 "BootDeviceListF12Option"
12454 },
12455
12456 Package (0x02)
12457 {
12458 0x64,
12459 "BootOrder"
12460 },
12461
12462 Package (0x02)
12463 {
12464 0x00,
12465 "WiMAXAccess"
12466 },
12467
12468 Package (0x02)
12469 {
12470 0x0D,
12471 "GraphicsDevice"
12472 },
12473
12474 Package (0x02)
12475 {
12476 0x00,
12477 "TXTFeature"
12478 },
12479
12480 Package (0x02)
12481 {
12482 0x00,
12483 "VTdFeature"
12484 },
12485
12486 Package (0x02)
12487 {
12488 0x0F,
12489 "AMTControl"
12490 },
12491
12492 Package (0x02)
12493 {
12494 0x00,
12495 "FingerprintPasswordAuthentication"
12496 },
12497
12498 Package (0x02)
12499 {
12500 0x00,
12501 "FingerprintReaderAccess"
12502 },
12503
12504 Package (0x02)
12505 {
12506 0x00,
12507 "OsDetectionForSwitchableGraphics"
12508 },
12509
12510 Package (0x02)
12511 {
12512 0x0F,
12513 "ComputraceModuleActivation"
12514 },
12515
12516 Package (0x02)
12517 {
12518 0x01,
12519 "PCIExpressPowerManagement"
12520 },
12521
12522 Package (0x02)
12523 {
12524 0x00,
12525 "NFFControl"
12526 },
12527
12528 Package (0x02)
12529 {
12530 0x00,
12531 "eSATAPortAccess"
12532 },
12533
12534 Package (0x02)
12535 {
12536 0x00,
12537 "HardwarePasswordManager"
12538 },
12539
12540 Package (0x02)
12541 {
12542 0x00,
12543 "HyperThreadingTechnology"
12544 },
12545
12546 Package (0x02)
12547 {
12548 0x00,
12549 "FnCtrlKeySwap"
12550 },
12551
12552 Package (0x02)
12553 {
12554 0x00,
12555 "BIOSPasswordAtReboot"
12556 },
12557
12558 Package (0x02)
12559 {
12560 0x00,
12561 "OnByAcAttach"
12562 },
12563
12564 Package (0x02)
12565 {
12566 0x64,
12567 "NetworkBoot"
12568 },
12569
12570 Package (0x02)
12571 {
12572 0x00,
12573 "BootOrderLock"
12574 },
12575
12576 Package (0x02)
12577 {
12578 0x10,
12579 "USB30Mode"
12580 },
12581
12582 Package (0x02)
12583 {
12584 0x11,
12585 "ExpressCardSpeed"
12586 },
12587
12588 Package (0x02)
12589 {
12590 0x00,
12591 "RapidStartTechnology"
12592 },
12593
12594 Package (0x02)
12595 {
12596 0x12,
12597 "KeyboardIllumination"
12598 },
12599
12600 Package (0x02)
12601 {
12602 0x00,
12603 "IPv4NetworkStack"
12604 },
12605
12606 Package (0x02)
12607 {
12608 0x00,
12609 "IPv6NetworkStack"
12610 },
12611
12612 Package (0x02)
12613 {
12614 0x13,
12615 "UefiPxeBootPriority"
12616 },
12617
12618 Package (0x02)
12619 {
12620 0x00,
12621 "PhysicalPresenceForTpmProvision"
12622 },
12623
12624 Package (0x02)
12625 {
12626 0x00,
12627 "PhysicalPresenceForTpmClear"
12628 },
12629
12630 Package (0x02)
12631 {
12632 0x00,
12633 "SecureRollBackPrevention"
12634 },
12635
12636 Package (0x02)
12637 {
12638 0x00,
12639 "SecureBoot"
12640 },
12641
12642 Package (0x02)
12643 {
12644 0x00,
12645 "NfcAccess"
12646 },
12647
12648 Package (0x02)
12649 {
12650 0x00,
12651 "BottomCoverTamperDetected"
12652 },
12653
12654 Package (0x02)
12655 {
12656 0x00,
12657 "PasswordCountExceededError"
12658 },
12659
12660 Package (0x02)
12661 {
12662 0x00,
12663 "BIOSPasswordAtBootDeviceList"
12664 },
12665
12666 Package (0x02)
12667 {
12668 0x14,
12669 "TotalGraphicsMemory"
12670 },
12671
12672 Package (0x02)
12673 {
12674 0x15,
12675 "BootTimeExtension"
12676 },
12677
12678 Package (0x02)
12679 {
12680 0x00,
12681 "FnKeyAsPrimary"
12682 }
12683 })
12684 Name (VSEL, Package (0x16)
12685 {
12686 Package (0x02)
12687 {
12688 "Disable",
12689 "Enable"
12690 },
12691
12692 Package (0x02)
12693 {
12694 "Disable",
12695 "Automatic"
12696 },
12697
12698 Package (0x04)
12699 {
12700 "Active",
12701 "Inactive",
12702 "Disable",
12703 "Enable"
12704 },
12705
12706 Package (0x02)
12707 {
12708 "Normal",
12709 "High"
12710 },
12711
12712 Package (0x02)
12713 {
12714 "Independent",
12715 "Synchronized"
12716 },
12717
12718 Package (0x04)
12719 {
12720 "LCD",
12721 "VGA",
12722 "Digital",
12723 "DockDisplay"
12724 },
12725
12726 Package (0x03)
12727 {
12728 "High",
12729 "Normal",
12730 "Silent"
12731 },
12732
12733 Package (0x02)
12734 {
12735 "Compatibility",
12736 "AHCI"
12737 },
12738
12739 Package (0x02)
12740 {
12741 "External",
12742 "InternalOnly"
12743 },
12744
12745 Package (0x02)
12746 {
12747 "MaximizePerformance",
12748 "Balanced"
12749 },
12750
12751 Package (0x02)
12752 {
12753 "Quick",
12754 "Diagnostics"
12755 },
12756
12757 Package (0x0A)
12758 {
12759 "Disable",
12760 "4",
12761 "5",
12762 "6",
12763 "7",
12764 "8",
12765 "9",
12766 "10",
12767 "11",
12768 "12"
12769 },
12770
12771 Package (0x03)
12772 {
12773 "Auto",
12774 "On",
12775 "Off"
12776 },
12777
12778 Package (0x03)
12779 {
12780 "IntegratedGfx",
12781 "DiscreteGfx",
12782 "SwitchableGfx"
12783 },
12784
12785 Package (0x04)
12786 {
12787 "Disable",
12788 "ACOnly",
12789 "ACandBattery",
12790 "Enable"
12791 },
12792
12793 Package (0x03)
12794 {
12795 "Disable",
12796 "Enable",
12797 "Disable"
12798 },
12799
12800 Package (0x03)
12801 {
12802 "Disable",
12803 "Enable",
12804 "Automatic"
12805 },
12806
12807 Package (0x02)
12808 {
12809 "Generation1",
12810 "Automatic"
12811 },
12812
12813 Package (0x03)
12814 {
12815 "ThinkLightOnly",
12816 "BacklightOnly",
12817 "Both"
12818 },
12819
12820 Package (0x02)
12821 {
12822 "IPv6First",
12823 "IPv4First"
12824 },
12825
12826 Package (0x02)
12827 {
12828 "256MB",
12829 "512MB"
12830 },
12831
12832 Package (0x0B)
12833 {
12834 "Disable",
12835 "1",
12836 "2",
12837 "3",
12838 "",
12839 "5",
12840 "",
12841 "",
12842 "",
12843 "",
12844 "10"
12845 }
12846 })
12847 Name (VLST, Package (0x0F)
12848 {
12849 "HDD0",
12850 "HDD1",
12851 "HDD2",
12852 "HDD3",
12853 "HDD4",
12854 "PCILAN",
12855 "ATAPICD0",
12856 "ATAPICD1",
12857 "ATAPICD2",
12858 "USBFDD",
12859 "USBCD",
12860 "USBHDD",
12861 "OtherHDD",
12862 "OtherCD",
12863 "NODEV"
12864 })
12865 Name (PENC, Package (0x02)
12866 {
12867 "ascii",
12868 "scancode"
12869 })
12870 Name (PKBD, Package (0x03)
12871 {
12872 "us",
12873 "fr",
12874 "gr"
12875 })
12876 Name (PTYP, Package (0x08)
12877 {
12878 "pap",
12879 "pop",
12880 "uhdp1",
12881 "mhdp1",
12882 "uhdp2",
12883 "mhdp2",
12884 "uhdp3",
12885 "mhdp3"
12886 })
12887 Mutex (MWMI, 0x07)
12888 Name (PCFG, Buffer (0x18) {})
12889 Name (IBUF, Buffer (0x0100) {})
12890 Name (ILEN, 0x00)
12891 Name (PSTR, Buffer (0x81) {})
12892 Method (WQA0, 1, NotSerialized)
12893 {
12894 Acquire (MWMI, 0xFFFF)
12895 If ((\WMIS (0x00, Arg0) != 0x00))
12896 {
12897 Release (MWMI)
12898 Return ("")
12899 }
12900
12901 Local0 = DerefOf (Index (ITEM, \WITM))
12902 Local1 = DerefOf (Index (Local0, 0x00))
12903 Local2 = DerefOf (Index (Local0, 0x01))
12904 If ((Local1 < 0x64))
12905 {
12906 Concatenate (Local2, ",", Local6)
12907 Local3 = DerefOf (Index (VSEL, Local1))
12908 Concatenate (Local6, DerefOf (Index (Local3, \WSEL)), Local7)
12909 }
12910 Else
12911 {
12912 Local3 = SizeOf (VLST)
12913 If ((\WLS0 <= Local3))
12914 {
12915 Concatenate (Local2, ",", Local7)
12916 Concatenate (Local7, DerefOf (Index (VLST, \WLS0)), Local2)
12917 }
12918
12919 If ((\WLS1 <= Local3))
12920 {
12921 Concatenate (Local2, ":", Local7)
12922 Concatenate (Local7, DerefOf (Index (VLST, \WLS1)), Local2)
12923 }
12924
12925 If ((\WLS2 <= Local3))
12926 {
12927 Concatenate (Local2, ":", Local7)
12928 Concatenate (Local7, DerefOf (Index (VLST, \WLS2)), Local2)
12929 }
12930
12931 If ((\WLS3 <= Local3))
12932 {
12933 Concatenate (Local2, ":", Local7)
12934 Concatenate (Local7, DerefOf (Index (VLST, \WLS3)), Local2)
12935 }
12936
12937 If ((\WLS4 <= Local3))
12938 {
12939 Concatenate (Local2, ":", Local7)
12940 Concatenate (Local7, DerefOf (Index (VLST, \WLS4)), Local2)
12941 }
12942
12943 If ((\WLS5 <= Local3))
12944 {
12945 Concatenate (Local2, ":", Local7)
12946 Concatenate (Local7, DerefOf (Index (VLST, \WLS5)), Local2)
12947 }
12948
12949 If ((\WLS6 <= Local3))
12950 {
12951 Concatenate (Local2, ":", Local7)
12952 Concatenate (Local7, DerefOf (Index (VLST, \WLS6)), Local2)
12953 }
12954
12955 If ((\WLS7 <= Local3))
12956 {
12957 Concatenate (Local2, ":", Local7)
12958 Concatenate (Local7, DerefOf (Index (VLST, \WLS7)), Local2)
12959 }
12960
12961 If ((\WLS8 <= Local3))
12962 {
12963 Concatenate (Local2, ":", Local7)
12964 Concatenate (Local7, DerefOf (Index (VLST, \WLS8)), Local2)
12965 }
12966
12967 If ((\WLS9 <= Local3))
12968 {
12969 Concatenate (Local2, ":", Local7)
12970 Concatenate (Local7, DerefOf (Index (VLST, \WLS9)), Local2)
12971 }
12972
12973 If ((\WLSA <= Local3))
12974 {
12975 Concatenate (Local2, ":", Local7)
12976 Concatenate (Local7, DerefOf (Index (VLST, \WLSA)), Local2)
12977 }
12978
12979 If ((\WLSB <= Local3))
12980 {
12981 Concatenate (Local2, ":", Local7)
12982 Concatenate (Local7, DerefOf (Index (VLST, \WLSB)), Local2)
12983 }
12984
12985 If ((\WLSC <= Local3))
12986 {
12987 Concatenate (Local2, ":", Local7)
12988 Concatenate (Local7, DerefOf (Index (VLST, \WLSC)), Local2)
12989 }
12990
12991 If ((\WLSD <= Local3))
12992 {
12993 Concatenate (Local2, ":", Local7)
12994 Concatenate (Local7, DerefOf (Index (VLST, \WLSD)), Local2)
12995 }
12996
12997 Local7 = Local2
12998 }
12999
13000 Release (MWMI)
13001 Return (Local7)
13002 }
13003
13004 Method (WMA1, 3, NotSerialized)
13005 {
13006 Acquire (MWMI, 0xFFFF)
13007 If ((SizeOf (Arg2) == 0x00))
13008 {
13009 Local0 = 0x02
13010 }
13011 Else
13012 {
13013 Local0 = CARG (Arg2)
13014 If ((Local0 == 0x00))
13015 {
13016 Local0 = WSET (ITEM, VSEL)
13017 If ((Local0 == 0x00))
13018 {
13019 Local0 = \WMIS (0x01, 0x00)
13020 }
13021 }
13022 }
13023
13024 Release (MWMI)
13025 Return (DerefOf (Index (RETN, Local0)))
13026 }
13027
13028 Method (WMA2, 3, NotSerialized)
13029 {
13030 Acquire (MWMI, 0xFFFF)
13031 Local0 = CARG (Arg2)
13032 If ((Local0 == 0x00))
13033 {
13034 If ((ILEN != 0x00))
13035 {
13036 Local0 = CPAS (IBUF, 0x00)
13037 }
13038
13039 If ((Local0 == 0x00))
13040 {
13041 Local0 = \WMIS (0x02, 0x00)
13042 }
13043 }
13044
13045 Release (MWMI)
13046 Return (DerefOf (Index (RETN, Local0)))
13047 }
13048
13049 Method (WMA3, 3, NotSerialized)
13050 {
13051 Acquire (MWMI, 0xFFFF)
13052 Local0 = CARG (Arg2)
13053 If ((Local0 == 0x00))
13054 {
13055 If ((ILEN != 0x00))
13056 {
13057 Local0 = CPAS (IBUF, 0x00)
13058 }
13059
13060 If ((Local0 == 0x00))
13061 {
13062 Local0 = \WMIS (0x03, 0x00)
13063 }
13064 }
13065
13066 Release (MWMI)
13067 Return (DerefOf (Index (RETN, Local0)))
13068 }
13069
13070 Method (WMA4, 3, NotSerialized)
13071 {
13072 Acquire (MWMI, 0xFFFF)
13073 Local0 = CARG (Arg2)
13074 If ((Local0 == 0x00))
13075 {
13076 If ((ILEN != 0x00))
13077 {
13078 Local0 = CPAS (IBUF, 0x00)
13079 }
13080
13081 If ((Local0 == 0x00))
13082 {
13083 Local0 = \WMIS (0x04, 0x00)
13084 }
13085 }
13086
13087 Release (MWMI)
13088 Return (DerefOf (Index (RETN, Local0)))
13089 }
13090
13091 Method (WQA5, 1, NotSerialized)
13092 {
13093 Acquire (MWMI, 0xFFFF)
13094 Local0 = \WMIS (0x05, 0x00)
13095 Index (PCFG, 0x00) = \WSPM
13096 Index (PCFG, 0x04) = \WSPS
13097 Index (PCFG, 0x08) = \WSMN
13098 Index (PCFG, 0x0C) = \WSMX
13099 Index (PCFG, 0x10) = \WSEN
13100 Index (PCFG, 0x14) = \WSKB
13101 Release (MWMI)
13102 Return (PCFG) /* \_SB_.WMI1.PCFG */
13103 }
13104
13105 Method (WMA6, 3, NotSerialized)
13106 {
13107 Acquire (MWMI, 0xFFFF)
13108 If ((SizeOf (Arg2) == 0x00))
13109 {
13110 Local0 = 0x02
13111 }
13112 Else
13113 {
13114 Local0 = CARG (Arg2)
13115 If ((Local0 == 0x00))
13116 {
13117 If ((ILEN != 0x00))
13118 {
13119 Local0 = SPAS (IBUF)
13120 }
13121
13122 If ((Local0 == 0x00))
13123 {
13124 Local0 = \WMIS (0x06, 0x00)
13125 }
13126 }
13127 }
13128
13129 Release (MWMI)
13130 Return (DerefOf (Index (RETN, Local0)))
13131 }
13132
13133 Method (WMA7, 3, NotSerialized)
13134 {
13135 If ((SizeOf (Arg2) == 0x00))
13136 {
13137 Return ("")
13138 }
13139
13140 Local0 = CARG (Arg2)
13141 If ((Local0 == 0x00))
13142 {
13143 Local1 = GITM (IBUF, ITEM)
13144 If ((Local1 == Ones))
13145 {
13146 Return ("")
13147 }
13148
13149 Local0 = DerefOf (Index (ITEM, Local1))
13150 Local1 = DerefOf (Index (Local0, 0x00))
13151 If ((Local1 < 0x64))
13152 {
13153 Local3 = DerefOf (Index (VSEL, Local1))
13154 Local2 = DerefOf (Index (Local3, 0x00))
13155 Local4 = SizeOf (Local3)
13156 Local5 = 0x01
13157 While ((Local5 < Local4))
13158 {
13159 Local6 = DerefOf (Index (Local3, Local5))
13160 If ((SizeOf (Local6) != 0x00))
13161 {
13162 Concatenate (Local2, ",", Local7)
13163 Concatenate (Local7, Local6, Local2)
13164 }
13165
13166 Local5++
13167 }
13168 }
13169 Else
13170 {
13171 Local2 = DerefOf (Index (VLST, 0x00))
13172 Local4 = SizeOf (VLST)
13173 Local5 = 0x01
13174 While ((Local5 < Local4))
13175 {
13176 Local6 = DerefOf (Index (VLST, Local5))
13177 Concatenate (Local2, ",", Local7)
13178 Concatenate (Local7, Local6, Local2)
13179 Local5++
13180 }
13181 }
13182 }
13183
13184 Return (Local2)
13185 }
13186
13187 Method (CARG, 1, NotSerialized)
13188 {
13189 Local0 = SizeOf (Arg0)
13190 If ((Local0 == 0x00))
13191 {
13192 IBUF = 0x00
13193 ILEN = 0x00
13194 Return (0x00)
13195 }
13196
13197 If ((ObjectType (Arg0) != 0x02))
13198 {
13199 Return (0x02)
13200 }
13201
13202 If ((Local0 >= 0xFF))
13203 {
13204 Return (0x02)
13205 }
13206
13207 IBUF = Arg0
13208 Local0--
13209 Local1 = DerefOf (Index (IBUF, Local0))
13210 If (((Local1 == 0x3B) || (Local1 == 0x2A)))
13211 {
13212 Index (IBUF, Local0) = 0x00
13213 ILEN = Local0
13214 }
13215 Else
13216 {
13217 ILEN = SizeOf (Arg0)
13218 }
13219
13220 Return (0x00)
13221 }
13222
13223 Method (SCMP, 3, NotSerialized)
13224 {
13225 Local0 = SizeOf (Arg0)
13226 If ((Local0 == 0x00))
13227 {
13228 Return (0x00)
13229 }
13230
13231 Local0++
13232 Name (STR1, Buffer (Local0) {})
13233 STR1 = Arg0
13234 Local0--
13235 Local1 = 0x00
13236 Local2 = Arg2
13237 While ((Local1 < Local0))
13238 {
13239 Local3 = DerefOf (Index (STR1, Local1))
13240 Local4 = DerefOf (Index (Arg1, Local2))
13241 If ((Local3 != Local4))
13242 {
13243 Return (0x00)
13244 }
13245
13246 Local1++
13247 Local2++
13248 }
13249
13250 Local4 = DerefOf (Index (Arg1, Local2))
13251 If ((Local4 == 0x00))
13252 {
13253 Return (0x01)
13254 }
13255
13256 If (((Local4 == 0x2C) || (Local4 == 0x3A)))
13257 {
13258 Return (0x01)
13259 }
13260
13261 Return (0x00)
13262 }
13263
13264 Method (GITM, 2, NotSerialized)
13265 {
13266 Local0 = 0x00
13267 Local1 = SizeOf (Arg1)
13268 While ((Local0 < Local1))
13269 {
13270 Local3 = DerefOf (Index (DerefOf (Index (Arg1, Local0)), 0x01))
13271 If (SCMP (Local3, Arg0, 0x00))
13272 {
13273 Return (Local0)
13274 }
13275
13276 Local0++
13277 }
13278
13279 Return (Ones)
13280 }
13281
13282 Method (GSEL, 3, NotSerialized)
13283 {
13284 Local0 = 0x00
13285 Local1 = SizeOf (Arg0)
13286 While ((Local0 < Local1))
13287 {
13288 Local2 = DerefOf (Index (Arg0, Local0))
13289 If (SCMP (Local2, Arg1, Arg2))
13290 {
13291 Return (Local0)
13292 }
13293
13294 Local0++
13295 }
13296
13297 Return (Ones)
13298 }
13299
13300 Method (SLEN, 2, NotSerialized)
13301 {
13302 Local0 = DerefOf (Index (Arg0, Arg1))
13303 Return (SizeOf (Local0))
13304 }
13305
13306 Method (CLRP, 0, NotSerialized)
13307 {
13308 \WPAS = 0x00
13309 \WPNW = 0x00
13310 }
13311
13312 Method (GPAS, 2, NotSerialized)
13313 {
13314 Local0 = Arg1
13315 Local1 = 0x00
13316 While ((Local1 <= 0x80))
13317 {
13318 Local2 = DerefOf (Index (Arg0, Local0))
13319 If (((Local2 == 0x2C) || (Local2 == 0x00)))
13320 {
13321 Index (PSTR, Local1) = 0x00
13322 Return (Local1)
13323 }
13324
13325 Index (PSTR, Local1) = Local2
13326 Local0++
13327 Local1++
13328 }
13329
13330 Index (PSTR, Local1) = 0x00
13331 Return (Ones)
13332 }
13333
13334 Method (CPAS, 2, NotSerialized)
13335 {
13336 CLRP ()
13337 Local0 = Arg1
13338 Local1 = GPAS (Arg0, Local0)
13339 If ((Local1 == Ones))
13340 {
13341 Return (0x02)
13342 }
13343
13344 If ((Local1 == 0x00))
13345 {
13346 Return (0x02)
13347 }
13348
13349 \WPAS = PSTR /* \_SB_.WMI1.PSTR */
13350 Local0 += Local1
13351 Local0++
13352 Local6 = GSEL (PENC, Arg0, Local0)
13353 If ((Local6 == Ones))
13354 {
13355 Return (0x02)
13356 }
13357
13358 \WENC = Local6
13359 If ((Local6 == 0x00))
13360 {
13361 Local0 += SLEN (PENC, 0x00)
13362 If ((DerefOf (Index (Arg0, Local0)) != 0x2C))
13363 {
13364 Return (0x02)
13365 }
13366
13367 Local0++
13368 Local6 = GSEL (PKBD, Arg0, Local0)
13369 If ((Local6 == Ones))
13370 {
13371 Return (0x02)
13372 }
13373
13374 \WKBD = Local6
13375 }
13376
13377 Return (0x00)
13378 }
13379
13380 Method (SPAS, 1, NotSerialized)
13381 {
13382 CLRP ()
13383 Local6 = GSEL (PTYP, Arg0, 0x00)
13384 If ((Local6 == Ones))
13385 {
13386 Return (0x02)
13387 }
13388
13389 \WPTY = Local6
13390 Local0 = SLEN (PTYP, Local6)
13391 If ((DerefOf (Index (Arg0, Local0)) != 0x2C))
13392 {
13393 Return (0x02)
13394 }
13395
13396 Local0++
13397 Local1 = GPAS (Arg0, Local0)
13398 If (((Local1 == Ones) || (Local1 == 0x00)))
13399 {
13400 Return (0x02)
13401 }
13402
13403 \WPAS = PSTR /* \_SB_.WMI1.PSTR */
13404 Local0 += Local1
13405 If ((DerefOf (Index (Arg0, Local0)) != 0x2C))
13406 {
13407 Return (0x02)
13408 }
13409
13410 Local0++
13411 Local1 = GPAS (Arg0, Local0)
13412 If ((Local1 == Ones))
13413 {
13414 Return (0x02)
13415 }
13416
13417 If ((Local1 == 0x00))
13418 {
13419 PSTR = 0x00
13420 }
13421
13422 \WPNW = PSTR /* \_SB_.WMI1.PSTR */
13423 Local0 += Local1
13424 Local0++
13425 Local6 = GSEL (PENC, Arg0, Local0)
13426 If ((Local6 == Ones))
13427 {
13428 Return (0x02)
13429 }
13430
13431 \WENC = Local6
13432 If ((Local6 == 0x00))
13433 {
13434 Local0 += SLEN (PENC, 0x00)
13435 If ((DerefOf (Index (Arg0, Local0)) != 0x2C))
13436 {
13437 Return (0x02)
13438 }
13439
13440 Local0++
13441 Local6 = GSEL (PKBD, Arg0, Local0)
13442 If ((Local6 == Ones))
13443 {
13444 Return (0x02)
13445 }
13446
13447 \WKBD = Local6
13448 }
13449
13450 Return (0x00)
13451 }
13452
13453 Method (WSET, 2, NotSerialized)
13454 {
13455 Local0 = ILEN /* \_SB_.WMI1.ILEN */
13456 Local0++
13457 Local1 = GITM (IBUF, Arg0)
13458 If ((Local1 == Ones))
13459 {
13460 Return (0x02)
13461 }
13462
13463 \WITM = Local1
13464 Local3 = DerefOf (Index (Arg0, Local1))
13465 Local4 = DerefOf (Index (Local3, 0x01))
13466 Local2 = SizeOf (Local4)
13467 Local2++
13468 Local4 = DerefOf (Index (Local3, 0x00))
13469 If ((Local4 < 0x64))
13470 {
13471 Local5 = DerefOf (Index (Arg1, Local4))
13472 Local6 = GSEL (Local5, IBUF, Local2)
13473 If ((Local6 == Ones))
13474 {
13475 Return (0x02)
13476 }
13477
13478 \WSEL = Local6
13479 Local2 += SLEN (Local5, Local6)
13480 Local4 = DerefOf (Index (IBUF, Local2))
13481 }
13482 Else
13483 {
13484 \WLS0 = 0x3F
13485 \WLS1 = 0x3F
13486 \WLS2 = 0x3F
13487 \WLS3 = 0x3F
13488 \WLS4 = 0x3F
13489 \WLS5 = 0x3F
13490 \WLS6 = 0x3F
13491 \WLS7 = 0x3F
13492 \WLS8 = 0x3F
13493 \WLS9 = 0x3F
13494 \WLSA = 0x3F
13495 \WLSB = 0x3F
13496 \WLSC = 0x3F
13497 \WLSD = 0x3F
13498 Local6 = GSEL (VLST, IBUF, Local2)
13499 If ((Local6 == Ones))
13500 {
13501 Return (0x02)
13502 }
13503
13504 \WLS0 = Local6
13505 Local2 += SLEN (VLST, Local6)
13506 Local4 = DerefOf (Index (IBUF, Local2))
13507 If (((Local2 < Local0) && (Local4 == 0x3A)))
13508 {
13509 Local2++
13510 Local6 = GSEL (VLST, IBUF, Local2)
13511 If ((Local6 == Ones))
13512 {
13513 Return (0x02)
13514 }
13515
13516 \WLS1 = Local6
13517 Local2 += SLEN (VLST, Local6)
13518 Local4 = DerefOf (Index (IBUF, Local2))
13519 }
13520
13521 If (((Local2 < Local0) && (Local4 == 0x3A)))
13522 {
13523 Local2++
13524 Local6 = GSEL (VLST, IBUF, Local2)
13525 If ((Local6 == Ones))
13526 {
13527 Return (0x02)
13528 }
13529
13530 \WLS2 = Local6
13531 Local2 += SLEN (VLST, Local6)
13532 Local4 = DerefOf (Index (IBUF, Local2))
13533 }
13534
13535 If (((Local2 < Local0) && (Local4 == 0x3A)))
13536 {
13537 Local2++
13538 Local6 = GSEL (VLST, IBUF, Local2)
13539 If ((Local6 == Ones))
13540 {
13541 Return (0x02)
13542 }
13543
13544 \WLS3 = Local6
13545 Local2 += SLEN (VLST, Local6)
13546 Local4 = DerefOf (Index (IBUF, Local2))
13547 }
13548
13549 If (((Local2 < Local0) && (Local4 == 0x3A)))
13550 {
13551 Local2++
13552 Local6 = GSEL (VLST, IBUF, Local2)
13553 If ((Local6 == Ones))
13554 {
13555 Return (0x02)
13556 }
13557
13558 \WLS4 = Local6
13559 Local2 += SLEN (VLST, Local6)
13560 Local4 = DerefOf (Index (IBUF, Local2))
13561 }
13562
13563 If (((Local2 < Local0) && (Local4 == 0x3A)))
13564 {
13565 Local2++
13566 Local6 = GSEL (VLST, IBUF, Local2)
13567 If ((Local6 == Ones))
13568 {
13569 Return (0x02)
13570 }
13571
13572 \WLS5 = Local6
13573 Local2 += SLEN (VLST, Local6)
13574 Local4 = DerefOf (Index (IBUF, Local2))
13575 }
13576
13577 If (((Local2 < Local0) && (Local4 == 0x3A)))
13578 {
13579 Local2++
13580 Local6 = GSEL (VLST, IBUF, Local2)
13581 If ((Local6 == Ones))
13582 {
13583 Return (0x02)
13584 }
13585
13586 \WLS6 = Local6
13587 Local2 += SLEN (VLST, Local6)
13588 Local4 = DerefOf (Index (IBUF, Local2))
13589 }
13590
13591 If (((Local2 < Local0) && (Local4 == 0x3A)))
13592 {
13593 Local2++
13594 Local6 = GSEL (VLST, IBUF, Local2)
13595 If ((Local6 == Ones))
13596 {
13597 Return (0x02)
13598 }
13599
13600 \WLS7 = Local6
13601 Local2 += SLEN (VLST, Local6)
13602 Local4 = DerefOf (Index (IBUF, Local2))
13603 }
13604
13605 If (((Local2 < Local0) && (Local4 == 0x3A)))
13606 {
13607 Local2++
13608 Local6 = GSEL (VLST, IBUF, Local2)
13609 If ((Local6 == Ones))
13610 {
13611 Return (0x02)
13612 }
13613
13614 \WLS8 = Local6
13615 Local2 += SLEN (VLST, Local6)
13616 Local4 = DerefOf (Index (IBUF, Local2))
13617 }
13618
13619 If (((Local2 < Local0) && (Local4 == 0x3A)))
13620 {
13621 Local2++
13622 Local6 = GSEL (VLST, IBUF, Local2)
13623 If ((Local6 == Ones))
13624 {
13625 Return (0x02)
13626 }
13627
13628 \WLS9 = Local6
13629 Local2 += SLEN (VLST, Local6)
13630 Local4 = DerefOf (Index (IBUF, Local2))
13631 }
13632
13633 If (((Local2 < Local0) && (Local4 == 0x3A)))
13634 {
13635 Local2++
13636 Local6 = GSEL (VLST, IBUF, Local2)
13637 If ((Local6 == Ones))
13638 {
13639 Return (0x02)
13640 }
13641
13642 \WLSA = Local6
13643 Local2 += SLEN (VLST, Local6)
13644 Local4 = DerefOf (Index (IBUF, Local2))
13645 }
13646
13647 If (((Local2 < Local0) && (Local4 == 0x3A)))
13648 {
13649 Local2++
13650 Local6 = GSEL (VLST, IBUF, Local2)
13651 If ((Local6 == Ones))
13652 {
13653 Return (0x02)
13654 }
13655
13656 \WLSB = Local6
13657 Local2 += SLEN (VLST, Local6)
13658 Local4 = DerefOf (Index (IBUF, Local2))
13659 }
13660
13661 If (((Local2 < Local0) && (Local4 == 0x3A)))
13662 {
13663 Local2++
13664 Local6 = GSEL (VLST, IBUF, Local2)
13665 If ((Local6 == Ones))
13666 {
13667 Return (0x02)
13668 }
13669
13670 \WLSC = Local6
13671 Local2 += SLEN (VLST, Local6)
13672 Local4 = DerefOf (Index (IBUF, Local2))
13673 }
13674
13675 If (((Local2 < Local0) && (Local4 == 0x3A)))
13676 {
13677 Local2++
13678 Local6 = GSEL (VLST, IBUF, Local2)
13679 If ((Local6 == Ones))
13680 {
13681 Return (0x02)
13682 }
13683
13684 \WLSD = Local6
13685 Local2 += SLEN (VLST, Local6)
13686 Local4 = DerefOf (Index (IBUF, Local2))
13687 }
13688 }
13689
13690 If (((Local4 == 0x2C) && (Local2 < Local0)))
13691 {
13692 Local2++
13693 Local0 = CPAS (IBUF, Local2)
13694 If ((Local0 != 0x00))
13695 {
13696 Return (Local0)
13697 }
13698 }
13699
13700 Return (0x00)
13701 }
13702
13703 Name (WQBA, Buffer (0x089D)
13704 {
13705 /* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, /* FOMB.... */
13706 /* 0008 */ 0x8D, 0x08, 0x00, 0x00, 0xF2, 0x36, 0x00, 0x00, /* .....6.. */
13707 /* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, /* DS...}.T */
13708 /* 0018 */ 0xA8, 0xC9, 0x9A, 0x00, 0x01, 0x06, 0x18, 0x42, /* .......B */
13709 /* 0020 */ 0x10, 0x13, 0x10, 0x0A, 0x0D, 0x21, 0x02, 0x0B, /* .....!.. */
13710 /* 0028 */ 0x83, 0x50, 0x4C, 0x18, 0x14, 0xA0, 0x45, 0x41, /* .PL...EA */
13711 /* 0030 */ 0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02, /* .....!.. */
13712 /* 0038 */ 0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5, /* ..p.@... */
13713 /* 0040 */ 0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F, /* (r.".... */
13714 /* 0048 */ 0x31, 0x0E, 0x88, 0x14, 0x40, 0x48, 0x26, 0x84, /* 1...@H&. */
13715 /* 0050 */ 0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F, /* D.S!p.._ */
13716 /* 0058 */ 0x01, 0x08, 0x1D, 0xA2, 0xC9, 0xA0, 0x00, 0xA7, /* ........ */
13717 /* 0060 */ 0x08, 0x82, 0xB4, 0x65, 0x01, 0xBA, 0x05, 0xF8, /* ...e.... */
13718 /* 0068 */ 0x16, 0xA0, 0x1D, 0x42, 0x68, 0x15, 0x0A, 0x30, /* ...Bh..0 */
13719 /* 0070 */ 0x29, 0xC0, 0x27, 0x98, 0x2C, 0x0A, 0x90, 0x0D, /* ).'.,... */
13720 /* 0078 */ 0x26, 0xDB, 0x70, 0x64, 0x18, 0x4C, 0xE4, 0x18, /* &.pd.L.. */
13721 /* 0080 */ 0x50, 0x62, 0xC6, 0x80, 0xD2, 0x39, 0x05, 0xD9, /* Pb...9.. */
13722 /* 0088 */ 0x04, 0x16, 0x74, 0xA1, 0x28, 0x9A, 0x46, 0x94, /* ..t.(.F. */
13723 /* 0090 */ 0x04, 0x07, 0x75, 0x0C, 0x11, 0x82, 0x97, 0x2B, /* ..u....+ */
13724 /* 0098 */ 0x40, 0xF2, 0x04, 0xA4, 0x79, 0x5E, 0xB2, 0x3E, /* @...y^.> */
13725 /* 00A0 */ 0x08, 0x0D, 0x81, 0x8D, 0x80, 0x47, 0x91, 0x00, /* .....G.. */
13726 /* 00A8 */ 0xC2, 0x62, 0x2C, 0x53, 0xE2, 0x61, 0x50, 0x1E, /* .b,S.aP. */
13727 /* 00B0 */ 0x40, 0x24, 0x67, 0xA8, 0x28, 0x60, 0x7B, 0x9D, /* @$g.(`{. */
13728 /* 00B8 */ 0x88, 0x86, 0x75, 0x9C, 0x4C, 0x12, 0x1C, 0x6A, /* ..u.L..j */
13729 /* 00C0 */ 0x94, 0x96, 0x28, 0xC0, 0xFC, 0xC8, 0x34, 0x91, /* ..(...4. */
13730 /* 00C8 */ 0x63, 0x6B, 0x7A, 0xC4, 0x82, 0x64, 0xD2, 0x86, /* ckz..d.. */
13731 /* 00D0 */ 0x82, 0x1A, 0xBA, 0xA7, 0x75, 0x52, 0x9E, 0x68, /* ....uR.h */
13732 /* 00D8 */ 0xC4, 0x83, 0x32, 0x4C, 0x02, 0x8F, 0x82, 0xA1, /* ..2L.... */
13733 /* 00E0 */ 0x71, 0x82, 0xB2, 0x20, 0xE4, 0x60, 0xA0, 0x28, /* q.. .`.( */
13734 /* 00E8 */ 0xC0, 0x93, 0xF0, 0x1C, 0x8B, 0x17, 0x20, 0x7C, /* ...... | */
13735 /* 00F0 */ 0xC6, 0xE4, 0x28, 0x10, 0x23, 0x81, 0x8F, 0x04, /* ..(.#... */
13736 /* 00F8 */ 0x1E, 0xCD, 0x31, 0x63, 0x81, 0xC2, 0x05, 0x3C, /* ..1c...< */
13737 /* 0100 */ 0x9F, 0x63, 0x88, 0x1C, 0xF7, 0x50, 0x63, 0x1C, /* .c...Pc. */
13738 /* 0108 */ 0x45, 0xE4, 0x04, 0xEF, 0x00, 0x51, 0x8C, 0x56, /* E....Q.V */
13739 /* 0110 */ 0xD0, 0xBC, 0x85, 0x18, 0x2C, 0x9A, 0xC1, 0x7A, /* ....,..z */
13740 /* 0118 */ 0x06, 0x27, 0x83, 0x4E, 0xF0, 0xFF, 0x3F, 0x02, /* .'.N..?. */
13741 /* 0120 */ 0x2E, 0x03, 0x42, 0x1E, 0x05, 0x58, 0x1D, 0x94, /* ..B..X.. */
13742 /* 0128 */ 0xA6, 0x61, 0x82, 0xEE, 0x05, 0xBC, 0x1A, 0x1A, /* .a...... */
13743 /* 0130 */ 0x13, 0xA0, 0x11, 0x43, 0xCA, 0x04, 0x38, 0xBB, /* ...C..8. */
13744 /* 0138 */ 0x2F, 0x68, 0x46, 0x6D, 0x09, 0x30, 0x27, 0x40, /* /hFm.0'@ */
13745 /* 0140 */ 0x9B, 0x00, 0x6F, 0x08, 0x42, 0x39, 0xCF, 0x28, /* ..o.B9.( */
13746 /* 0148 */ 0xC7, 0x72, 0x8A, 0x51, 0x1E, 0x06, 0x62, 0xBE, /* .r.Q..b. */
13747 /* 0150 */ 0x0C, 0x04, 0x8D, 0x12, 0x23, 0xE6, 0xB9, 0xC4, /* ....#... */
13748 /* 0158 */ 0x35, 0x6C, 0x84, 0x18, 0x21, 0x4F, 0x21, 0x50, /* 5l..!O!P */
13749 /* 0160 */ 0xDC, 0xF6, 0x07, 0x41, 0x06, 0x8D, 0x1B, 0xBD, /* ...A.... */
13750 /* 0168 */ 0x4F, 0x0B, 0x67, 0x75, 0x02, 0x47, 0xFF, 0xA4, /* O.gu.G.. */
13751 /* 0170 */ 0x60, 0x02, 0x4F, 0xF9, 0xC0, 0x9E, 0x0D, 0x4E, /* `.O....N */
13752 /* 0178 */ 0xE0, 0x58, 0xA3, 0xC6, 0x38, 0x95, 0x04, 0x8E, /* .X..8... */
13753 /* 0180 */ 0xFD, 0x80, 0x90, 0x06, 0x10, 0x45, 0x82, 0x47, /* .....E.G */
13754 /* 0188 */ 0x9D, 0x16, 0x7C, 0x2E, 0xF0, 0xD0, 0x0E, 0xDA, /* ..|..... */
13755 /* 0190 */ 0x73, 0x3C, 0x81, 0x20, 0x87, 0x70, 0x04, 0x4F, /* s<. .p.O */
13756 /* 0198 */ 0x0C, 0x0F, 0x04, 0x1E, 0x03, 0xBB, 0x29, 0xF8, /* ......). */
13757 /* 01A0 */ 0x08, 0xE0, 0x13, 0x02, 0xDE, 0x35, 0xA0, 0xAE, /* .....5.. */
13758 /* 01A8 */ 0x06, 0x0F, 0x06, 0x6C, 0xD0, 0xE1, 0x30, 0xE3, /* ...l..0. */
13759 /* 01B0 */ 0xF5, 0xF0, 0xC3, 0x9D, 0xC0, 0x49, 0x3E, 0x60, /* .....I>` */
13760 /* 01B8 */ 0xF0, 0xC3, 0x86, 0x07, 0x87, 0x9B, 0xE7, 0xC9, /* ........ */
13761 /* 01C0 */ 0x1C, 0x59, 0xA9, 0x02, 0xCC, 0x1E, 0x0E, 0x74, /* .Y.....t */
13762 /* 01C8 */ 0x90, 0xF0, 0x69, 0x83, 0x9D, 0x01, 0x30, 0xF2, /* ..i...0. */
13763 /* 01D0 */ 0x07, 0x81, 0x1A, 0x99, 0xA1, 0x3D, 0xEE, 0x97, /* .....=.. */
13764 /* 01D8 */ 0x0E, 0x43, 0x3E, 0x27, 0x1C, 0x16, 0x13, 0x7B, /* .C>'...{ */
13765 /* 01E0 */ 0xEA, 0xA0, 0xE3, 0x01, 0xFF, 0x65, 0xE4, 0x39, /* .....e.9 */
13766 /* 01E8 */ 0xC3, 0xD3, 0xF7, 0x7C, 0x4D, 0x30, 0xEC, 0xC0, /* ...|M0.. */
13767 /* 01F0 */ 0xD1, 0x03, 0x31, 0xF4, 0xC3, 0xC6, 0x61, 0x9C, /* ..1...a. */
13768 /* 01F8 */ 0x86, 0xEF, 0x1F, 0x3E, 0x2F, 0xC0, 0x38, 0x05, /* ...>/.8. */
13769 /* 0200 */ 0x78, 0xE4, 0xFE, 0xFF, 0x1F, 0x52, 0x7C, 0x9A, /* x....R|. */
13770 /* 0208 */ 0xE0, 0x47, 0x0B, 0x9F, 0x26, 0xD8, 0xF5, 0xE0, /* .G..&... */
13771 /* 0210 */ 0x34, 0x9E, 0x03, 0x3C, 0x9C, 0xB3, 0xF2, 0x61, /* 4..<...a */
13772 /* 0218 */ 0x02, 0x6C, 0xF7, 0x13, 0x36, 0xA2, 0x77, 0x0B, /* .l..6.w. */
13773 /* 0220 */ 0x8F, 0x06, 0x7B, 0x0A, 0x00, 0xDF, 0xF9, 0x05, /* ..{..... */
13774 /* 0228 */ 0x9C, 0x77, 0x0D, 0x36, 0x58, 0x18, 0xE7, 0x17, /* .w.6X... */
13775 /* 0230 */ 0xE0, 0x71, 0x42, 0xF0, 0x10, 0xF8, 0x41, 0xC2, /* .qB...A. */
13776 /* 0238 */ 0x43, 0xE0, 0x03, 0x78, 0xFE, 0x38, 0x43, 0x2B, /* C..x.8C+ */
13777 /* 0240 */ 0x9D, 0x17, 0x72, 0x60, 0xF0, 0xCE, 0x39, 0x30, /* ..r`..90 */
13778 /* 0248 */ 0x46, 0xC1, 0xF3, 0x3C, 0x36, 0x4C, 0xA0, 0x20, /* F..<6L. */
13779 /* 0250 */ 0xAF, 0x01, 0x85, 0x7A, 0x16, 0x50, 0x18, 0x9F, /* ...z.P.. */
13780 /* 0258 */ 0x6A, 0x80, 0xD7, 0xFF, 0xFF, 0x54, 0x03, 0x5C, /* j....T.\ */
13781 /* 0260 */ 0x0E, 0x07, 0xB8, 0x93, 0x03, 0xDC, 0x7B, 0x01, /* ......{. */
13782 /* 0268 */ 0xBB, 0x38, 0x3C, 0xD7, 0xC0, 0x15, 0x7D, 0xAE, /* .8<...}. */
13783 /* 0270 */ 0x81, 0x7A, 0x6F, 0x29, 0x6E, 0x8C, 0xBA, 0xC6, /* .zo)n... */
13784 /* 0278 */ 0x04, 0x79, 0x14, 0x78, 0xA4, 0x89, 0xF2, 0x3C, /* .y.x...< */
13785 /* 0280 */ 0xF3, 0x2E, 0x13, 0xE1, 0xD9, 0xC6, 0xD7, 0x1A, /* ........ */
13786 /* 0288 */ 0x4F, 0x21, 0x8E, 0xAF, 0x35, 0x46, 0x7C, 0x99, /* O!..5F|. */
13787 /* 0290 */ 0x78, 0xB7, 0x31, 0xEE, 0xC1, 0x3D, 0xD6, 0x3C, /* x.1..=.< */
13788 /* 0298 */ 0xE4, 0x18, 0xE4, 0x68, 0x22, 0xBC, 0x18, 0x04, /* ...h"... */
13789 /* 02A0 */ 0x7C, 0xBC, 0xF1, 0xB1, 0x06, 0xBC, 0x62, 0x5E, /* |.....b^ */
13790 /* 02A8 */ 0x28, 0xB2, 0x70, 0xAC, 0x01, 0x34, 0xFE, 0xFF, /* (.p..4.. */
13791 /* 02B0 */ 0x8F, 0x35, 0xC0, 0x0D, 0xEB, 0x01, 0x05, 0x7C, /* .5.....| */
13792 /* 02B8 */ 0x47, 0x06, 0x76, 0x43, 0x81, 0x77, 0x42, 0x01, /* G.vC.wB. */
13793 /* 02C0 */ 0xFC, 0x24, 0x7E, 0x01, 0xE8, 0xC8, 0xE1, 0xB4, /* .$~..... */
13794 /* 02C8 */ 0x20, 0xB2, 0xF1, 0x06, 0xF0, 0x29, 0x80, 0xAA, /* ....).. */
13795 /* 02D0 */ 0x01, 0xD2, 0x34, 0x61, 0x13, 0x4C, 0x4F, 0x2E, /* ..4a.LO. */
13796 /* 02D8 */ 0x78, 0x1F, 0x09, 0x9C, 0x9B, 0x44, 0xC9, 0x87, /* x....D.. */
13797 /* 02E0 */ 0x45, 0xE1, 0x9C, 0xF5, 0x20, 0x42, 0x41, 0x0C, /* E... BA. */
13798 /* 02E8 */ 0xE8, 0x20, 0xC7, 0x09, 0xF4, 0x19, 0xC5, 0x07, /* . ...... */
13799 /* 02F0 */ 0x91, 0x13, 0x7D, 0x22, 0xF4, 0xA0, 0x3C, 0x8C, /* ..}"..<. */
13800 /* 02F8 */ 0x77, 0x14, 0x76, 0x02, 0xF1, 0x61, 0xC2, 0x63, /* w.v..a.c */
13801 /* 0300 */ 0xF7, 0x31, 0x81, 0xFF, 0x63, 0x3C, 0x1B, 0xA3, /* .1..c<.. */
13802 /* 0308 */ 0x5B, 0x0D, 0x86, 0xFE, 0xFF, 0xE7, 0x14, 0x0E, /* [....... */
13803 /* 0310 */ 0xE6, 0x83, 0x08, 0x27, 0xA8, 0xEB, 0x26, 0x01, /* ...'..&. */
13804 /* 0318 */ 0x32, 0x7D, 0x47, 0x05, 0x50, 0x00, 0xF9, 0x5E, /* 2}G.P..^ */
13805 /* 0320 */ 0xE0, 0x73, 0xC0, 0xB3, 0x01, 0x1B, 0xC3, 0xA3, /* .s...... */
13806 /* 0328 */ 0x80, 0xD1, 0x8C, 0xCE, 0xC3, 0x4F, 0x16, 0x15, /* .....O.. */
13807 /* 0330 */ 0x77, 0xB2, 0x14, 0xC4, 0x93, 0x75, 0x94, 0xC9, /* w....u.. */
13808 /* 0338 */ 0xA2, 0x67, 0xE2, 0x7B, 0x85, 0x67, 0xF4, 0xA6, /* .g.{.g.. */
13809 /* 0340 */ 0xE5, 0x39, 0x7A, 0xC2, 0xBE, 0x87, 0xC0, 0x3A, /* .9z....: */
13810 /* 0348 */ 0x0C, 0x84, 0x7C, 0x30, 0xF0, 0x34, 0x0C, 0xE7, /* ..|0.4.. */
13811 /* 0350 */ 0xC9, 0x72, 0x38, 0x4F, 0x96, 0x8F, 0xC5, 0xD7, /* .r8O.... */
13812 /* 0358 */ 0x10, 0xF0, 0x09, 0x9C, 0x2D, 0xC8, 0xE1, 0x31, /* ....-..1 */
13813 /* 0360 */ 0xB1, 0x46, 0x45, 0xAF, 0x42, 0x1E, 0x1E, 0xBF, /* .FE.B... */
13814 /* 0368 */ 0x1C, 0x78, 0x3E, 0xCF, 0x08, 0x47, 0xF9, 0x24, /* .x>..G.$ */
13815 /* 0370 */ 0x81, 0xC3, 0x78, 0x26, 0xF1, 0x10, 0x7D, 0x2B, /* ..x&..}+ */
13816 /* 0378 */ 0x82, 0x35, 0x91, 0x93, 0xF6, 0x6D, 0xE1, 0x64, /* .5...m.d */
13817 /* 0380 */ 0x83, 0xBE, 0x9E, 0x61, 0x6E, 0x45, 0xB0, 0xFF, /* ...anE.. */
13818 /* 0388 */ 0xFF, 0xB7, 0x22, 0x38, 0x17, 0x34, 0x98, 0x99, /* .."8.4.. */
13819 /* 0390 */ 0xEE, 0x55, 0xA8, 0x58, 0xF7, 0x2A, 0x40, 0xEC, /* .U.X.*@. */
13820 /* 0398 */ 0xB0, 0x5E, 0x7B, 0x7C, 0xB0, 0x82, 0x7B, 0xAF, /* .^{|..{. */
13821 /* 03A0 */ 0x82, 0x7B, 0xA9, 0x7A, 0x56, 0x38, 0xC6, 0xF0, /* .{.zV8.. */
13822 /* 03A8 */ 0x0F, 0x53, 0x31, 0x4E, 0xE9, 0xB5, 0xD3, 0x40, /* .S1N...@ */
13823 /* 03B0 */ 0x61, 0xA2, 0xC4, 0x7B, 0xAF, 0xF2, 0x18, 0xDF, /* a..{.... */
13824 /* 03B8 */ 0xAB, 0xD8, 0x15, 0x2A, 0x4C, 0xAC, 0x97, 0x2B, /* ...*L..+ */
13825 /* 03C0 */ 0xA3, 0xBE, 0x4E, 0x84, 0x0B, 0x14, 0x24, 0xD2, /* ..N...$. */
13826 /* 03C8 */ 0xAB, 0x55, 0x94, 0xC8, 0xF1, 0x0D, 0xF9, 0x5E, /* .U.....^ */
13827 /* 03D0 */ 0x05, 0x5E, 0x39, 0xF7, 0x2A, 0x90, 0xFD, 0xFF, /* .^9.*... */
13828 /* 03D8 */ 0xEF, 0x55, 0x80, 0x79, 0xB4, 0xF7, 0x2A, 0x30, /* .U.y..*0 */
13829 /* 03E0 */ 0x5E, 0x1B, 0xD8, 0x0D, 0x09, 0x16, 0xD0, 0x8B, /* ^....... */
13830 /* 03E8 */ 0x15, 0x60, 0x28, 0xF3, 0xC5, 0x8A, 0xE6, 0xBD, /* .`(..... */
13831 /* 03F0 */ 0x58, 0x21, 0xFE, 0xFF, 0xE7, 0x12, 0xA6, 0xE7, /* X!...... */
13832 /* 03F8 */ 0x62, 0x45, 0xE6, 0x09, 0xFF, 0x66, 0x05, 0x70, /* bE...f.p */
13833 /* 0400 */ 0xFA, 0xFF, 0x7F, 0xB3, 0x02, 0x8C, 0xDD, 0x8B, /* ........ */
13834 /* 0408 */ 0x30, 0x47, 0x2B, 0x78, 0x29, 0x6F, 0x56, 0x34, /* 0G+x)oV4 */
13835 /* 0410 */ 0xCE, 0x32, 0x14, 0x70, 0x41, 0x14, 0xC6, 0x37, /* .2.pA..7 */
13836 /* 0418 */ 0x2B, 0xC0, 0xD1, 0x75, 0x05, 0x37, 0x64, 0xB8, /* +..u.7d. */
13837 /* 0420 */ 0x60, 0x51, 0x82, 0xF9, 0x10, 0xE2, 0xE9, 0x1C, /* `Q...... */
13838 /* 0428 */ 0xF1, 0x43, 0xC2, 0x4B, 0xC0, 0x63, 0x8E, 0x07, /* .C.K.c.. */
13839 /* 0430 */ 0xFC, 0x40, 0xE0, 0xCB, 0x15, 0x98, 0xFE, 0xFF, /* .@...... */
13840 /* 0438 */ 0x04, 0x3E, 0xF9, 0x9E, 0xE5, 0xDB, 0xD4, 0x7B, /* .>.....{ */
13841 /* 0440 */ 0x2F, 0x3F, 0x60, 0xBD, 0x57, 0xF9, 0xF0, 0x1B, /* /?`.W... */
13842 /* 0448 */ 0xEB, 0x9D, 0xE1, 0xE5, 0xCA, 0x23, 0x89, 0x72, /* .....#.r */
13843 /* 0450 */ 0x12, 0xA1, 0x7C, 0xB7, 0x7A, 0xAF, 0x32, 0x4A, /* ..|.z.2J */
13844 /* 0458 */ 0xC4, 0x17, 0x62, 0x9F, 0x82, 0x0D, 0x6D, 0x94, /* ..b...m. */
13845 /* 0460 */ 0xA7, 0x8A, 0xE8, 0xC6, 0x7B, 0xB9, 0x02, 0xAF, /* ....{... */
13846 /* 0468 */ 0xA4, 0xCB, 0x15, 0x40, 0x93, 0xE1, 0xBF, 0x5C, /* ...@...\ */
13847 /* 0470 */ 0x81, 0xEF, 0xE6, 0x80, 0xBD, 0x26, 0xC1, 0xF9, /* .....&.. */
13848 /* 0478 */ 0xFF, 0x5F, 0x93, 0xF8, 0xF5, 0x0A, 0xF0, 0x93, /* ._...... */
13849 /* 0480 */ 0xFD, 0x7A, 0x45, 0x73, 0x5F, 0xAF, 0x50, 0xA2, /* .zEs_.P. */
13850 /* 0488 */ 0x20, 0xA4, 0x08, 0x48, 0x33, 0x05, 0xCF, 0xFD, /* ..H3... */
13851 /* 0490 */ 0x0A, 0xE0, 0xC4, 0xFF, 0xFF, 0x7E, 0x05, 0x58, /* .....~.X */
13852 /* 0498 */ 0x0E, 0x77, 0xBF, 0x02, 0x7A, 0xB7, 0x23, 0xF0, /* .w..z.#. */
13853 /* 04A0 */ 0xA2, 0xBC, 0x1D, 0x61, 0xAF, 0x58, 0xF8, 0x8C, /* ...a.X.. */
13854 /* 04A8 */ 0x57, 0x2C, 0x1A, 0x66, 0x25, 0x8A, 0xB7, 0x26, /* W,.f%..& */
13855 /* 04B0 */ 0x0A, 0xE3, 0x2B, 0x16, 0x30, 0xF9, 0xFF, 0x5F, /* ..+.0.._ */
13856 /* 04B8 */ 0xB1, 0x80, 0xD9, 0x41, 0x14, 0x37, 0x6A, 0xB8, /* ...A.7j. */
13857 /* 04C0 */ 0x17, 0x27, 0xDF, 0x7A, 0x3C, 0xDF, 0x88, 0xBE, /* .'.z<... */
13858 /* 04C8 */ 0xC3, 0x60, 0x4E, 0x58, 0x30, 0x6E, 0x58, 0xF0, /* .`NX0nX. */
13859 /* 04D0 */ 0x87, 0xF4, 0x30, 0xEC, 0x93, 0xC4, 0x3B, 0x96, /* ..0...;. */
13860 /* 04D8 */ 0x8F, 0x56, 0x06, 0x79, 0x03, 0x7E, 0xB2, 0x7A, /* .V.y.~.z */
13861 /* 04E0 */ 0xB0, 0x8A, 0x62, 0x84, 0x80, 0xC7, 0xF3, 0x2E, /* ..b..... */
13862 /* 04E8 */ 0xEC, 0xA3, 0xD5, 0x9B, 0x96, 0x51, 0x62, 0xC7, /* .....Qb. */
13863 /* 04F0 */ 0xF2, 0x85, 0xEA, 0x59, 0xCB, 0xD7, 0x2C, 0x43, /* ...Y..,C */
13864 /* 04F8 */ 0xC4, 0x7D, 0x20, 0xF6, 0x0D, 0x0B, 0xB0, 0xFD, /* .} ..... */
13865 /* 0500 */ 0xFF, 0xBF, 0x61, 0x01, 0x8E, 0x2E, 0x0E, 0xFC, /* ..a..... */
13866 /* 0508 */ 0xE0, 0x80, 0xBD, 0x61, 0x01, 0x3E, 0x67, 0x0A, /* ...a.>g. */
13867 /* 0510 */ 0x9E, 0x1B, 0x16, 0xB0, 0xF9, 0xFF, 0xDF, 0xB0, /* ........ */
13868 /* 0518 */ 0x00, 0xFE, 0xFF, 0xFF, 0x6F, 0x58, 0xC0, 0xE1, /* ....oX.. */
13869 /* 0520 */ 0x76, 0x85, 0xBD, 0x65, 0x61, 0x6F, 0x2F, 0x64, /* v..eao/d */
13870 /* 0528 */ 0x15, 0x34, 0xD4, 0x4A, 0x14, 0xFC, 0x7B, 0x65, /* .4.J..{e */
13871 /* 0530 */ 0x18, 0x7A, 0xC3, 0x02, 0x1C, 0x8D, 0xDB, 0xA3, /* .z...... */
13872 /* 0538 */ 0x06, 0xC7, 0xD9, 0xE0, 0x49, 0x02, 0x73, 0xAE, /* ....I.s. */
13873 /* 0540 */ 0xC6, 0xCD, 0xE6, 0xE0, 0x02, 0x47, 0xE8, 0x1D, /* .....G.. */
13874 /* 0548 */ 0x54, 0x73, 0x67, 0x97, 0x14, 0x18, 0xB7, 0x2C, /* Tsg...., */
13875 /* 0550 */ 0xB8, 0x97, 0xAA, 0x87, 0x86, 0x28, 0x07, 0xF1, /* .....(.. */
13876 /* 0558 */ 0x2A, 0xFC, 0x60, 0xF5, 0x28, 0x75, 0x64, 0x8F, /* *.`.(ud. */
13877 /* 0560 */ 0x57, 0x4F, 0xC3, 0x3E, 0x66, 0xF9, 0x96, 0x65, /* WO.>f..e */
13878 /* 0568 */ 0xA8, 0x08, 0x6F, 0x59, 0xEC, 0x0C, 0x11, 0x2F, /* ..oY.../ */
13879 /* 0570 */ 0x56, 0x94, 0x10, 0xEF, 0x15, 0xA1, 0x7D, 0xE7, /* V.....}. */
13880 /* 0578 */ 0x32, 0xF8, 0xA3, 0xB1, 0x51, 0x83, 0xBE, 0x1C, /* 2...Q... */
13881 /* 0580 */ 0xBF, 0x65, 0xC1, 0xFB, 0xFF, 0xDF, 0xB2, 0xE0, /* .e...... */
13882 /* 0588 */ 0x8B, 0xFC, 0xAB, 0xE8, 0x44, 0xE0, 0x5B, 0x16, /* ....D.[. */
13883 /* 0590 */ 0xC0, 0x8F, 0x60, 0x10, 0x72, 0x32, 0x70, 0xF4, /* ..`.r2p. */
13884 /* 0598 */ 0x79, 0x01, 0x3F, 0x80, 0x87, 0x11, 0x0F, 0x89, /* y.?..... */
13885 /* 05A0 */ 0x05, 0x18, 0x38, 0xBD, 0x2F, 0xF9, 0x4C, 0xC1, /* ..8./.L. */
13886 /* 05A8 */ 0x0F, 0x18, 0x3E, 0x53, 0xB0, 0xEB, 0x41, 0xF4, /* ..>S..A. */
13887 /* 05B0 */ 0xC7, 0x00, 0x9F, 0x4B, 0x30, 0x83, 0x03, 0xFF, /* ...K0... */
13888 /* 05B8 */ 0xB5, 0xE2, 0xD0, 0x3D, 0x8A, 0xD7, 0x07, 0x13, /* ...=.... */
13889 /* 05C0 */ 0x78, 0x70, 0xFC, 0xFF, 0x3F, 0x38, 0xB8, 0x77, /* xp..?8.w */
13890 /* 05C8 */ 0x86, 0x23, 0xF2, 0x1D, 0xC6, 0x83, 0x03, 0xDB, /* .#...... */
13891 /* 05D0 */ 0x41, 0x00, 0x38, 0x0C, 0x0E, 0x1F, 0x6A, 0x70, /* A.8...jp */
13892 /* 05D8 */ 0xE8, 0xF1, 0x18, 0x38, 0xA4, 0xCF, 0x63, 0xEC, /* ...8..c. */
13893 /* 05E0 */ 0xC2, 0xF0, 0x90, 0xE3, 0xA1, 0x81, 0x0D, 0xD0, /* ........ */
13894 /* 05E8 */ 0x43, 0x03, 0x96, 0x93, 0x78, 0x0A, 0x39, 0x34, /* C...x.94 */
13895 /* 05F0 */ 0x30, 0x4B, 0x18, 0x1A, 0x50, 0x8A, 0x37, 0x34, /* 0K..P.74 */
13896 /* 05F8 */ 0xFA, 0xFF, 0x1F, 0x1A, 0x1F, 0x92, 0x0F, 0x0B, /* ........ */
13897 /* 0600 */ 0x31, 0x9F, 0x72, 0x22, 0xBC, 0x2F, 0xF8, 0x04, /* 1.r"./.. */
13898 /* 0608 */ 0xC5, 0xD0, 0x5F, 0x53, 0x7C, 0xBB, 0xF0, 0x4D, /* .._S|..M */
13899 /* 0610 */ 0x10, 0x37, 0x3E, 0x70, 0x5D, 0x3A, 0x3D, 0x3E, /* .7>p]:=> */
13900 /* 0618 */ 0xE0, 0x73, 0xE4, 0xF2, 0xF8, 0x70, 0x47, 0x27, /* .s...pG' */
13901 /* 0620 */ 0x8F, 0x0F, 0x86, 0xCB, 0xAB, 0x0C, 0x39, 0x9A, /* ......9. */
13902 /* 0628 */ 0xF8, 0x68, 0xC5, 0x86, 0x07, 0xB6, 0x9B, 0x9E, /* .h...... */
13903 /* 0630 */ 0x87, 0x07, 0x7C, 0xAE, 0x9B, 0x60, 0xBC, 0x42, /* ..|..`.B */
13904 /* 0638 */ 0xF2, 0x6B, 0x09, 0x8C, 0x13, 0x14, 0xFE, 0xBA, /* .k...... */
13905 /* 0640 */ 0x09, 0xDE, 0xFF, 0xFF, 0x75, 0x13, 0x78, 0x8E, /* ....u.x. */
13906 /* 0648 */ 0x82, 0x6B, 0xBD, 0x64, 0xD3, 0x20, 0xAF, 0x1C, /* .k.d. .. */
13907 /* 0650 */ 0xC5, 0x7A, 0x11, 0x50, 0x18, 0x9F, 0xD9, 0x00, /* .z.P.... */
13908 /* 0658 */ 0x47, 0x63, 0x7D, 0x66, 0x03, 0xCB, 0xBD, 0x80, /* Gc}f.... */
13909 /* 0660 */ 0xDD, 0xD8, 0xE0, 0x9E, 0xD6, 0x60, 0xDF, 0x1D, /* .....`.. */
13910 /* 0668 */ 0x1E, 0xCE, 0x1E, 0xD3, 0x1E, 0xD5, 0x1E, 0xD0, /* ........ */
13911 /* 0670 */ 0x7C, 0xC4, 0x8E, 0xF1, 0x96, 0x16, 0x24, 0x4E, /* |.....$N */
13912 /* 0678 */ 0x84, 0xD7, 0x81, 0xA7, 0x35, 0x5F, 0x32, 0xE2, /* ....5_2. */
13913 /* 0680 */ 0x05, 0x7A, 0x5A, 0x33, 0x46, 0x9C, 0x97, 0x36, /* .zZ3F..6 */
13914 /* 0688 */ 0x23, 0xBE, 0x52, 0x84, 0x78, 0x58, 0xF3, 0xC9, /* #.R.xX.. */
13915 /* 0690 */ 0xCD, 0x78, 0x0F, 0x13, 0xE1, 0xC2, 0xBC, 0xB0, /* .x...... */
13916 /* 0698 */ 0x3D, 0xAD, 0x81, 0xE3, 0xFF, 0x7F, 0x5A, 0x83, /* =.....Z. */
13917 /* 06A0 */ 0x23, 0xE7, 0x8A, 0x0D, 0xD0, 0xE4, 0xA2, 0x8F, /* #....... */
13918 /* 06A8 */ 0x3B, 0xA4, 0x80, 0xE5, 0xDA, 0xC0, 0x6E, 0x29, /* ;.....n) */
13919 /* 06B0 */ 0xF0, 0x2E, 0xD8, 0xC0, 0xF9, 0xFF, 0x7F, 0x44, /* .......D */
13920 /* 06B8 */ 0x01, 0x5F, 0x96, 0x0B, 0x36, 0xCD, 0x71, 0xC1, /* ._..6.q. */
13921 /* 06C0 */ 0x46, 0x71, 0x58, 0x0D, 0x90, 0xE6, 0x09, 0xFF, /* FqX..... */
13922 /* 06C8 */ 0x7A, 0x0D, 0xFE, 0x49, 0xF8, 0x7A, 0x0D, 0xD8, /* z..I.z.. */
13923 /* 06D0 */ 0xBE, 0xC5, 0xE2, 0xAE, 0xD7, 0xC0, 0xEA, 0xFF, /* ........ */
13924 /* 06D8 */ 0x7F, 0xBD, 0x06, 0x96, 0x82, 0x47, 0x4A, 0xEF, /* .....GJ. */
13925 /* 06E0 */ 0xD4, 0xE0, 0xBA, 0x69, 0xE3, 0x41, 0xDF, 0xB4, /* ...i.A.. */
13926 /* 06E8 */ 0x61, 0x0A, 0xBE, 0x45, 0xD1, 0x28, 0xE4, 0x8A, /* a..E.(.. */
13927 /* 06F0 */ 0xB6, 0x10, 0x0A, 0xE3, 0x5B, 0x14, 0xE0, 0x08, /* ....[... */
13928 /* 06F8 */ 0xFB, 0x2D, 0x0A, 0x2C, 0x17, 0xA7, 0xB7, 0x28, /* .-.,...( */
13929 /* 0700 */ 0xFC, 0x0C, 0x3C, 0x68, 0xDF, 0x75, 0x18, 0xA6, /* ..<h.u.. */
13930 /* 0708 */ 0xEF, 0xD0, 0xF0, 0x4F, 0x4D, 0xCF, 0x4D, 0x0F, /* ...OM.M. */
13931 /* 0710 */ 0x4E, 0x0F, 0xCD, 0x3E, 0x48, 0xF9, 0x70, 0xF0, /* N..>H.p. */
13932 /* 0718 */ 0xFC, 0xF4, 0xFF, 0x8F, 0xF1, 0x5E, 0xE7, 0x9B, /* .....^.. */
13933 /* 0720 */ 0xD4, 0x6B, 0x94, 0x2F, 0x30, 0xC7, 0x10, 0x31, /* .k./0..1 */
13934 /* 0728 */ 0xCA, 0xCB, 0xB4, 0x21, 0xE2, 0xF9, 0xD4, 0xE4, /* ...!.... */
13935 /* 0730 */ 0xB3, 0x42, 0xDC, 0x10, 0x0F, 0xD1, 0x46, 0x88, /* .B....F. */
13936 /* 0738 */ 0xFA, 0x3C, 0xED, 0x09, 0xBD, 0x46, 0x81, 0x57, /* .<...F.W */
13937 /* 0740 */ 0xD0, 0x35, 0x0A, 0xA0, 0xC9, 0xFD, 0x08, 0x77, /* .5.....w */
13938 /* 0748 */ 0x8D, 0x02, 0xCB, 0xBD, 0x81, 0x9D, 0x87, 0xF8, /* ........ */
13939 /* 0750 */ 0x95, 0xC8, 0xD7, 0x06, 0x18, 0xF7, 0x28, 0x38, /* ......(8 */
13940 /* 0758 */ 0xFF, 0xFF, 0x7B, 0x14, 0x60, 0x23, 0xCC, 0x3D, /* ..{.`#.= */
13941 /* 0760 */ 0x8A, 0x06, 0xB9, 0x47, 0xA1, 0x4E, 0x26, 0xBE, /* ...G.N&. */
13942 /* 0768 */ 0xD4, 0x79, 0xA2, 0xE0, 0x08, 0x7F, 0x91, 0x42, /* .y.....B */
13943 /* 0770 */ 0xC5, 0x26, 0x51, 0xE8, 0xC3, 0x10, 0x2A, 0xE6, /* .&Q...*. */
13944 /* 0778 */ 0x61, 0x84, 0x82, 0x18, 0xD0, 0x19, 0x4E, 0x14, /* a.....N. */
13945 /* 0780 */ 0x68, 0x15, 0x27, 0x0A, 0x72, 0x8B, 0xF1, 0xA4, /* h.'.r... */
13946 /* 0788 */ 0x1E, 0xA3, 0x00, 0x5F, 0xCB, 0xF4, 0x50, 0x79, /* ..._..Py */
13947 /* 0790 */ 0xE4, 0xA1, 0x52, 0x10, 0x0F, 0xD5, 0x71, 0x86, /* ..R...q. */
13948 /* 0798 */ 0x8A, 0x9E, 0xA4, 0xE7, 0x8F, 0xF9, 0xFF, 0x1F, /* ........ */
13949 /* 07A0 */ 0x1C, 0xB0, 0x07, 0x29, 0x80, 0x17, 0x0A, 0x6D, /* ...)...m */
13950 /* 07A8 */ 0xFA, 0xD4, 0x68, 0xD4, 0xAA, 0x41, 0x99, 0x1A, /* ..h..A.. */
13951 /* 07B0 */ 0x65, 0x1A, 0xD4, 0xEA, 0x53, 0xA9, 0x31, 0x63, /* e...S.1c */
13952 /* 07B8 */ 0xE7, 0x50, 0x4B, 0x3B, 0x4B, 0x50, 0x31, 0x8B, /* .PK;KP1. */
13953 /* 07C0 */ 0xD1, 0x68, 0x1C, 0x05, 0x84, 0xCA, 0xFE, 0x9B, /* .h...... */
13954 /* 07C8 */ 0x0B, 0xC4, 0x21, 0x9F, 0x3A, 0x02, 0x74, 0xB0, /* ..!.:.t. */
13955 /* 07D0 */ 0x17, 0x95, 0x80, 0x2C, 0x6B, 0x6D, 0x02, 0x71, /* ...,km.q */
13956 /* 07D8 */ 0x7C, 0x13, 0x10, 0x8D, 0x80, 0x48, 0xCB, 0x63, /* |....H.c */
13957 /* 07E0 */ 0x42, 0x40, 0xCE, 0x0D, 0x22, 0x20, 0xAB, 0x58, /* B@.." .X */
13958 /* 07E8 */ 0x93, 0x80, 0xAC, 0xF9, 0x01, 0x23, 0x70, 0xEB, /* .....#p. */
13959 /* 07F0 */ 0xD4, 0x01, 0xC4, 0x52, 0x82, 0xD0, 0x44, 0x0B, /* ...R..D. */
13960 /* 07F8 */ 0x17, 0xA8, 0xE3, 0x81, 0x68, 0x30, 0x84, 0x46, /* ....h0.F */
13961 /* 0800 */ 0x40, 0x0E, 0x46, 0x21, 0x20, 0xCB, 0xF8, 0x74, /* @.F! ..t */
13962 /* 0808 */ 0x0B, 0xDC, 0x02, 0xAC, 0x00, 0x31, 0xF9, 0x20, /* .....1. */
13963 /* 0810 */ 0x54, 0xB0, 0x17, 0x50, 0xA6, 0x1E, 0x44, 0x40, /* T..P..D@ */
13964 /* 0818 */ 0x56, 0xBA, 0x56, 0x01, 0x59, 0x37, 0x88, 0x80, /* V.V.Y7.. */
13965 /* 0820 */ 0xFE, 0xFF, 0x2F, 0x83, 0x32, 0x03, 0xCE, 0x32, /* ../.2..2 */
13966 /* 0828 */ 0xBA, 0x01, 0x62, 0x0A, 0x1F, 0x0A, 0x02, 0xB1, /* ..b..... */
13967 /* 0830 */ 0x26, 0x3D, 0xA0, 0x4C, 0x20, 0x88, 0xAE, 0x1C, /* &=.L ... */
13968 /* 0838 */ 0xC4, 0x0F, 0x10, 0x93, 0x06, 0x22, 0x20, 0xC7, /* ....." . */
13969 /* 0840 */ 0x39, 0x98, 0x08, 0xDC, 0x71, 0x14, 0x01, 0x52, /* 9...q..R */
13970 /* 0848 */ 0x47, 0xC3, 0xA5, 0x20, 0x54, 0xFC, 0xF3, 0x44, /* G.. T..D */
13971 /* 0850 */ 0x20, 0x16, 0x64, 0x09, 0x8C, 0x82, 0xD0, 0x08, /* .d..... */
13972 /* 0858 */ 0x9A, 0x40, 0x98, 0x3C, 0x4F, 0x20, 0x2C, 0xD4, /* .@.<O ,. */
13973 /* 0860 */ 0x9F, 0x5C, 0xA7, 0x15, 0xA2, 0x6A, 0x88, 0xD4, /* .\...j.. */
13974 /* 0868 */ 0x15, 0x08, 0x0B, 0xFC, 0x30, 0xD0, 0x60, 0x9C, /* ....0.`. */
13975 /* 0870 */ 0x1E, 0x44, 0x40, 0x4E, 0xFA, 0xA7, 0x0A, 0x44, /* .D@N...D */
13976 /* 0878 */ 0x72, 0x83, 0x08, 0xC8, 0xF9, 0x9F, 0x22, 0x02, /* r.....". */
13977 /* 0880 */ 0x77, 0xEA, 0xD7, 0x84, 0x86, 0x4F, 0xBE, 0x58, /* w....O.X */
13978 /* 0888 */ 0x41, 0x88, 0xB8, 0x87, 0x55, 0x50, 0xA2, 0x14, /* A...UP.. */
13979 /* 0890 */ 0x44, 0x40, 0x56, 0xF6, 0xB4, 0x12, 0x90, 0x75, /* D@V....u */
13980 /* 0898 */ 0x82, 0x08, 0xC8, 0xFF, 0x7F /* ..... */
13981 })
13982 }
13983
13984 Device (WMI2)
13985 {
13986 Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */) // _HID: Hardware ID
13987 Name (_UID, 0x02) // _UID: Unique ID
13988 Name (_WDG, Buffer (0x64)
13989 {
13990 /* 0000 */ 0xF1, 0x24, 0xB4, 0xFC, 0x5A, 0x07, 0x0E, 0x4E, /* .$..Z..N */
13991 /* 0008 */ 0xBF, 0xC4, 0x62, 0xF3, 0xE7, 0x17, 0x71, 0xFA, /* ..b...q. */
13992 /* 0010 */ 0x41, 0x37, 0x01, 0x01, 0xE3, 0x5E, 0xBE, 0xE2, /* A7...^.. */
13993 /* 0018 */ 0xDA, 0x42, 0xDB, 0x49, 0x83, 0x78, 0x1F, 0x52, /* .B.I.x.R */
13994 /* 0020 */ 0x47, 0x38, 0x82, 0x02, 0x41, 0x38, 0x01, 0x02, /* G8..A8.. */
13995 /* 0028 */ 0x9A, 0x01, 0x30, 0x74, 0xE9, 0xDC, 0x48, 0x45, /* ..0t..HE */
13996 /* 0030 */ 0xBA, 0xB0, 0x9F, 0xDE, 0x09, 0x35, 0xCA, 0xFF, /* .....5.. */
13997 /* 0038 */ 0x41, 0x39, 0x0A, 0x05, 0x03, 0x70, 0xF4, 0x7F, /* A9...p.. */
13998 /* 0040 */ 0x6C, 0x3B, 0x5E, 0x4E, 0xA2, 0x27, 0xE9, 0x79, /* l;^N.'.y */
13999 /* 0048 */ 0x82, 0x4A, 0x85, 0xD1, 0x41, 0x41, 0x01, 0x06, /* .J..AA.. */
14000 /* 0050 */ 0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11, /* !...f... */
14001 /* 0058 */ 0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, /* ......). */
14002 /* 0060 */ 0x42, 0x42, 0x01, 0x00 /* BB.. */
14003 })
14004 Name (PREL, Buffer (0x08)
14005 {
14006 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
14007 })
14008 Method (WQA7, 1, NotSerialized)
14009 {
14010 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
14011 \WMIS (0x07, 0x00)
14012 Index (PREL, 0x00) = \WLS0
14013 Index (PREL, 0x01) = \WLS1
14014 Index (PREL, 0x02) = \WLS2
14015 Index (PREL, 0x03) = \WLS3
14016 Index (PREL, 0x04) = \WLS4
14017 Index (PREL, 0x05) = \WLS5
14018 Index (PREL, 0x06) = \WLS6
14019 Index (PREL, 0x07) = \WLS7
14020 Release (\_SB.WMI1.MWMI)
14021 Return (PREL) /* \_SB_.WMI2.PREL */
14022 }
14023
14024 Method (WMA8, 3, NotSerialized)
14025 {
14026 CreateByteField (Arg2, 0x00, PRE0)
14027 CreateByteField (Arg2, 0x01, PRE1)
14028 CreateByteField (Arg2, 0x02, PRE2)
14029 CreateByteField (Arg2, 0x03, PRE3)
14030 CreateByteField (Arg2, 0x04, PRE4)
14031 CreateByteField (Arg2, 0x05, PRE5)
14032 CreateByteField (Arg2, 0x06, PRE6)
14033 CreateByteField (Arg2, 0x07, PRE7)
14034 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
14035 \WLS0 = PRE0 /* \_SB_.WMI2.WMA8.PRE0 */
14036 \WLS1 = PRE1 /* \_SB_.WMI2.WMA8.PRE1 */
14037 \WLS2 = PRE2 /* \_SB_.WMI2.WMA8.PRE2 */
14038 \WLS3 = PRE3 /* \_SB_.WMI2.WMA8.PRE3 */
14039 \WLS4 = PRE4 /* \_SB_.WMI2.WMA8.PRE4 */
14040 \WLS5 = PRE5 /* \_SB_.WMI2.WMA8.PRE5 */
14041 \WLS6 = PRE6 /* \_SB_.WMI2.WMA8.PRE6 */
14042 \WLS7 = PRE7 /* \_SB_.WMI2.WMA8.PRE7 */
14043 \WMIS (0x08, 0x00)
14044 Release (\_SB.WMI1.MWMI)
14045 }
14046
14047 Name (ITEM, Package (0x07)
14048 {
14049 Package (0x02)
14050 {
14051 0x00,
14052 "InhibitEnteringThinkPadSetup"
14053 },
14054
14055 Package (0x02)
14056 {
14057 0x00,
14058 "MTMSerialConcatenation"
14059 },
14060
14061 Package (0x02)
14062 {
14063 0x00,
14064 "SwapProductName"
14065 },
14066
14067 Package (0x02)
14068 {
14069 0x00,
14070 "ComputraceMsgDisable"
14071 },
14072
14073 Package (0x02)
14074 {
14075 0x00,
14076 "CpuDebugEnable"
14077 },
14078
14079 Package (0x02)
14080 {
14081 0x00,
14082 "NffPermanentDisable"
14083 },
14084
14085 Package (0x02)
14086 {
14087 0x00,
14088 "PasswordAfterBootDeviceList"
14089 }
14090 })
14091 Name (VSEL, Package (0x02)
14092 {
14093 Package (0x02)
14094 {
14095 "Disable",
14096 "Enable"
14097 },
14098
14099 Package (0x02)
14100 {
14101 "Off",
14102 "On"
14103 }
14104 })
14105 Method (WQA9, 1, NotSerialized)
14106 {
14107 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
14108 If ((\WMIS (0x09, Arg0) != 0x00))
14109 {
14110 Release (\_SB.WMI1.MWMI)
14111 Return ("")
14112 }
14113
14114 Local0 = DerefOf (Index (ITEM, \WITM))
14115 Local1 = DerefOf (Index (Local0, 0x00))
14116 Local2 = DerefOf (Index (Local0, 0x01))
14117 Concatenate (Local2, ",", Local6)
14118 Local3 = DerefOf (Index (VSEL, Local1))
14119 Concatenate (Local6, DerefOf (Index (Local3, \WSEL)), Local7)
14120 Release (\_SB.WMI1.MWMI)
14121 Return (Local7)
14122 }
14123
14124 Method (WMAA, 3, NotSerialized)
14125 {
14126 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
14127 If ((SizeOf (Arg2) == 0x00))
14128 {
14129 Local0 = 0x02
14130 }
14131 Else
14132 {
14133 Local0 = \_SB.WMI1.CARG (Arg2)
14134 If ((Local0 == 0x00))
14135 {
14136 Local0 = \_SB.WMI1.WSET (ITEM, VSEL)
14137 If ((Local0 == 0x00))
14138 {
14139 Local0 = \WMIS (0x0A, 0x00)
14140 }
14141 }
14142 }
14143
14144 Release (\_SB.WMI1.MWMI)
14145 Return (DerefOf (Index (\_SB.WMI1.RETN, Local0)))
14146 }
14147
14148 Name (WQBB, Buffer (0x0538)
14149 {
14150 /* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, /* FOMB.... */
14151 /* 0008 */ 0x28, 0x05, 0x00, 0x00, 0xAE, 0x18, 0x00, 0x00, /* (....... */
14152 /* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, /* DS...}.T */
14153 /* 0018 */ 0x98, 0xDE, 0x8B, 0x00, 0x01, 0x06, 0x18, 0x42, /* .......B */
14154 /* 0020 */ 0x10, 0x0D, 0x10, 0x8A, 0x0D, 0x21, 0x02, 0x0B, /* .....!.. */
14155 /* 0028 */ 0x83, 0x50, 0x50, 0x18, 0x14, 0xA0, 0x45, 0x41, /* .PP...EA */
14156 /* 0030 */ 0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02, /* .....!.. */
14157 /* 0038 */ 0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5, /* ..p.@... */
14158 /* 0040 */ 0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F, /* (r.".... */
14159 /* 0048 */ 0x31, 0x10, 0x88, 0x14, 0x40, 0x48, 0x28, 0x84, /* 1...@H(. */
14160 /* 0050 */ 0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F, /* D.S!p.._ */
14161 /* 0058 */ 0x01, 0x08, 0x1D, 0x0A, 0x90, 0x29, 0xC0, 0xA0, /* .....).. */
14162 /* 0060 */ 0x00, 0xA7, 0x08, 0x22, 0x88, 0xD2, 0xB2, 0x00, /* ...".... */
14163 /* 0068 */ 0xDD, 0x02, 0x7C, 0x0B, 0xD0, 0x0E, 0x21, 0xB4, /* ..|...!. */
14164 /* 0070 */ 0xC8, 0x95, 0x0A, 0xB0, 0x08, 0x25, 0x9F, 0x80, /* .....%.. */
14165 /* 0078 */ 0x92, 0x88, 0x22, 0xD9, 0x78, 0xB2, 0x8D, 0x48, /* ..".x..H */
14166 /* 0080 */ 0xE6, 0x61, 0x91, 0x83, 0x40, 0x89, 0x19, 0x04, /* .a..@... */
14167 /* 0088 */ 0x4A, 0x27, 0xAE, 0x6C, 0xE2, 0x6A, 0x10, 0x07, /* J'.l.j.. */
14168 /* 0090 */ 0x10, 0xE5, 0x3C, 0xA2, 0x24, 0x38, 0xAA, 0x83, /* ..<.$8.. */
14169 /* 0098 */ 0x88, 0x10, 0xBB, 0x5C, 0x01, 0x92, 0x07, 0x20, /* ...\... */
14170 /* 00A0 */ 0xCD, 0x13, 0x93, 0xF5, 0x39, 0x68, 0x64, 0x6C, /* ....9hdl */
14171 /* 00A8 */ 0x04, 0x3C, 0x98, 0x04, 0x10, 0x16, 0x65, 0x9D, /* .<....e. */
14172 /* 00B0 */ 0x8A, 0x02, 0x83, 0xF2, 0x00, 0x22, 0x39, 0x63, /* ....."9c */
14173 /* 00B8 */ 0x45, 0x01, 0xDB, 0xEB, 0x44, 0x64, 0x72, 0xA0, /* E...Ddr. */
14174 /* 00C0 */ 0x54, 0x12, 0x1C, 0x6A, 0x98, 0x9E, 0x5A, 0xF3, /* T..j..Z. */
14175 /* 00C8 */ 0x13, 0xD3, 0x44, 0x4E, 0xAD, 0xE9, 0x21, 0x0B, /* ..DN..!. */
14176 /* 00D0 */ 0x92, 0x49, 0x1B, 0x0A, 0x6A, 0xEC, 0x9E, 0xD6, /* .I..j... */
14177 /* 00D8 */ 0x49, 0x79, 0xA6, 0x11, 0x0F, 0xCA, 0x30, 0x09, /* Iy....0. */
14178 /* 00E0 */ 0x3C, 0x0A, 0x86, 0xC6, 0x09, 0xCA, 0x82, 0x90, /* <....... */
14179 /* 00E8 */ 0x83, 0x81, 0xA2, 0x00, 0x4F, 0xC2, 0x73, 0x2C, /* ....O.s, */
14180 /* 00F0 */ 0x5E, 0x80, 0xF0, 0x11, 0x93, 0xB3, 0x40, 0x8C, /* ^.....@. */
14181 /* 00F8 */ 0x04, 0x3E, 0x13, 0x78, 0xE4, 0xC7, 0x8C, 0x1D, /* .>.x.... */
14182 /* 0100 */ 0x51, 0xB8, 0x80, 0xE7, 0x73, 0x0C, 0x91, 0xE3, /* Q...s... */
14183 /* 0108 */ 0x1E, 0x6A, 0x8C, 0xA3, 0x88, 0x7C, 0x38, 0x0C, /* .j...|8. */
14184 /* 0110 */ 0xED, 0x74, 0xE3, 0x1C, 0xD8, 0xE9, 0x14, 0x04, /* .t...... */
14185 /* 0118 */ 0x2E, 0x90, 0x60, 0x3D, 0xCF, 0x59, 0x20, 0xFF, /* ..`=.Y . */
14186 /* 0120 */ 0xFF, 0x18, 0x07, 0xC1, 0xF0, 0x8E, 0x01, 0x23, /* .......# */
14187 /* 0128 */ 0x03, 0x42, 0x1E, 0x05, 0x58, 0x1D, 0x96, 0x26, /* .B..X..& */
14188 /* 0130 */ 0x91, 0xC0, 0xEE, 0x05, 0x68, 0xBC, 0x04, 0x48, /* ....h..H */
14189 /* 0138 */ 0xE1, 0x20, 0xA5, 0x0C, 0x42, 0x30, 0x8D, 0x09, /* . ..B0.. */
14190 /* 0140 */ 0xB0, 0x75, 0x68, 0x90, 0x37, 0x01, 0xD6, 0xAE, /* .uh.7... */
14191 /* 0148 */ 0x02, 0x42, 0x89, 0x74, 0x02, 0x71, 0x42, 0x44, /* .B.t.qBD */
14192 /* 0150 */ 0x89, 0x18, 0xD4, 0x40, 0x51, 0x6A, 0x43, 0x15, /* ...@QjC. */
14193 /* 0158 */ 0x4C, 0x67, 0xC3, 0x13, 0x66, 0xDC, 0x10, 0x31, /* Lg..f..1 */
14194 /* 0160 */ 0x0C, 0x14, 0xB7, 0xFD, 0x41, 0x90, 0x61, 0xE3, /* ....A.a. */
14195 /* 0168 */ 0xC6, 0xEF, 0x41, 0x9D, 0xD6, 0xD9, 0x1D, 0xD3, /* ..A..... */
14196 /* 0170 */ 0xAB, 0x82, 0x09, 0x3C, 0xE9, 0x37, 0x84, 0xA7, /* ...<.7.. */
14197 /* 0178 */ 0x83, 0xA3, 0x38, 0xDA, 0xA8, 0x31, 0x9A, 0x23, /* ..8..1.# */
14198 /* 0180 */ 0x65, 0xAB, 0xD6, 0xB9, 0xC2, 0x91, 0xE0, 0x51, /* e......Q */
14199 /* 0188 */ 0xE7, 0x05, 0x9F, 0x0C, 0x3C, 0xB4, 0xC3, 0xF6, /* ....<... */
14200 /* 0190 */ 0x60, 0xCF, 0xD2, 0x43, 0x38, 0x82, 0x67, 0x86, /* `..C8.g. */
14201 /* 0198 */ 0x47, 0x02, 0x8F, 0x81, 0xDD, 0x15, 0x7C, 0x08, /* G.....|. */
14202 /* 01A0 */ 0xF0, 0x19, 0x01, 0xEF, 0x1A, 0x50, 0x97, 0x83, /* .....P.. */
14203 /* 01A8 */ 0x47, 0x03, 0x36, 0xE9, 0x70, 0x98, 0xF1, 0x7A, /* G.6.p..z */
14204 /* 01B0 */ 0xEE, 0x9E, 0xBA, 0xCF, 0x18, 0xFC, 0xBC, 0xE1, /* ........ */
14205 /* 01B8 */ 0xC1, 0xE1, 0x46, 0x7A, 0x32, 0x47, 0x56, 0xAA, /* ..Fz2GV. */
14206 /* 01C0 */ 0x00, 0xB3, 0xD7, 0x00, 0x1D, 0x25, 0x7C, 0xE0, /* .....%|. */
14207 /* 01C8 */ 0x60, 0x77, 0x81, 0xA7, 0x00, 0x13, 0x58, 0xFE, /* `w....X. */
14208 /* 01D0 */ 0x20, 0x50, 0x23, 0x33, 0xB4, 0xC7, 0xFB, 0xDE, /* P#3.... */
14209 /* 01D8 */ 0x61, 0xC8, 0x27, 0x85, 0xC3, 0x62, 0x62, 0x0F, /* a.'..bb. */
14210 /* 01E0 */ 0x1E, 0x74, 0x3C, 0xE0, 0xBF, 0x8F, 0x3C, 0x69, /* .t<...<i */
14211 /* 01E8 */ 0x78, 0xFA, 0x9E, 0xAF, 0x09, 0x06, 0x86, 0x90, /* x....... */
14212 /* 01F0 */ 0x95, 0xF1, 0xA0, 0x06, 0x62, 0xE8, 0x57, 0x85, /* ....b.W. */
14213 /* 01F8 */ 0xC3, 0x38, 0x0D, 0x9F, 0x40, 0x7C, 0x0E, 0x08, /* .8..@|.. */
14214 /* 0200 */ 0x12, 0xE3, 0x98, 0x3C, 0x38, 0xFF, 0xFF, 0x09, /* ...<8... */
14215 /* 0208 */ 0x1C, 0x6B, 0xE4, 0xF4, 0x9C, 0xE2, 0xF3, 0x04, /* .k...... */
14216 /* 0210 */ 0x3F, 0x5C, 0xF8, 0x3C, 0xC1, 0x4E, 0x0C, 0xA7, /* ?\.<.N.. */
14217 /* 0218 */ 0xF1, 0x1C, 0xE0, 0xE1, 0x9C, 0x95, 0x8F, 0x13, /* ........ */
14218 /* 0220 */ 0xC0, 0x02, 0xE2, 0x75, 0x82, 0x0F, 0x14, 0x3E, /* ...u...> */
14219 /* 0228 */ 0xEC, 0xA1, 0x79, 0x14, 0x2F, 0x11, 0x6F, 0x0F, /* ..y./.o. */
14220 /* 0230 */ 0x26, 0x88, 0xF6, 0x10, 0x03, 0xC6, 0x19, 0xE1, /* &....... */
14221 /* 0238 */ 0xCE, 0x1B, 0x70, 0x4E, 0x31, 0xC0, 0x03, 0xEA, /* ..pN1... */
14222 /* 0240 */ 0x10, 0x30, 0x87, 0x09, 0x0F, 0x81, 0x0F, 0xE0, /* .0...... */
14223 /* 0248 */ 0x19, 0xE4, 0x1C, 0x7D, 0xCC, 0x39, 0x33, 0xDC, /* ...}.93. */
14224 /* 0250 */ 0x71, 0x07, 0x6C, 0xC3, 0xE0, 0x91, 0x2D, 0x80, /* q.l...-. */
14225 /* 0258 */ 0xB0, 0x38, 0x4F, 0x02, 0x05, 0x7C, 0x1B, 0x50, /* .8O..|.P */
14226 /* 0260 */ 0x18, 0x1F, 0x6E, 0xC0, 0xFB, 0xFF, 0x3F, 0xDC, /* ..n...?. */
14227 /* 0268 */ 0x00, 0xD7, 0xF3, 0x01, 0xEE, 0xF8, 0x00, 0xF7, /* ........ */
14228 /* 0270 */ 0x62, 0xC1, 0x0E, 0x0F, 0x8F, 0x37, 0xC0, 0x60, /* b....7.` */
14229 /* 0278 */ 0x48, 0x8F, 0x34, 0x6F, 0x35, 0x31, 0x5E, 0x6D, /* H.4o51^m */
14230 /* 0280 */ 0x42, 0x44, 0x78, 0xA8, 0x79, 0xB7, 0x31, 0x52, /* BDx.y.1R */
14231 /* 0288 */ 0xBC, 0xC7, 0x1B, 0x76, 0x8D, 0x39, 0x8B, 0x07, /* ...v.9.. */
14232 /* 0290 */ 0x90, 0x28, 0xC5, 0xA1, 0xE9, 0x62, 0x13, 0x23, /* .(...b.# */
14233 /* 0298 */ 0xCA, 0x9B, 0x8D, 0x61, 0xDF, 0x74, 0x0C, 0x14, /* ...a.t.. */
14234 /* 02A0 */ 0x2A, 0x52, 0x84, 0x30, 0x2F, 0x16, 0x21, 0x1E, /* *R.0/.!. */
14235 /* 02A8 */ 0x6F, 0xC0, 0x2C, 0xE9, 0xA5, 0xA2, 0xCF, 0x81, /* o.,..... */
14236 /* 02B0 */ 0x8F, 0x37, 0x80, 0x97, 0xFF, 0xFF, 0xF1, 0x06, /* .7...... */
14237 /* 02B8 */ 0xF0, 0x30, 0x0C, 0x1F, 0x53, 0xC0, 0x76, 0x73, /* .0..S.vs */
14238 /* 02C0 */ 0x60, 0xF7, 0x14, 0xF8, 0xE7, 0x14, 0xC0, 0x91, /* `....... */
14239 /* 02C8 */ 0x90, 0x47, 0x80, 0x0E, 0x1E, 0x16, 0x01, 0x22, /* .G....." */
14240 /* 02D0 */ 0x1B, 0xCF, 0x00, 0x9F, 0x89, 0xA8, 0x40, 0x2A, /* ......@* */
14241 /* 02D8 */ 0xCD, 0x14, 0x2C, 0xE3, 0x14, 0xAC, 0x4E, 0x88, /* ..,...N. */
14242 /* 02E0 */ 0x5C, 0x06, 0x85, 0x44, 0x40, 0x68, 0x64, 0x86, /* \..D@hd. */
14243 /* 02E8 */ 0xF3, 0x21, 0xD1, 0x60, 0x06, 0xF1, 0xF9, 0xC0, /* .!.`.... */
14244 /* 02F0 */ 0x67, 0x0A, 0x9F, 0x9C, 0xF8, 0xFF, 0xFF, 0xE4, /* g....... */
14245 /* 02F8 */ 0x04, 0x9E, 0x83, 0xC9, 0x43, 0x05, 0x2C, 0x44, /* ....C.,D */
14246 /* 0300 */ 0x9F, 0x16, 0x38, 0x9C, 0xCF, 0x2C, 0x1C, 0xCE, /* ..8..,.. */
14247 /* 0308 */ 0x47, 0x12, 0x7E, 0x80, 0xE4, 0x47, 0x25, 0x70, /* G.~..G%p */
14248 /* 0310 */ 0x09, 0x3C, 0x34, 0x80, 0x02, 0xC8, 0xF7, 0x03, /* .<4..... */
14249 /* 0318 */ 0x9F, 0x03, 0x9E, 0x11, 0xD8, 0x1C, 0x1E, 0x09, /* ........ */
14250 /* 0320 */ 0x7C, 0x20, 0x60, 0xF0, 0x3C, 0xDA, 0xA8, 0xE8, /* | `.<... */
14251 /* 0328 */ 0xD1, 0xC6, 0xC3, 0xE3, 0x47, 0x06, 0xCF, 0xE7, /* ....G... */
14252 /* 0330 */ 0x81, 0xE0, 0x28, 0x1F, 0x09, 0x70, 0x18, 0xEF, /* ..(..p.. */
14253 /* 0338 */ 0x17, 0x1E, 0xA2, 0x4F, 0x39, 0xB0, 0x26, 0x72, /* ...O9.&r */
14254 /* 0340 */ 0xD4, 0x16, 0x7D, 0x22, 0x10, 0xE8, 0x33, 0x17, /* ..}"..3. */
14255 /* 0348 */ 0xE6, 0x94, 0x03, 0x9C, 0x82, 0x8F, 0x1E, 0x15, /* ........ */
14256 /* 0350 */ 0xF5, 0x40, 0x0A, 0xDA, 0x93, 0x82, 0xCF, 0x0A, /* .@...... */
14257 /* 0358 */ 0x3E, 0x7C, 0xC1, 0xFF, 0xFF, 0x1F, 0xBE, 0xE0, /* >|...... */
14258 /* 0360 */ 0xCC, 0xEB, 0x65, 0xCD, 0x07, 0x8E, 0x38, 0x67, /* ..e...8g */
14259 /* 0368 */ 0x71, 0xBA, 0xEF, 0x16, 0xF8, 0x13, 0x29, 0x30, /* q.....)0 */
14260 /* 0370 */ 0x0B, 0x72, 0x22, 0x45, 0xC1, 0xF8, 0x44, 0x0A, /* .r"E..D. */
14261 /* 0378 */ 0xD8, 0xBC, 0x05, 0x60, 0xAF, 0x0B, 0x4F, 0x22, /* ...`..O" */
14262 /* 0380 */ 0x30, 0xCE, 0x11, 0xCF, 0x58, 0x30, 0x0F, 0x55, /* 0...X0.U */
14263 /* 0388 */ 0xA7, 0xF8, 0x52, 0xF5, 0xC6, 0x10, 0xE1, 0xC9, /* ..R..... */
14264 /* 0390 */ 0xEA, 0x35, 0xEA, 0x01, 0xCB, 0x60, 0x2F, 0x02, /* .5...`/. */
14265 /* 0398 */ 0x86, 0x79, 0xC5, 0xF2, 0xE9, 0x2A, 0xC4, 0x03, /* .y...*.. */
14266 /* 03A0 */ 0x96, 0xCF, 0x5A, 0xD1, 0x42, 0x84, 0x8C, 0x12, /* ..Z.B... */
14267 /* 03A8 */ 0xEC, 0x15, 0xEB, 0x55, 0xC6, 0x47, 0x2A, 0x83, /* ...U.G*. */
14268 /* 03B0 */ 0x07, 0x0C, 0x1B, 0x2D, 0x52, 0x84, 0x47, 0x2C, /* ...-R.G, */
14269 /* 03B8 */ 0xFC, 0xFF, 0xFF, 0x88, 0x05, 0x1E, 0x09, 0x07, /* ........ */
14270 /* 03C0 */ 0x52, 0x80, 0x2A, 0x03, 0xC7, 0x1D, 0x48, 0x81, /* R.*...H. */
14271 /* 03C8 */ 0xFD, 0x69, 0x02, 0x7F, 0xBD, 0xF0, 0x78, 0xB0, /* .i....x. */
14272 /* 03D0 */ 0xFF, 0xFF, 0x73, 0x00, 0xF8, 0x0E, 0x31, 0xC0, /* ..s...1. */
14273 /* 03D8 */ 0x60, 0xC0, 0x30, 0x0E, 0x31, 0xC0, 0x43, 0xF0, /* `.0.1.C. */
14274 /* 03E0 */ 0xC9, 0x0C, 0xF4, 0xC7, 0x1D, 0xF8, 0xE3, 0xE0, /* ........ */
14275 /* 03E8 */ 0x19, 0x9F, 0x1C, 0x26, 0x50, 0x98, 0x13, 0x29, /* ...&P..) */
14276 /* 03F0 */ 0x0A, 0xC6, 0x27, 0x52, 0xC0, 0xD9, 0xFF, 0xFF, /* ..'R.... */
14277 /* 03F8 */ 0x70, 0x05, 0x86, 0xE3, 0x0D, 0xF8, 0x6F, 0x33, /* p.....o3 */
14278 /* 0400 */ 0x3E, 0x84, 0xFA, 0x7C, 0xE3, 0x0B, 0xA9, 0x21, /* >..|...! */
14279 /* 0408 */ 0x5E, 0x6C, 0xDE, 0xD4, 0x5E, 0x09, 0x5E, 0xDF, /* ^l..^.^. */
14280 /* 0410 */ 0xD9, 0xB5, 0xE6, 0xF5, 0xDD, 0xA7, 0x82, 0x27, /* .......' */
14281 /* 0418 */ 0xD1, 0x08, 0x21, 0xA3, 0xBC, 0xE4, 0x18, 0x24, /* ..!....$ */
14282 /* 0420 */ 0xC4, 0xEB, 0xA8, 0x01, 0x83, 0x05, 0x89, 0x78, /* .......x */
14283 /* 0428 */ 0x0A, 0x4F, 0x3B, 0x8F, 0x37, 0xE0, 0x15, 0x75, /* .O;.7..u */
14284 /* 0430 */ 0x20, 0x05, 0xE8, 0xF1, 0xFF, 0x3F, 0x90, 0x02, /* ....?.. */
14285 /* 0438 */ 0x83, 0x7B, 0x0A, 0xEC, 0x73, 0x0A, 0xE0, 0x29, /* .{..s..) */
14286 /* 0440 */ 0xF9, 0x89, 0x94, 0xA6, 0x3E, 0x91, 0xA2, 0x15, /* ....>... */
14287 /* 0448 */ 0x01, 0x69, 0xAA, 0x60, 0x21, 0x98, 0xFE, 0x44, /* .i.`!..D */
14288 /* 0450 */ 0x4A, 0x0F, 0x06, 0xCE, 0x4D, 0xA2, 0xE4, 0x43, /* J...M..C */
14289 /* 0458 */ 0xA3, 0x70, 0xCE, 0x7A, 0x20, 0xA1, 0x20, 0x06, /* .p.z . . */
14290 /* 0460 */ 0x74, 0x90, 0x43, 0x05, 0xFA, 0xAC, 0xE2, 0x03, /* t.C..... */
14291 /* 0468 */ 0xC9, 0x81, 0x3C, 0x22, 0x7A, 0x58, 0x3E, 0x54, /* ..<"zX>T */
14292 /* 0470 */ 0xFA, 0xAE, 0xE2, 0x73, 0x88, 0x8F, 0x14, 0x1E, /* ...s.... */
14293 /* 0478 */ 0xBF, 0x0F, 0x0B, 0xFC, 0x3F, 0xE3, 0xE3, 0x28, /* ....?..( */
14294 /* 0480 */ 0x03, 0xAF, 0xE6, 0xBC, 0x82, 0x02, 0xF3, 0x69, /* .......i */
14295 /* 0488 */ 0x14, 0xA3, 0xEB, 0x3E, 0x01, 0x92, 0xFF, 0xFF, /* ...>.... */
14296 /* 0490 */ 0xFC, 0xB8, 0xBE, 0xC3, 0x28, 0xC8, 0xD1, 0x79, /* ....(..y */
14297 /* 0498 */ 0xF8, 0xC9, 0xA2, 0xE2, 0x4E, 0x96, 0x82, 0x78, /* ....N..x */
14298 /* 04A0 */ 0xB2, 0x8E, 0x32, 0x59, 0xF4, 0x4C, 0x7C, 0xBB, /* ..2Y.L|. */
14299 /* 04A8 */ 0xF0, 0x8C, 0xDE, 0xBB, 0x7C, 0x83, 0x65, 0x37, /* ....|.e7 */
14300 /* 04B0 */ 0x59, 0x78, 0x97, 0x81, 0x90, 0x8F, 0x06, 0xBE, /* Yx...... */
14301 /* 04B8 */ 0xC9, 0xC2, 0x1D, 0x8B, 0x2F, 0x23, 0xE0, 0xBB, /* ..../#.. */
14302 /* 04C0 */ 0xC9, 0x02, 0x5E, 0x47, 0xE3, 0xB3, 0x05, 0x3B, /* ..^G...; */
14303 /* 04C8 */ 0x85, 0xF8, 0xBA, 0x06, 0x4B, 0xA1, 0x4D, 0x9F, /* ....K.M. */
14304 /* 04D0 */ 0x1A, 0x8D, 0x5A, 0xFD, 0xFF, 0x1B, 0x94, 0xA9, /* ..Z..... */
14305 /* 04D8 */ 0x51, 0xA6, 0x41, 0xAD, 0x3E, 0x95, 0x1A, 0x33, /* Q.A.>..3 */
14306 /* 04E0 */ 0x76, 0xA1, 0xB0, 0xB8, 0x0B, 0x06, 0x95, 0xB4, /* v....... */
14307 /* 04E8 */ 0x2C, 0x8D, 0xCB, 0x81, 0x40, 0x68, 0x80, 0x5B, /* ,...@h.[ */
14308 /* 04F0 */ 0xA9, 0x40, 0x1C, 0xFA, 0x0B, 0xA4, 0x53, 0x02, /* .@....S. */
14309 /* 04F8 */ 0xF9, 0x6A, 0x09, 0xC8, 0x62, 0x57, 0x25, 0x10, /* .j..bW%. */
14310 /* 0500 */ 0xCB, 0x54, 0x01, 0xD1, 0xC8, 0xDD, 0xC2, 0x20, /* .T..... */
14311 /* 0508 */ 0x02, 0x72, 0xBC, 0x4F, 0x8D, 0x40, 0x1D, 0x49, /* .r.O.@.I */
14312 /* 0510 */ 0x07, 0x10, 0x13, 0xE4, 0x63, 0xAC, 0xF4, 0x25, /* ....c..% */
14313 /* 0518 */ 0x20, 0x10, 0xCB, 0xA6, 0x15, 0xA0, 0xE5, 0x3A, /* ......: */
14314 /* 0520 */ 0x01, 0x62, 0x61, 0x41, 0x68, 0xC0, 0x5F, 0xB5, /* .baAh._. */
14315 /* 0528 */ 0x86, 0xE0, 0xB4, 0x20, 0x02, 0x72, 0x32, 0x2D, /* ... .r2- */
14316 /* 0530 */ 0x40, 0x2C, 0x27, 0x88, 0x80, 0xFC, 0xFF, 0x07 /* @,'..... */
14317 })
14318 }
14319
14320 Device (WMI3)
14321 {
14322 Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */) // _HID: Hardware ID
14323 Name (_UID, 0x03) // _UID: Unique ID
14324 Name (_WDG, /**** Is ResourceTemplate, but EndTag not at buffer end ****/ Buffer (0x3C)
14325 {
14326 /* 0000 */ 0x79, 0x36, 0x4D, 0x8F, 0x9E, 0x74, 0x79, 0x44, /* y6M..tyD */
14327 /* 0008 */ 0x9B, 0x16, 0xC6, 0x26, 0x01, 0xFD, 0x25, 0xF0, /* ...&..%. */
14328 /* 0010 */ 0x41, 0x42, 0x01, 0x02, 0x69, 0xE8, 0xD2, 0x85, /* AB..i... */
14329 /* 0018 */ 0x5A, 0x36, 0xCE, 0x4A, 0xA4, 0xD3, 0xCD, 0x69, /* Z6.J...i */
14330 /* 0020 */ 0x2B, 0x16, 0x98, 0xA0, 0x41, 0x43, 0x01, 0x02, /* +...AC.. */
14331 /* 0028 */ 0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11, /* !...f... */
14332 /* 0030 */ 0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, /* ......). */
14333 /* 0038 */ 0x42, 0x43, 0x01, 0x00 /* BC.. */
14334 })
14335 Method (WMAB, 3, NotSerialized)
14336 {
14337 CreateByteField (Arg2, 0x00, ASS0)
14338 CreateWordField (Arg2, 0x01, ASS1)
14339 CreateByteField (Arg2, 0x03, ASS2)
14340 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
14341 \WASB = ASS0 /* \_SB_.WMI3.WMAB.ASS0 */
14342 \WASI = ASS1 /* \_SB_.WMI3.WMAB.ASS1 */
14343 \WASD = ASS2 /* \_SB_.WMI3.WMAB.ASS2 */
14344 \WMIS (0x0B, 0x00)
14345 Local0 = \WASS
14346 Release (\_SB.WMI1.MWMI)
14347 Return (Local0)
14348 }
14349
14350 Method (WMAC, 3, NotSerialized)
14351 {
14352 CreateByteField (Arg2, 0x00, ASS0)
14353 CreateWordField (Arg2, 0x01, ASS1)
14354 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
14355 \WASB = ASS0 /* \_SB_.WMI3.WMAC.ASS0 */
14356 \WASI = ASS1 /* \_SB_.WMI3.WMAC.ASS1 */
14357 \WMIS (0x0C, Arg1)
14358 Local0 = \WASS
14359 Release (\_SB.WMI1.MWMI)
14360 Return (Local0)
14361 }
14362
14363 Name (WQBC, Buffer (0x040A)
14364 {
14365 /* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, /* FOMB.... */
14366 /* 0008 */ 0xFA, 0x03, 0x00, 0x00, 0x32, 0x12, 0x00, 0x00, /* ....2... */
14367 /* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, /* DS...}.T */
14368 /* 0018 */ 0x98, 0xC3, 0x88, 0x00, 0x01, 0x06, 0x18, 0x42, /* .......B */
14369 /* 0020 */ 0x10, 0x07, 0x10, 0x8A, 0x0D, 0x21, 0x02, 0x0B, /* .....!.. */
14370 /* 0028 */ 0x83, 0x50, 0x50, 0x18, 0x14, 0xA0, 0x45, 0x41, /* .PP...EA */
14371 /* 0030 */ 0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02, /* .....!.. */
14372 /* 0038 */ 0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5, /* ..p.@... */
14373 /* 0040 */ 0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F, /* (r.".... */
14374 /* 0048 */ 0x31, 0x10, 0x88, 0x14, 0x40, 0x48, 0x28, 0x84, /* 1...@H(. */
14375 /* 0050 */ 0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F, /* D.S!p.._ */
14376 /* 0058 */ 0x01, 0x08, 0x1D, 0x0A, 0x90, 0x29, 0xC0, 0xA0, /* .....).. */
14377 /* 0060 */ 0x00, 0xA7, 0x08, 0x22, 0x88, 0xD2, 0xB2, 0x00, /* ...".... */
14378 /* 0068 */ 0xDD, 0x02, 0x7C, 0x0B, 0xD0, 0x0E, 0x21, 0xB4, /* ..|...!. */
14379 /* 0070 */ 0x58, 0x07, 0x11, 0x21, 0xD2, 0x31, 0x34, 0x29, /* X..!.14) */
14380 /* 0078 */ 0x40, 0xA2, 0x00, 0x8B, 0x02, 0x64, 0xC3, 0xC8, /* @....d.. */
14381 /* 0080 */ 0x36, 0x22, 0x99, 0x87, 0x45, 0x0E, 0x02, 0x25, /* 6"..E..% */
14382 /* 0088 */ 0x66, 0x10, 0x28, 0x9D, 0xE0, 0xB2, 0x89, 0xAB, /* f.(..... */
14383 /* 0090 */ 0x41, 0x9C, 0x4C, 0x94, 0xF3, 0x88, 0x92, 0xE0, /* A.L..... */
14384 /* 0098 */ 0xA8, 0x0E, 0x22, 0x42, 0xEC, 0x72, 0x05, 0x48, /* .."B.r.H */
14385 /* 00A0 */ 0x1E, 0x80, 0x34, 0x4F, 0x4C, 0xD6, 0xE7, 0xA0, /* ..4OL... */
14386 /* 00A8 */ 0x91, 0xB1, 0x11, 0xF0, 0x94, 0x1A, 0x40, 0x58, /* ......@X */
14387 /* 00B0 */ 0xA0, 0x75, 0x2A, 0xE0, 0x7A, 0x0D, 0x43, 0x3D, /* .u*.z.C= */
14388 /* 00B8 */ 0x80, 0x48, 0xCE, 0x58, 0x51, 0xC0, 0xF6, 0x3A, /* .H.XQ..: */
14389 /* 00C0 */ 0x11, 0x8D, 0xEA, 0x40, 0x99, 0x24, 0x38, 0xD4, /* ...@.$8. */
14390 /* 00C8 */ 0x30, 0x3D, 0xB5, 0xE6, 0x27, 0xA6, 0x89, 0x9C, /* 0=..'... */
14391 /* 00D0 */ 0x5A, 0xD3, 0x43, 0x16, 0x24, 0x93, 0x36, 0x14, /* Z.C.$.6. */
14392 /* 00D8 */ 0xD4, 0xD8, 0x3D, 0xAD, 0x93, 0xF2, 0x4C, 0x23, /* ..=...L# */
14393 /* 00E0 */ 0x1E, 0x94, 0x61, 0x12, 0x78, 0x14, 0x0C, 0x8D, /* ..a.x... */
14394 /* 00E8 */ 0x13, 0x94, 0x75, 0x22, 0xA0, 0x03, 0xE5, 0x80, /* ..u".... */
14395 /* 00F0 */ 0x27, 0xE1, 0x39, 0x16, 0x2F, 0x40, 0xF8, 0x88, /* '.9./@.. */
14396 /* 00F8 */ 0xC9, 0xB4, 0x4D, 0xE0, 0x33, 0x81, 0x87, 0x79, /* ..M.3..y */
14397 /* 0100 */ 0xCC, 0xD8, 0x11, 0x85, 0x0B, 0x78, 0x3E, 0xC7, /* .....x>. */
14398 /* 0108 */ 0x10, 0x39, 0xEE, 0xA1, 0xC6, 0x38, 0x8A, 0xC8, /* .9...8.. */
14399 /* 0110 */ 0x47, 0x60, 0x24, 0x03, 0xC5, 0x2B, 0x08, 0x89, /* G`$..+.. */
14400 /* 0118 */ 0x80, 0xF8, 0x76, 0x70, 0x70, 0x91, 0xFC, 0xFF, /* ..vpp... */
14401 /* 0120 */ 0x47, 0x89, 0x11, 0x2A, 0xC6, 0xDB, 0x00, 0x6E, /* G..*...n */
14402 /* 0128 */ 0x5E, 0x09, 0x8A, 0x1E, 0x07, 0x4A, 0x06, 0x84, /* ^....J.. */
14403 /* 0130 */ 0x3C, 0x0A, 0xB0, 0x7A, 0x28, 0x20, 0x04, 0x16, /* <..z( .. */
14404 /* 0138 */ 0x27, 0x40, 0xE3, 0x38, 0x05, 0xD3, 0x99, 0x00, /* '@.8.... */
14405 /* 0140 */ 0x6D, 0x02, 0xBC, 0x09, 0x30, 0x27, 0xC0, 0x16, /* m...0'.. */
14406 /* 0148 */ 0x86, 0x80, 0x82, 0x9C, 0x59, 0x94, 0x20, 0x11, /* ....Y. . */
14407 /* 0150 */ 0x42, 0x31, 0x88, 0x0A, 0x05, 0x18, 0x43, 0x14, /* B1....C. */
14408 /* 0158 */ 0xCA, 0x3B, 0x41, 0x8C, 0xCA, 0x20, 0x74, 0x82, /* .;A.. t. */
14409 /* 0160 */ 0x08, 0x14, 0x3D, 0x78, 0x98, 0xD6, 0x40, 0x74, /* ..=x..@t */
14410 /* 0168 */ 0x89, 0xF0, 0xC8, 0xB1, 0x47, 0x00, 0x9F, 0x19, /* ....G... */
14411 /* 0170 */ 0xCE, 0xE9, 0x04, 0x1F, 0x01, 0xDE, 0x16, 0x4C, /* .......L */
14412 /* 0178 */ 0xE0, 0x79, 0xBF, 0x24, 0x1C, 0x6A, 0xD8, 0x03, /* .y.$.j.. */
14413 /* 0180 */ 0x8E, 0x1A, 0xE3, 0x28, 0x12, 0x58, 0xD0, 0x33, /* ...(.X.3 */
14414 /* 0188 */ 0x42, 0x16, 0x40, 0x14, 0x09, 0x1E, 0x75, 0x64, /* B.@...ud */
14415 /* 0190 */ 0xF0, 0xE1, 0xC0, 0x23, 0x3B, 0x72, 0xCF, 0xF0, /* ...#;r.. */
14416 /* 0198 */ 0x04, 0x82, 0x1C, 0xC2, 0x11, 0x3C, 0x36, 0x3C, /* .....<6< */
14417 /* 01A0 */ 0x15, 0x78, 0x0C, 0xEC, 0xBA, 0xE0, 0x73, 0x80, /* .x....s. */
14418 /* 01A8 */ 0x8F, 0x09, 0x78, 0xD7, 0x80, 0x9A, 0xF3, 0xD3, /* ..x..... */
14419 /* 01B0 */ 0x01, 0x9B, 0x72, 0x38, 0xCC, 0x70, 0x3D, 0xFD, /* ..r8.p=. */
14420 /* 01B8 */ 0x70, 0x27, 0x70, 0xD2, 0x06, 0x64, 0xB3, 0xF3, /* p'p..d.. */
14421 /* 01C0 */ 0xE0, 0x70, 0xE3, 0x3C, 0x99, 0x23, 0x2B, 0x55, /* .p.<.#+U */
14422 /* 01C8 */ 0x80, 0xD9, 0x13, 0x82, 0x4E, 0x13, 0x3E, 0x73, /* ....N.>s */
14423 /* 01D0 */ 0xB0, 0xBB, 0xC0, 0xF9, 0xF4, 0x0C, 0x49, 0xE4, /* ......I. */
14424 /* 01D8 */ 0x0F, 0x02, 0x35, 0x32, 0x43, 0xFB, 0x2C, 0xF0, /* ..52C.,. */
14425 /* 01E0 */ 0xEA, 0x61, 0xC8, 0x87, 0x85, 0xC3, 0x62, 0x62, /* .a....bb */
14426 /* 01E8 */ 0xCF, 0x1E, 0x74, 0x3C, 0xE0, 0x3F, 0x25, 0x3C, /* ..t<.?%< */
14427 /* 01F0 */ 0x6C, 0x78, 0xFA, 0x9E, 0xAF, 0x09, 0xA2, 0x3D, /* lx.....= */
14428 /* 01F8 */ 0x8F, 0x80, 0xE1, 0xFF, 0x7F, 0x1E, 0x81, 0x39, /* .......9 */
14429 /* 0200 */ 0x9C, 0x07, 0x84, 0x27, 0x07, 0x76, 0x80, 0xC0, /* ...'.v.. */
14430 /* 0208 */ 0x1C, 0x48, 0x80, 0xC9, 0xF9, 0x02, 0x77, 0x28, /* .H....w( */
14431 /* 0210 */ 0xF0, 0x10, 0xF8, 0x00, 0x1E, 0x25, 0xCE, 0xD1, /* .....%.. */
14432 /* 0218 */ 0x4A, 0x67, 0x86, 0x3C, 0xB9, 0x80, 0x2D, 0xFB, /* Jg.<..-. */
14433 /* 0220 */ 0x1B, 0x40, 0x07, 0x0F, 0xE7, 0x06, 0x91, 0x8D, /* .@...... */
14434 /* 0228 */ 0x57, 0x80, 0x09, 0x74, 0x38, 0xB1, 0x1E, 0x20, /* W..t8.. */
14435 /* 0230 */ 0x4D, 0x14, 0x0C, 0x04, 0xD3, 0xD3, 0x6B, 0x00, /* M.....k. */
14436 /* 0238 */ 0x3E, 0x15, 0x38, 0x37, 0x89, 0x92, 0x0F, 0x8C, /* >.87.... */
14437 /* 0240 */ 0xC2, 0x39, 0xEB, 0x79, 0x84, 0x82, 0x18, 0xD0, /* .9.y.... */
14438 /* 0248 */ 0x41, 0x20, 0xE4, 0xE4, 0xA0, 0x80, 0x3A, 0xAA, /* A ....:. */
14439 /* 0250 */ 0xF8, 0x3C, 0x72, 0xAA, 0x0F, 0x3D, 0x9E, 0x94, /* .<r..=.. */
14440 /* 0258 */ 0x47, 0xE1, 0xAB, 0x8A, 0x0F, 0x21, 0x3E, 0x4F, /* G....!>O */
14441 /* 0260 */ 0x78, 0xF4, 0x3E, 0x29, 0xF0, 0xEF, 0x8C, 0xAF, /* x.>).... */
14442 /* 0268 */ 0x0E, 0x46, 0xB7, 0x9A, 0xE3, 0x0A, 0x0A, 0xCC, /* .F...... */
14443 /* 0270 */ 0x67, 0x11, 0x4E, 0x50, 0xD7, 0x6D, 0x01, 0xFA, /* g.NP.m.. */
14444 /* 0278 */ 0x29, 0xE0, 0x08, 0x3C, 0x94, 0x77, 0x92, 0xC7, /* )..<.w.. */
14445 /* 0280 */ 0x90, 0x04, 0xF5, 0x9D, 0x16, 0x40, 0x01, 0xE4, /* .....@.. */
14446 /* 0288 */ 0x9B, 0x81, 0x4F, 0x02, 0x21, 0xFE, 0xFF, 0x4F, /* ..O.!..O */
14447 /* 0290 */ 0x07, 0x1E, 0xC3, 0xC3, 0x80, 0xD1, 0x8C, 0xCE, /* ........ */
14448 /* 0298 */ 0xC3, 0x4F, 0x16, 0x15, 0x77, 0xB2, 0x14, 0xC4, /* .O..w... */
14449 /* 02A0 */ 0x93, 0x75, 0x94, 0xC9, 0xA2, 0x67, 0xE2, 0xAB, /* .u...g.. */
14450 /* 02A8 */ 0x85, 0x27, 0x74, 0x4A, 0x41, 0xCE, 0xD1, 0x13, /* .'tJA... */
14451 /* 02B0 */ 0xF6, 0x55, 0x04, 0xD6, 0xF9, 0x20, 0xE4, 0x8B, /* .U... .. */
14452 /* 02B8 */ 0x81, 0xA7, 0x61, 0x38, 0x4F, 0x96, 0xC3, 0x79, /* ..a8O..y */
14453 /* 02C0 */ 0xB2, 0x7C, 0x2C, 0xBE, 0x6A, 0xC0, 0x1F, 0x2D, /* .|,.j..- */
14454 /* 02C8 */ 0x96, 0xA0, 0xC0, 0xD9, 0x82, 0x1C, 0x1E, 0x13, /* ........ */
14455 /* 02D0 */ 0x6F, 0x54, 0xF4, 0x46, 0xE4, 0xE1, 0xF1, 0xCB, /* oT.F.... */
14456 /* 02D8 */ 0x81, 0xE7, 0xF3, 0x8C, 0x70, 0x94, 0x6F, 0x12, /* ....p.o. */
14457 /* 02E0 */ 0x38, 0x8C, 0xC7, 0x12, 0x0F, 0xD1, 0x97, 0x23, /* 8......# */
14458 /* 02E8 */ 0x58, 0x13, 0x39, 0x69, 0xDF, 0x16, 0x4E, 0x36, /* X.9i..N6 */
14459 /* 02F0 */ 0xE8, 0x4B, 0x10, 0xBB, 0x1C, 0x01, 0xBF, 0x88, /* .K...... */
14460 /* 02F8 */ 0x26, 0x86, 0xC1, 0x22, 0x2D, 0x45, 0x11, 0x17, /* &.."-E.. */
14461 /* 0300 */ 0x45, 0x61, 0x7C, 0xC5, 0x82, 0xFD, 0xFF, 0xBF, /* Ea|..... */
14462 /* 0308 */ 0x62, 0x01, 0x16, 0x04, 0x0F, 0x1B, 0x34, 0x87, /* b.....4. */
14463 /* 0310 */ 0x83, 0x97, 0x1E, 0x36, 0x6B, 0x38, 0x07, 0x99, /* ...6k8.. */
14464 /* 0318 */ 0xD3, 0xF1, 0x48, 0x4E, 0x1B, 0xC6, 0x1D, 0x0B, /* ..HN.... */
14465 /* 0320 */ 0xFE, 0x9D, 0xEA, 0xA9, 0xCA, 0xD3, 0x8A, 0xF2, /* ........ */
14466 /* 0328 */ 0x64, 0xF5, 0x7A, 0xE5, 0x63, 0x96, 0xA1, 0xCE, /* d.z.c... */
14467 /* 0330 */ 0xE0, 0x1D, 0xCB, 0xB7, 0x3C, 0x4F, 0x21, 0x4A, /* ....<O!J */
14468 /* 0338 */ 0x9C, 0x97, 0x2D, 0x76, 0xC7, 0x32, 0x48, 0x50, /* ..-v.2HP */
14469 /* 0340 */ 0x23, 0x3F, 0x68, 0x31, 0x94, 0xE0, 0xF1, 0xDE, /* #?h1.... */
14470 /* 0348 */ 0xB1, 0x00, 0x6F, 0xFF, 0xFF, 0x3B, 0x16, 0x60, /* ..o..;.` */
14471 /* 0350 */ 0xFC, 0x04, 0xC1, 0x09, 0x7C, 0xC7, 0x02, 0x1C, /* ....|... */
14472 /* 0358 */ 0xC5, 0x7E, 0x37, 0xE8, 0x4A, 0x45, 0xEE, 0x58, /* .~7.JE.X */
14473 /* 0360 */ 0x28, 0x0E, 0xAB, 0xB9, 0x63, 0x41, 0x9C, 0x28, /* (...cA.( */
14474 /* 0368 */ 0xE6, 0x8A, 0x05, 0x86, 0xFF, 0xFF, 0x15, 0x0B, /* ........ */
14475 /* 0370 */ 0xE0, 0x75, 0xC0, 0x2B, 0x16, 0x68, 0xFE, 0xFF, /* .u.+.h.. */
14476 /* 0378 */ 0x57, 0x2C, 0xF0, 0x5E, 0x8E, 0x80, 0xDF, 0x09, /* W,.^.... */
14477 /* 0380 */ 0xD1, 0x77, 0x0D, 0x7E, 0x9A, 0xB6, 0xA2, 0xBB, /* .w.~.... */
14478 /* 0388 */ 0x06, 0x94, 0x19, 0xBE, 0x07, 0xF9, 0xB0, 0x13, /* ........ */
14479 /* 0390 */ 0x2C, 0xD2, 0xA3, 0x8D, 0x6F, 0x49, 0xE1, 0x7C, /* ,...oI.| */
14480 /* 0398 */ 0xDB, 0x00, 0xD8, 0xF2, 0xFF, 0xBF, 0x6D, 0x00, /* ......m. */
14481 /* 03A0 */ 0x4C, 0x19, 0xBF, 0x6F, 0x1B, 0xC0, 0x4F, 0xA1, /* L..o..O. */
14482 /* 03A8 */ 0x4D, 0x9F, 0x1A, 0x8D, 0x5A, 0x35, 0x28, 0x53, /* M...Z5(S */
14483 /* 03B0 */ 0xA3, 0x4C, 0x83, 0x5A, 0x7D, 0x2A, 0x35, 0x66, /* .L.Z}*5f */
14484 /* 03B8 */ 0x4C, 0xC9, 0xC1, 0xCE, 0x77, 0x0C, 0x2A, 0x6C, /* L...w.*l */
14485 /* 03C0 */ 0x65, 0x1A, 0x9A, 0x63, 0x81, 0xD0, 0x10, 0xC7, /* e..c.... */
14486 /* 03C8 */ 0x26, 0x19, 0x01, 0x51, 0x22, 0x10, 0x01, 0x59, /* &..Q"..Y */
14487 /* 03D0 */ 0xFD, 0x6F, 0x42, 0x40, 0xCE, 0x02, 0x22, 0x20, /* .oB@.." */
14488 /* 03D8 */ 0x2B, 0x58, 0x9A, 0xC0, 0x9D, 0xFF, 0xD8, 0x28, /* +X.....( */
14489 /* 03E0 */ 0x40, 0xA2, 0x02, 0x84, 0x29, 0x7D, 0x93, 0x09, /* @...)}.. */
14490 /* 03E8 */ 0xD4, 0xB2, 0x41, 0x04, 0xF4, 0xFF, 0x3F, 0x42, /* ..A...?B */
14491 /* 03F0 */ 0xD9, 0x00, 0x62, 0x82, 0x41, 0x04, 0x64, 0x91, /* ..b.A.d. */
14492 /* 03F8 */ 0x3E, 0x80, 0x98, 0x62, 0x10, 0x01, 0x59, 0xDD, /* >..b..Y. */
14493 /* 0400 */ 0xA3, 0x40, 0x40, 0xD6, 0x0A, 0x22, 0x20, 0xFF, /* .@@.." . */
14494 /* 0408 */ 0xFF, 0x01 /* .. */
14495 })
14496 }
14497
14498 Scope (\_SB.PCI0.LPC.EC.HKEY)
14499 {
14500 Mutex (BFWM, 0x07)
14501 Method (MHCF, 1, NotSerialized)
14502 {
14503 Local0 = \BFWC (Arg0)
14504 Return (Local0)
14505 }
14506
14507 Method (MHPF, 1, NotSerialized)
14508 {
14509 Name (RETB, Buffer (0x25) {})
14510 Acquire (BFWM, 0xFFFF)
14511 If ((SizeOf (Arg0) <= 0x25))
14512 {
14513 \BFWB = Arg0
14514 If (\BFWP ())
14515 {
14516 \_SB.PCI0.LPC.EC.CHKS ()
14517 \BFWL ()
14518 }
14519
14520 RETB = \BFWB
14521 }
14522
14523 Release (BFWM)
14524 Return (RETB) /* \_SB_.PCI0.LPC_.EC__.HKEY.MHPF.RETB */
14525 }
14526
14527 Method (MHIF, 1, NotSerialized)
14528 {
14529 Name (RETB, Buffer (0x0A) {})
14530 Acquire (BFWM, 0xFFFF)
14531 \BFWG (Arg0)
14532 RETB = \BFWB
14533 Release (BFWM)
14534 Return (RETB) /* \_SB_.PCI0.LPC_.EC__.HKEY.MHIF.RETB */
14535 }
14536
14537 Method (MHDM, 1, NotSerialized)
14538 {
14539 \BDMC (Arg0)
14540 }
14541 }
14542
14543 Scope (\_SB.PCI0.LPC.EC.HKEY)
14544 {
14545 Method (PSSG, 1, NotSerialized)
14546 {
14547 Return (\PSIF (0x00, 0x00))
14548 }
14549
14550 Method (PSSS, 1, NotSerialized)
14551 {
14552 Return (\PSIF (0x01, Arg0))
14553 }
14554
14555 Method (PSBS, 1, NotSerialized)
14556 {
14557 Return (\PSIF (0x02, Arg0))
14558 }
14559
14560 Method (BICG, 1, NotSerialized)
14561 {
14562 Return (\PSIF (0x03, Arg0))
14563 }
14564
14565 Method (BICS, 1, NotSerialized)
14566 {
14567 Return (\PSIF (0x04, Arg0))
14568 }
14569
14570 Method (BCTG, 1, NotSerialized)
14571 {
14572 Return (\PSIF (0x05, Arg0))
14573 }
14574
14575 Method (BCCS, 1, NotSerialized)
14576 {
14577 Return (\PSIF (0x06, Arg0))
14578 }
14579
14580 Method (BCSG, 1, NotSerialized)
14581 {
14582 Return (\PSIF (0x07, Arg0))
14583 }
14584
14585 Method (BCSS, 1, NotSerialized)
14586 {
14587 Return (\PSIF (0x08, Arg0))
14588 }
14589
14590 Method (BDSG, 1, NotSerialized)
14591 {
14592 Return (\PSIF (0x09, Arg0))
14593 }
14594
14595 Method (BDSS, 1, NotSerialized)
14596 {
14597 Return (\PSIF (0x0A, Arg0))
14598 }
14599 }
14600
14601 Scope (\_SB.PCI0.LPC.EC.HKEY)
14602 {
14603 Method (GILN, 0, NotSerialized)
14604 {
14605 Return ((0x02 | \ILNF))
14606 }
14607
14608 Method (SILN, 1, NotSerialized)
14609 {
14610 If ((0x01 == Arg0))
14611 {
14612 \ILNF = 0x01
14613 BBLS = 0x00
14614 Return (0x00)
14615 }
14616 Else
14617 {
14618 If ((0x02 == Arg0))
14619 {
14620 \ILNF = 0x00
14621 BBLS = 0x01
14622 Return (0x00)
14623 }
14624 Else
14625 {
14626 Return (0x01)
14627 }
14628 }
14629 }
14630
14631 Method (GLSI, 0, NotSerialized)
14632 {
14633 If (\H8DR)
14634 {
14635 Return ((0x02 + \_SB.PCI0.LPC.EC.HPLD))
14636 }
14637 Else
14638 {
14639 If ((\RBEC (0x46) & 0x04))
14640 {
14641 Return (0x03)
14642 }
14643 Else
14644 {
14645 Return (0x02)
14646 }
14647 }
14648 }
14649 }
14650
14651 Scope (\_SB.PCI0.LPC.EC.HKEY)
14652 {
14653 Method (GDLN, 0, NotSerialized)
14654 {
14655 Return ((0x02 | \PLUX))
14656 }
14657
14658 Method (SDLN, 1, NotSerialized)
14659 {
14660 If ((0x01 == Arg0))
14661 {
14662 \PLUX = 0x01
14663 Return (0x00)
14664 }
14665 Else
14666 {
14667 If ((0x02 == Arg0))
14668 {
14669 \PLUX = 0x00
14670 Return (0x00)
14671 }
14672 Else
14673 {
14674 Return (0x01)
14675 }
14676 }
14677 }
14678 }
14679
14680 Name (\VHCC, 0x00)
14681 Scope (\_SB.PCI0.PEG.VID)
14682 {
14683 Method (ISOP, 0, NotSerialized)
14684 {
14685 Return ((VDSP && (VIGD && VDSC)))
14686 }
14687 }
14688
14689 Scope (\_SB.PCI0)
14690 {
14691 Name (OTM, "OTMACPI 2009-Nov-12 18:18:51")
14692 }
14693
14694 Scope (\_SB.PCI0.PEG.VID)
14695 {
14696 Method (GOBT, 1, NotSerialized)
14697 {
14698 Name (OPVK, Buffer (0xE6)
14699 {
14700 /* 0000 */ 0xE4, 0xB8, 0x4F, 0x51, 0x50, 0x72, 0x8A, 0xC2, /* ..OQPr.. */
14701 /* 0008 */ 0x4B, 0x56, 0xE6, 0x00, 0x00, 0x00, 0x01, 0x00, /* KV...... */
14702 /* 0010 */ 0x31, 0x34, 0x38, 0x35, 0x39, 0x37, 0x34, 0x35, /* 14859745 */
14703 /* 0018 */ 0x36, 0x39, 0x38, 0x35, 0x47, 0x65, 0x6E, 0x75, /* 6985Genu */
14704 /* 0020 */ 0x69, 0x6E, 0x65, 0x20, 0x4E, 0x56, 0x49, 0x44, /* ine NVID */
14705 /* 0028 */ 0x49, 0x41, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, /* IA Certi */
14706 /* 0030 */ 0x66, 0x69, 0x65, 0x64, 0x20, 0x4F, 0x70, 0x74, /* fied Opt */
14707 /* 0038 */ 0x69, 0x6D, 0x75, 0x73, 0x20, 0x52, 0x65, 0x61, /* imus Rea */
14708 /* 0040 */ 0x64, 0x79, 0x20, 0x4D, 0x6F, 0x74, 0x68, 0x65, /* dy Mothe */
14709 /* 0048 */ 0x72, 0x62, 0x6F, 0x61, 0x72, 0x64, 0x20, 0x66, /* rboard f */
14710 /* 0050 */ 0x6F, 0x72, 0x20, 0x36, 0x38, 0x38, 0x33, 0x32, /* or 68832 */
14711 /* 0058 */ 0x35, 0x6E, 0x6F, 0x7A, 0x6F, 0x6D, 0x69, 0x32, /* 5nozomi2 */
14712 /* 0060 */ 0x31, 0x44, 0x35, 0x20, 0x20, 0x20, 0x20, 0x20, /* 1D5 */
14713 /* 0068 */ 0x2D, 0x20, 0x40, 0x4A, 0x20, 0x24, 0x55, 0x27, /* - @J $U' */
14714 /* 0070 */ 0x5C, 0x22, 0x54, 0x20, 0x29, 0x5F, 0x47, 0x42, /* \"T )_GB */
14715 /* 0078 */ 0x20, 0x50, 0x2F, 0x41, 0x4F, 0x5C, 0x37, 0x22, /* P/AO\7" */
14716 /* 0080 */ 0x3D, 0x46, 0x37, 0x39, 0x4B, 0x37, 0x2B, 0x5F, /* =F79K7+_ */
14717 /* 0088 */ 0x3F, 0x4B, 0x48, 0x5C, 0x5F, 0x46, 0x58, 0x48, /* ?KH\_FXH */
14718 /* 0090 */ 0x5F, 0x44, 0x57, 0x32, 0x26, 0x4A, 0x46, 0x50, /* _DW2&JFP */
14719 /* 0098 */ 0x52, 0x25, 0x24, 0x2F, 0x46, 0x24, 0x20, 0x2D, /* R%$/F$ - */
14720 /* 00A0 */ 0x20, 0x43, 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67, /* Copyrig */
14721 /* 00A8 */ 0x68, 0x74, 0x20, 0x32, 0x30, 0x31, 0x30, 0x20, /* ht 2010 */
14722 /* 00B0 */ 0x4E, 0x56, 0x49, 0x44, 0x49, 0x41, 0x20, 0x43, /* NVIDIA C */
14723 /* 00B8 */ 0x6F, 0x72, 0x70, 0x6F, 0x72, 0x61, 0x74, 0x69, /* orporati */
14724 /* 00C0 */ 0x6F, 0x6E, 0x20, 0x41, 0x6C, 0x6C, 0x20, 0x52, /* on All R */
14725 /* 00C8 */ 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, /* ights Re */
14726 /* 00D0 */ 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2D, 0x31, /* served-1 */
14727 /* 00D8 */ 0x34, 0x38, 0x35, 0x39, 0x37, 0x34, 0x35, 0x36, /* 48597456 */
14728 /* 00E0 */ 0x39, 0x38, 0x35, 0x28, 0x52, 0x29 /* 985(R) */
14729 })
14730 CreateWordField (Arg0, 0x02, USRG)
14731 If ((USRG == 0x564B))
14732 {
14733 Return (OPVK) /* \_SB_.PCI0.PEG_.VID_.GOBT.OPVK */
14734 }
14735
14736 Return (Zero)
14737 }
14738 }
14739
14740 Scope (\_SB.PCI0.PEG.VID)
14741 {
14742 Name (OMPR, 0x02)
14743 Name (HDAS, 0x00)
14744 Method (NVOP, 4, Serialized)
14745 {
14746 Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
14747 Debug = "------- NV OPTIMUS DSM --------"
14748 If ((Arg1 != 0x0100))
14749 {
14750 Return (0x80000001)
14751 }
14752
14753 While (One)
14754 {
14755 _T_0 = ToInteger (Arg2)
14756 If ((_T_0 == 0x00))
14757 {
14758 Local0 = Buffer (0x04)
14759 {
14760 0x00, 0x00, 0x00, 0x00 /* .... */
14761 }
14762 Divide (0x00, 0x08, Local2, Local1)
14763 Local2 = (0x01 << Local2)
14764 Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
14765 Divide (0x1A, 0x08, Local2, Local1)
14766 Local2 = (0x01 << Local2)
14767 Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
14768 Divide (0x1B, 0x08, Local2, Local1)
14769 Local2 = (0x01 << Local2)
14770 Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
14771 Divide (0x10, 0x08, Local2, Local1)
14772 Local2 = (0x01 << Local2)
14773 Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
14774 Return (Local0)
14775 }
14776 Else
14777 {
14778 If ((_T_0 == 0x1A))
14779 {
14780 CreateField (Arg3, 0x18, 0x02, OPCE)
14781 CreateField (Arg3, 0x00, 0x01, FLCH)
14782 If (ToInteger (FLCH))
14783 {
14784 OMPR = OPCE /* \_SB_.PCI0.PEG_.VID_.NVOP.OPCE */
14785 }
14786
14787 Local0 = Buffer (0x04)
14788 {
14789 0x00, 0x00, 0x00, 0x00 /* .... */
14790 }
14791 CreateField (Local0, 0x00, 0x01, OPEN)
14792 CreateField (Local0, 0x03, 0x02, CGCS)
14793 CreateField (Local0, 0x06, 0x01, SHPC)
14794 CreateField (Local0, 0x18, 0x03, DGPC)
14795 CreateField (Local0, 0x1B, 0x02, HDAC)
14796 OPEN = One
14797 SHPC = One
14798 DGPC = One
14799 If (\_SB.PCI0.PEG.VID._STA ())
14800 {
14801 CGCS = 0x03
14802 }
14803
14804 HDAC = 0x02
14805 Return (Local0)
14806 }
14807 Else
14808 {
14809 If ((_T_0 == 0x1B))
14810 {
14811 CreateField (Arg3, 0x00, 0x01, HDAU)
14812 CreateField (Arg3, 0x01, 0x01, HDAR)
14813 Local0 = Buffer (0x04)
14814 {
14815 0x00, 0x00, 0x00, 0x00 /* .... */
14816 }
14817 CreateField (Local0, 0x02, 0x02, RQGS)
14818 CreateField (Local0, 0x04, 0x01, PWST)
14819 PWST = One
14820 RQGS = Zero
14821 If (ToInteger (HDAR))
14822 {
14823 HDAS = ToInteger (HDAU)
14824 }
14825
14826 Return (Local0)
14827 }
14828 Else
14829 {
14830 If ((_T_0 == 0x10))
14831 {
14832 Return (\_SB.PCI0.PEG.VID.GOBT (Arg3))
14833 }
14834 }
14835 }
14836 }
14837
14838 Break
14839 }
14840
14841 Return (0x80000002)
14842 }
14843 }
14844
14845 Scope (\)
14846 {
14847 Method (CMPB, 2, NotSerialized)
14848 {
14849 Local1 = SizeOf (Arg0)
14850 If ((Local1 != SizeOf (Arg1)))
14851 {
14852 Return (0x00)
14853 }
14854
14855 Local0 = 0x00
14856 While ((Local0 < Local1))
14857 {
14858 If ((DerefOf (Index (Arg0, Local0)) != DerefOf (Index (Arg1, Local0
14859 ))))
14860 {
14861 Return (0x00)
14862 }
14863
14864 Local0++
14865 }
14866
14867 Return (0x01)
14868 }
14869 }
14870
14871 Scope (\_SB.PCI0.PEG.VID)
14872 {
14873 Name (CPPC, 0x00)
14874 Method (NVPS, 4, Serialized)
14875 {
14876 Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
14877 Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
14878 Debug = "------- NV GPS DSM --------"
14879 While (One)
14880 {
14881 _T_0 = ToInteger (Arg2)
14882 If ((_T_0 == 0x00))
14883 {
14884 Local0 = Buffer (0x08)
14885 {
14886 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
14887 }
14888 Local3 = Buffer (0x08)
14889 {
14890 0x00, 0x13, 0x20, 0x21, 0x22, 0x23, 0x2A, 0xFF /* .. !"#*. */
14891 }
14892 Local4 = Zero
14893 Local5 = DerefOf (Index (Local3, Local4))
14894 While ((Local5 != 0xFF))
14895 {
14896 Divide (Local5, 0x08, Local2, Local1)
14897 Local2 = (0x01 << Local2)
14898 Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
14899 Local4++
14900 Local5 = DerefOf (Index (Local3, Local4))
14901 }
14902
14903 Return (Local0)
14904 }
14905 Else
14906 {
14907 If ((_T_0 == 0x13))
14908 {
14909 Local0 = Buffer (0x04)
14910 {
14911 0x00, 0x00, 0x00, 0x00 /* .... */
14912 }
14913 CreateField (Arg3, 0x02, 0x01, PPST)
14914 CreateBitField (Local0, 0x02, CPST)
14915 If ((ToInteger (PPST) && One))
14916 {
14917 \_SB.PCI0.LPC.EC.GPLT = 0x01
14918 }
14919
14920 CPST = One
14921 Return (Local0)
14922 }
14923 Else
14924 {
14925 If ((_T_0 == 0x20))
14926 {
14927 Local0 = Buffer (0x04)
14928 {
14929 0x00, 0x00, 0x00, 0x00 /* .... */
14930 }
14931 CreateField (Local0, 0x18, 0x01, CUIT)
14932 CreateField (Local0, 0x1E, 0x01, PSER)
14933 CUIT = One
14934 PSER = One
14935 Return (Local0)
14936 }
14937 Else
14938 {
14939 If ((_T_0 == 0x21))
14940 {
14941 Return (\_PR.CPU0._PSS)
14942 }
14943 Else
14944 {
14945 If ((_T_0 == 0x22))
14946 {
14947 CreateField (Arg3, 0x00, 0x08, PPCV)
14948 CPPC = PPCV /* \_SB_.PCI0.PEG_.VID_.NVPS.PPCV */
14949 \PNTF (0x80)
14950 Return (Buffer (0x04)
14951 {
14952 0x00, 0x00, 0x00, 0x00 /* .... */
14953 })
14954 }
14955 Else
14956 {
14957 If ((_T_0 == 0x23))
14958 {
14959 Local0 = Buffer (0x04)
14960 {
14961 0x00, 0x00, 0x00, 0x00 /* .... */
14962 }
14963 Index (Local0, 0x00) = CPPC /* \_SB_.PCI0.PEG_.VID_.CPPC */
14964 Return (Local0)
14965 }
14966 Else
14967 {
14968 If ((_T_0 == 0x2A))
14969 {
14970 Local0 = Buffer (0x24)
14971 {
14972 /* 0000 */ 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, /* ........ */
14973 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
14974 /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
14975 /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
14976 /* 0020 */ 0x00, 0x00, 0x00, 0x00 /* .... */
14977 }
14978 Index (Local0, 0x00) = DerefOf (Index (Arg3, 0x00))
14979 CreateField (Arg3, 0x00, 0x04, QTYP)
14980 While (One)
14981 {
14982 _T_1 = ToInteger (QTYP)
14983 If ((_T_1 == 0x00))
14984 {
14985 Local1 = \_SB.PCI0.LPC.EC.TMP0
14986 Index (Local0, 0x0C) = (Local1 & 0xFF)
14987 Return (Local0)
14988 }
14989 Else
14990 {
14991 If ((_T_1 == 0x01))
14992 {
14993 Index (Local0, 0x0D) = 0x08
14994 Index (Local0, 0x01) = 0x03
14995 Return (Local0)
14996 }
14997 Else
14998 {
14999 If ((_T_1 == 0x02))
15000 {
15001 Index (Local0, 0x00) = 0x02
15002 Index (Local0, 0x01) = One
15003 If ((DDID == 0x137A))
15004 {
15005 Index (Local0, 0x08) = 0x46
15006 }
15007
15008 If ((DDID == 0x1347))
15009 {
15010 Index (Local0, 0x08) = 0x46
15011 }
15012
15013 Return (Local0)
15014 }
15015 }
15016 }
15017
15018 Break
15019 }
15020 }
15021 }
15022 }
15023 }
15024 }
15025 }
15026 }
15027
15028 Break
15029 }
15030
15031 Return (Buffer (0x04)
15032 {
15033 0x02, 0x00, 0x00, 0x80 /* .... */
15034 })
15035 }
15036 }
15037 }
15038
15039 Name (\_S0, Package (0x04) // _S0_: S0 System State
15040 {
15041 0x00,
15042 0x00,
15043 0x00,
15044 0x00
15045 })
15046 Name (\_S3, Package (0x04) // _S3_: S3 System State
15047 {
15048 0x05,
15049 0x05,
15050 0x00,
15051 0x00
15052 })
15053 Name (\_S4, Package (0x04) // _S4_: S4 System State
15054 {
15055 0x06,
15056 0x06,
15057 0x00,
15058 0x00
15059 })
15060 Name (\_S5, Package (0x04) // _S5_: S5 System State
15061 {
15062 0x07,
15063 0x07,
15064 0x00,
15065 0x00
15066 })
15067 Method (\_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep
15068 {
15069 Local0 = 0x01
15070 If ((Arg0 == \SPS))
15071 {
15072 Local0 = 0x00
15073 }
15074
15075 If (((Arg0 == 0x00) || (Arg0 >= 0x06)))
15076 {
15077 Local0 = 0x00
15078 }
15079
15080 If (Local0)
15081 {
15082 \SPS = Arg0
15083 \_SB.PCI0.LPC.EC.HKEY.MHKE (0x00)
15084 If (\_SB.PCI0.LPC.EC.KBLT)
15085 {
15086 \UCMS (0x0D)
15087 }
15088
15089 If ((Arg0 == 0x01))
15090 {
15091 \FNID = \_SB.PCI0.LPC.EC.HFNI
15092 \_SB.PCI0.LPC.EC.HFNI = 0x00
15093 \_SB.PCI0.LPC.EC.HFSP = 0x00
15094 }
15095
15096 If ((Arg0 == 0x03))
15097 {
15098 \VVPD (0x03)
15099 \TRAP ()
15100 \ACST = \_SB.PCI0.LPC.EC.AC._PSR ()
15101 If ((\FNWK == 0x01))
15102 {
15103 If (\H8DR)
15104 {
15105 \_SB.PCI0.LPC.EC.HWFN = 0x00
15106 }
15107 Else
15108 {
15109 \MBEC (0x32, 0xEF, 0x00)
15110 }
15111 }
15112
15113 Local1 = \IFRS (0x00, 0x00)
15114 \FFCL = 0x00
15115 If ((Local1 & 0x20))
15116 {
15117 If (((Local1 & 0x00FFFF00) != 0x00FFFF00))
15118 {
15119 If (((\_SB.PCI0.LPC.EC.HB0A && ((\_SB.PCI0.LPC.EC.HB0S & 0x07) > 0x01)) || (\_SB.PCI0.LPC.EC.HB1A &&
15120 ((\_SB.PCI0.LPC.EC.HB1S & 0x07) > 0x01))))
15121 {
15122 \FFCL = 0x00
15123 }
15124 Else
15125 {
15126 \FFCL = 0x01
15127 }
15128 }
15129 }
15130
15131 If (\FFCL)
15132 {
15133 \IFRS (0x02, 0x00)
15134 }
15135 }
15136
15137 If ((Arg0 == 0x04))
15138 {
15139 If (VDSP)
15140 {
15141 SHA1 = Zero
15142 }
15143
15144 \_SB.SLPB._PSW (0x00)
15145 \TRAP ()
15146 If (CondRefOf (\_SB.PCI0.LPC.TPM.CMOR))
15147 {
15148 \_SB.PCI0.LPC.TPM.CMOR ()
15149 }
15150
15151 \AWON (0x04)
15152 }
15153
15154 If ((Arg0 == 0x05))
15155 {
15156 \TRAP ()
15157 If (CondRefOf (\_SB.PCI0.LPC.TPM.CMOR))
15158 {
15159 \_SB.PCI0.LPC.TPM.CMOR ()
15160 }
15161
15162 \AWON (0x05)
15163 }
15164
15165 If ((Arg0 >= 0x04))
15166 {
15167 \_SB.PCI0.LPC.EC.HWLB = 0x00
15168 }
15169 Else
15170 {
15171 \_SB.PCI0.LPC.EC.HWLB = 0x01
15172 }
15173
15174 If ((Arg0 >= 0x03))
15175 {
15176 \_SB.PCI0.LPC.EC.HCMU = 0x01
15177 }
15178
15179 If ((Arg0 != 0x05)) {}
15180 \_SB.PCI0.LPC.EC.HKEY.WGPS (Arg0)
15181 }
15182 }
15183
15184 Name (WAKI, Package (0x02)
15185 {
15186 0x00,
15187 0x00
15188 })
15189 Method (\_WAK, 1, NotSerialized) // _WAK: Wake
15190 {
15191 If (((Arg0 == 0x00) || (Arg0 >= 0x05)))
15192 {
15193 Return (WAKI) /* \WAKI */
15194 }
15195
15196 \SPS = 0x00
15197 \_SB.PCI0.LPC.EC.HCMU = 0x00
15198 \_SB.PCI0.LPC.EC.EVNT (0x01)
15199 \_SB.PCI0.LPC.EC.HKEY.MHKE (0x01)
15200 \_SB.PCI0.LPC.EC.FNST ()
15201 \UCMS (0x0D)
15202 \LIDB = 0x00
15203 If ((Arg0 == 0x01))
15204 {
15205 \FNID = \_SB.PCI0.LPC.EC.HFNI
15206 }
15207
15208 If ((Arg0 == 0x03))
15209 {
15210 \NVSS (0x00)
15211 \PWRS = \_SB.PCI0.LPC.EC.AC._PSR ()
15212 If (\OSC4)
15213 {
15214 \PNTF (0x81)
15215 }
15216
15217 If ((\ACST != \_SB.PCI0.LPC.EC.AC._PSR ()))
15218 {
15219 \_SB.PCI0.LPC.EC.ATMC ()
15220 }
15221
15222 If (\SCRM)
15223 {
15224 \_SB.PCI0.LPC.EC.HFSP = 0x07
15225 }
15226
15227 \IOEN = 0x00
15228 \IOST = 0x00
15229 If ((\ISWK == 0x01))
15230 {
15231 If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
15232 {
15233 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6070)
15234 }
15235 }
15236
15237 If (\FFCL)
15238 {
15239 \IFRS (0x03, 0x00)
15240 }
15241
15242 If (\VIGD)
15243 {
15244 \_SB.PCI0.VID.GLIS (\_SB.LID._LID ())
15245 If (\WVIS)
15246 {
15247 \VBTD ()
15248 }
15249 }
15250 Else
15251 {
15252 If (\WVIS)
15253 {
15254 \_SB.PCI0.VID.GLIS (\_SB.LID._LID ())
15255 \VBTD ()
15256 }
15257 }
15258
15259 \VCMS (0x01, \_SB.LID._LID ())
15260 \AWON (0x00)
15261 If (\CMPR)
15262 {
15263 Notify (\_SB.SLPB, 0x02) // Device Wake
15264 \CMPR = 0x00
15265 }
15266
15267 If ((\USBR || \_SB.PCI0.XHCI.XRST))
15268 {
15269 If (((\XHCI == 0x02) || (\XHCI == 0x03)))
15270 {
15271 Local0 = 0x00
15272 Local0 = (\_SB.PCI0.XHCI.PR3 & 0xFFFFFFC0)
15273 \_SB.PCI0.XHCI.PR3 = (Local0 | \_SB.PCI0.XHCI.PR3M)
15274 Local0 = 0x00
15275 Local0 = (\_SB.PCI0.XHCI.PR2 & 0xFFFF8000)
15276 \_SB.PCI0.XHCI.PR2 = (Local0 | \_SB.PCI0.XHCI.PR2M)
15277 }
15278 }
15279 }
15280
15281 If ((Arg0 == 0x04))
15282 {
15283 \NVSS (0x00)
15284 \_SB.PCI0.LPC.EC.HSPA = 0x00
15285 \PWRS = \_SB.PCI0.LPC.EC.AC._PSR ()
15286 If (\OSC4)
15287 {
15288 \PNTF (0x81)
15289 }
15290
15291 \_SB.PCI0.LPC.EC.ATMC ()
15292 If (\SCRM)
15293 {
15294 \_SB.PCI0.LPC.EC.HFSP = 0x07
15295 }
15296
15297 If (!\NBCF)
15298 {
15299 If (\VIGD)
15300 {
15301 \_SB.PCI0.LPC.EC.BRNS ()
15302 }
15303 Else
15304 {
15305 \VBRC (\BRLV)
15306 }
15307 }
15308
15309 \IOEN = 0x00
15310 \IOST = 0x00
15311 If ((\ISWK == 0x02))
15312 {
15313 If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
15314 {
15315 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6080)
15316 }
15317 }
15318
15319 If (\_SB.PCI0.XHCI.XRST)
15320 {
15321 If (((\XHCI == 0x02) || (\XHCI == 0x03)))
15322 {
15323 Local0 = 0x00
15324 Local0 = (\_SB.PCI0.XHCI.PR3 & 0xFFFFFFC0)
15325 \_SB.PCI0.XHCI.PR3 = (Local0 | \_SB.PCI0.XHCI.PR3M)
15326 Local0 = 0x00
15327 Local0 = (\_SB.PCI0.XHCI.PR2 & 0xFFFF8000)
15328 \_SB.PCI0.XHCI.PR2 = (Local0 | \_SB.PCI0.XHCI.PR2M)
15329 }
15330 }
15331 }
15332
15333 \_SB.PCI0.LPC.EC.BATW (Arg0)
15334 \_SB.PCI0.LPC.EC.HKEY.WGWK (Arg0)
15335 Notify (\_TZ.THM0, 0x80) // Thermal Status Change
15336 \VSLD (\_SB.LID._LID ())
15337 If (\VIGD)
15338 {
15339 \_SB.PCI0.VID.GLIS (\_SB.LID._LID ())
15340 }
15341 Else
15342 {
15343 If (\WVIS)
15344 {
15345 \_SB.PCI0.VID.GLIS (\_SB.LID._LID ())
15346 }
15347 }
15348
15349 If ((Arg0 < 0x04))
15350 {
15351 If (((\RRBF & 0x02) || (\_SB.PCI0.LPC.EC.HWAC & 0x02)))
15352 {
15353 Local0 = (Arg0 << 0x08)
15354 Local0 = (0x2013 | Local0)
15355 \_SB.PCI0.LPC.EC.HKEY.MHKQ (Local0)
15356 }
15357 }
15358
15359 If ((Arg0 == 0x04))
15360 {
15361 Local0 = 0x00
15362 Local1 = \CSUM (0x00)
15363 If ((Local1 != \CHKC))
15364 {
15365 Local0 = 0x01
15366 \CHKC = Local1
15367 }
15368
15369 Local1 = \CSUM (0x01)
15370 If ((Local1 != \CHKE))
15371 {
15372 Local0 = 0x01
15373 \CHKE = Local1
15374 }
15375
15376 If (Local0)
15377 {
15378 Notify (\_SB, 0x00) // Bus Check
15379 }
15380 }
15381
15382 \RRBF = Zero
15383 Return (WAKI) /* \WAKI */
15384 }
15385
15386 Scope (\_SI)
15387 {
15388 Method (_SST, 1, NotSerialized) // _SST: System Status
15389 {
15390 If ((Arg0 == 0x00))
15391 {
15392 \_SB.PCI0.LPC.EC.LED (0x00, 0x00)
15393 \_SB.PCI0.LPC.EC.LED (0x0A, 0x00)
15394 \_SB.PCI0.LPC.EC.LED (0x07, 0x00)
15395 }
15396
15397 If ((Arg0 == 0x01))
15398 {
15399 If ((\SPS || \WNTF))
15400 {
15401 \_SB.PCI0.LPC.EC.BEEP (0x05)
15402 }
15403
15404 \_SB.PCI0.LPC.EC.LED (0x00, 0x80)
15405 \_SB.PCI0.LPC.EC.LED (0x0A, 0x80)
15406 \_SB.PCI0.LPC.EC.LED (0x07, 0x00)
15407 }
15408
15409 If ((Arg0 == 0x02))
15410 {
15411 \_SB.PCI0.LPC.EC.LED (0x00, 0xC0)
15412 \_SB.PCI0.LPC.EC.LED (0x0A, 0xC0)
15413 \_SB.PCI0.LPC.EC.LED (0x07, 0xC0)
15414 }
15415
15416 If ((Arg0 == 0x03))
15417 {
15418 If ((\SPS > 0x03))
15419 {
15420 \_SB.PCI0.LPC.EC.BEEP (0x07)
15421 }
15422 Else
15423 {
15424 If ((\SPS == 0x03))
15425 {
15426 \_SB.PCI0.LPC.EC.BEEP (0x03)
15427 }
15428 Else
15429 {
15430 \_SB.PCI0.LPC.EC.BEEP (0x04)
15431 }
15432 }
15433
15434 If ((\SPS == 0x03)) {}
15435 Else
15436 {
15437 \_SB.PCI0.LPC.EC.LED (0x00, 0x80)
15438 \_SB.PCI0.LPC.EC.LED (0x0A, 0x80)
15439 }
15440
15441 \_SB.PCI0.LPC.EC.LED (0x07, 0xC0)
15442 \_SB.PCI0.LPC.EC.LED (0x00, 0xC0)
15443 \_SB.PCI0.LPC.EC.LED (0x0A, 0xC0)
15444 }
15445
15446 If ((Arg0 == 0x04))
15447 {
15448 \_SB.PCI0.LPC.EC.BEEP (0x03)
15449 \_SB.PCI0.LPC.EC.LED (0x07, 0xC0)
15450 \_SB.PCI0.LPC.EC.LED (0x00, 0xC0)
15451 \_SB.PCI0.LPC.EC.LED (0x0A, 0xC0)
15452 }
15453 }
15454 }
15455
15456 Scope (\_GPE)
15457 {
15458 Method (_L0D, 0, NotSerialized) // _Lxx: Level-Triggered GPE
15459 {
15460 Local0 = \_SB.PCI0.LPC.EC.HWAC
15461 \RRBF = Local0
15462 Sleep (0x0A)
15463 If ((Local0 & 0x02)) {}
15464 If ((Local0 & 0x04))
15465 {
15466 Notify (\_SB.LID, 0x02) // Device Wake
15467 }
15468
15469 If ((Local0 & 0x08))
15470 {
15471 Notify (\_SB.SLPB, 0x02) // Device Wake
15472 }
15473
15474 If ((Local0 & 0x10))
15475 {
15476 Notify (\_SB.SLPB, 0x02) // Device Wake
15477 }
15478
15479 If ((Local0 & 0x40)) {}
15480 If ((Local0 & 0x80))
15481 {
15482 Notify (\_SB.SLPB, 0x02) // Device Wake
15483 }
15484 }
15485
15486 Method (_L69, 0, NotSerialized) // _Lxx: Level-Triggered GPE
15487 {
15488 If (\_SB.PCI0.EXP1.PSPX)
15489 {
15490 \_SB.PCI0.EXP1.PSPX = 0x01
15491 \_SB.PCI0.EXP1.PMSX = 0x01
15492 Notify (\_SB.PCI0.EXP1, 0x02) // Device Wake
15493 }
15494
15495 If (\_SB.PCI0.EXP2.PSPX)
15496 {
15497 \_SB.PCI0.EXP2.PSPX = 0x01
15498 \_SB.PCI0.EXP2.PMSX = 0x01
15499 Notify (\_SB.PCI0.EXP2, 0x02) // Device Wake
15500 }
15501
15502 If (\_SB.PCI0.EXP3.PSPX)
15503 {
15504 \_SB.PCI0.EXP3.PSPX = 0x01
15505 \_SB.PCI0.EXP3.PMSX = 0x01
15506 Notify (\_SB.PCI0.EXP3, 0x02) // Device Wake
15507 }
15508 }
15509
15510 Method (_L61, 0, NotSerialized) // _Lxx: Level-Triggered GPE
15511 {
15512 }
15513
15514 Method (_L62, 0, NotSerialized) // _Lxx: Level-Triggered GPE
15515 {
15516 \_SB.PCI0.LPC.SWGE = 0x00
15517 If (CondRefOf (\_SB.PCCD.PENB))
15518 {
15519 If ((\_SB.PCCD.PENB == 0x01))
15520 {
15521 Notify (\_SB.PCCD, 0x80) // Status Change
15522 }
15523 }
15524 }
15525
15526 Method (_L66, 0, NotSerialized) // _Lxx: Level-Triggered GPE
15527 {
15528 If (\_SB.PCI0.VID.GSSE)
15529 {
15530 \_SB.PCI0.VID.GSCI ()
15531 }
15532 Else
15533 {
15534 \_SB.PCI0.LPC.SCIS = 0x01
15535 }
15536 }
15537
15538 Name (GPFG, 0x00)
15539 Method (_L0B, 0, NotSerialized) // _Lxx: Level-Triggered GPE
15540 {
15541 If ((GPFG && \_SB.PCI0.LPC.NFCI))
15542 {
15543 GPFG = 0x00
15544 Notify (\_SB.PCI0.SMBU.NFC, 0xC0) // Hardware-Specific
15545 }
15546 }
15547 }
15548
15549 Scope (\_SB.PCI0.LPC.EC.HKEY)
15550 {
15551 Method (MHQT, 1, NotSerialized)
15552 {
15553 If ((\WNTF && \TATC))
15554 {
15555 If ((Arg0 == 0x00))
15556 {
15557 Local0 = \TATC
15558 Return (Local0)
15559 }
15560 Else
15561 {
15562 If ((Arg0 == 0x01))
15563 {
15564 Local0 = \TDFA
15565 Local0 += (\TDTA << 0x04)
15566 Local0 += (\TDFD << 0x08)
15567 Local0 += (\TDTD << 0x0C)
15568 Local0 += (\TNFT << 0x10)
15569 Local0 += (\TNTT << 0x14)
15570 Return (Local0)
15571 }
15572 Else
15573 {
15574 If ((Arg0 == 0x02))
15575 {
15576 Local0 = \TCFA
15577 Local0 += (\TCTA << 0x04)
15578 Local0 += (\TCFD << 0x08)
15579 Local0 += (\TCTD << 0x0C)
15580 Return (Local0)
15581 }
15582 Else
15583 {
15584 If ((Arg0 == 0x03)) {}
15585 Else
15586 {
15587 If ((Arg0 == 0x04))
15588 {
15589 Local0 = \TATW
15590 Return (Local0)
15591 }
15592 Else
15593 {
15594 Noop
15595 }
15596 }
15597 }
15598 }
15599 }
15600 }
15601
15602 Return (0x00)
15603 }
15604
15605 Method (MHAT, 1, NotSerialized)
15606 {
15607 If ((\WNTF && \TATC))
15608 {
15609 Local0 = (Arg0 & 0xFF)
15610 If (!ATMV (Local0))
15611 {
15612 Return (0x00)
15613 }
15614
15615 Local0 = ((Arg0 >> 0x08) & 0xFF)
15616 If (!ATMV (Local0))
15617 {
15618 Return (0x00)
15619 }
15620
15621 \TCFA = (Arg0 & 0x0F)
15622 \TCTA = ((Arg0 >> 0x04) & 0x0F)
15623 \TCFD = ((Arg0 >> 0x08) & 0x0F)
15624 \TCTD = ((Arg0 >> 0x0C) & 0x0F)
15625 ATMC ()
15626 If ((\_PR.CFGD & 0x0100))
15627 {
15628 Local1 = \FTPS
15629 If ((Arg0 & 0x00010000))
15630 {
15631 If (\_PR.CLVL)
15632 {
15633 \FTPS = \CTPR
15634 \FTPS++
15635 }
15636 Else
15637 {
15638 \FTPS = 0x01
15639 }
15640 }
15641 Else
15642 {
15643 If (\_PR.CLVL)
15644 {
15645 \FTPS = \CTPR
15646 }
15647 Else
15648 {
15649 \FTPS = 0x00
15650 }
15651 }
15652
15653 If ((\FTPS ^ Local1))
15654 {
15655 If ((\OSPX || \CPPX))
15656 {
15657 \PNTF (0x80)
15658 }
15659 }
15660 }
15661
15662 Local2 = \SCRM
15663 If ((Arg0 & 0x00040000))
15664 {
15665 \SCRM = 0x01
15666 \_SB.PCI0.LPC.EC.HFSP = 0x07
15667 }
15668 Else
15669 {
15670 \SCRM = 0x00
15671 \_SB.PCI0.LPC.EC.HFSP = 0x80
15672 }
15673
15674 Local3 = \ETAU
15675 If ((Arg0 & 0x00020000))
15676 {
15677 \ETAU = 0x01
15678 }
15679 Else
15680 {
15681 \ETAU = 0x00
15682 }
15683
15684 Return (0x01)
15685 }
15686
15687 Return (0x00)
15688 }
15689
15690 Method (MHGT, 1, NotSerialized)
15691 {
15692 If ((\WNTF && \TATC))
15693 {
15694 Local0 = 0x01000000
15695 If ((\_PR.CFGD & 0x0100))
15696 {
15697 Local0 |= 0x08000000
15698 }
15699
15700 If (\SCRM)
15701 {
15702 Local0 |= 0x10000000
15703 }
15704
15705 If (\ETAU)
15706 {
15707 Local0 |= 0x04000000
15708 }
15709
15710 If ((\CTPR < \FTPS))
15711 {
15712 Local0 |= 0x02000000
15713 }
15714
15715 Local0 += (\TSFT << 0x10)
15716 Local0 += (\TSTT << 0x14)
15717 Local1 = (Arg0 & 0xFF)
15718 If (!ATMV (Local1))
15719 {
15720 Local0 |= 0xFFFF
15721 Return (Local0)
15722 }
15723
15724 Local1 = (Arg0 & 0x0F)
15725 If ((Local1 == 0x00))
15726 {
15727 Local0 += \TIF0
15728 }
15729 Else
15730 {
15731 If ((Local1 == 0x01))
15732 {
15733 Local0 += \TIF1
15734 }
15735 Else
15736 {
15737 If ((Local1 == 0x02))
15738 {
15739 Local0 += \TIF2
15740 }
15741 Else
15742 {
15743 Local0 += 0xFF
15744 }
15745 }
15746 }
15747
15748 Local1 = ((Arg0 >> 0x04) & 0x0F)
15749 If ((Local1 == 0x00))
15750 {
15751 Local0 += (\TIT0 << 0x08)
15752 }
15753 Else
15754 {
15755 If ((Local1 == 0x01))
15756 {
15757 Local0 += (\TIT1 << 0x08)
15758 }
15759 Else
15760 {
15761 If ((Local1 == 0x02))
15762 {
15763 Local0 += (\TIT2 << 0x08)
15764 }
15765 Else
15766 {
15767 Local0 += (0xFF << 0x08)
15768 }
15769 }
15770 }
15771
15772 Return (Local0)
15773 }
15774
15775 Return (0x00)
15776 }
15777
15778 Method (ATMV, 1, NotSerialized)
15779 {
15780 Local1 = (Arg0 & 0x0F)
15781 Local0 = \TNFT
15782 If ((Local1 >= Local0))
15783 {
15784 Return (0x00)
15785 }
15786
15787 Local2 = ((Arg0 >> 0x04) & 0x0F)
15788 Local0 = \TNTT
15789 If ((Local2 >= Local0))
15790 {
15791 Return (0x00)
15792 }
15793
15794 If (\TATL)
15795 {
15796 If ((Local1 ^ Local2))
15797 {
15798 Return (0x00)
15799 }
15800 }
15801
15802 Return (0x01)
15803 }
15804
15805 Method (MHCT, 1, NotSerialized)
15806 {
15807 Local0 = 0x00
15808 If (\SPEN)
15809 {
15810 Local0 = \LWST
15811 Local0++
15812 Local0 <<= 0x08
15813 }
15814
15815 Local1 = 0x08
15816 Local1 <<= 0x08
15817 If ((Arg0 == 0xFFFFFFFF))
15818 {
15819 Local1 |= \TPCR
15820 If (\SPEN)
15821 {
15822 Local0 |= \PPCR
15823 If (!(\_PR.CFGD && 0x02000000))
15824 {
15825 Local1 |= 0x80
15826 }
15827
15828 If (!(\_PR.CFGD && 0x08000000))
15829 {
15830 Local1 |= 0x40
15831 }
15832 }
15833 Else
15834 {
15835 Local1 |= 0xC0
15836 }
15837 }
15838 Else
15839 {
15840 If (((\OSPX || \CPPX) && \SPEN))
15841 {
15842 Local2 = (Arg0 & 0x00FF0000)
15843 Local2 >>= 0x10
15844 Local0 |= Local2
15845 If ((Local2 ^ \PPCR))
15846 {
15847 \PPCA = Local2
15848 \PNTF (0x80)
15849 }
15850 }
15851
15852 If (\WVIS)
15853 {
15854 Local2 = (Arg0 & 0x1F)
15855 Local1 |= Local2
15856 If ((Local2 ^ \TPCR))
15857 {
15858 \TPCA = Local2
15859 \PNTF (0x82)
15860 }
15861 }
15862 }
15863
15864 Local0 <<= 0x10
15865 Local0 |= Local1
15866 Return (Local0)
15867 }
15868
15869 Method (DYTC, 1, Serialized)
15870 {
15871 Name (_T_3, Zero) // _T_x: Emitted by ASL Compiler
15872 Name (_T_2, Zero) // _T_x: Emitted by ASL Compiler
15873 Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
15874 Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
15875 Local0 = Arg0
15876 Local1 = 0x00
15877 Local2 = 0x00
15878 Local3 = 0x00
15879 Local4 = 0x00
15880 If ((\WNTF && \TATC))
15881 {
15882 Local1 = (Local0 & 0x0F)
15883 While (One)
15884 {
15885 _T_0 = ToInteger (Local1)
15886 If ((_T_0 == 0x00))
15887 {
15888 Local2 = (\DTCC & (0x01 | 0x02))
15889 If (!(Local2 & 0x01))
15890 {
15891 Return (0x00)
15892 }
15893
15894 Local3 = \_SB.PCI0.CTNL
15895 If ((Local3 == 0x00))
15896 {
15897 Return (0x00)
15898 }
15899
15900 Local3 = \_SB.PCI0.CTCL
15901 Local3 = (Local3 & 0x03)
15902 While (One)
15903 {
15904 _T_1 = ToInteger (Local3)
15905 If ((Match (Package (0x03)
15906 {
15907 0x00,
15908 0x01,
15909 0x02
15910 }, MEQ, _T_1, MTR, Zero, Zero) != Ones))
15911 {
15912 Local2 |= (Local3 << 0x08)
15913 }
15914 Else
15915 {
15916 Local2 |= 0x0F00
15917 }
15918
15919 Break
15920 }
15921
15922 Local2 |= 0x20000000
15923 Local2 |= 0x1000
15924 }
15925 Else
15926 {
15927 If ((_T_0 == 0x01))
15928 {
15929 Local2 = (\DTCC & (0x01 | 0x02))
15930 If ((Local2 != (0x01 | 0x02)))
15931 {
15932 Return ((0x02 | 0x01))
15933 }
15934
15935 Local1 = (Local0 & 0x0F00)
15936 Local2 = (Local1 | 0x00)
15937 While (One)
15938 {
15939 _T_2 = ToInteger ((Local1 >> 0x08))
15940 If ((_T_2 == 0x00))
15941 {
15942 \_SB.PCI0.CTCN ()
15943 }
15944 Else
15945 {
15946 If ((_T_2 == 0x01))
15947 {
15948 \_SB.PCI0.CTCD ()
15949 }
15950 Else
15951 {
15952 Local2 = (0x0E | 0x01)
15953 }
15954 }
15955
15956 Break
15957 }
15958 }
15959 Else
15960 {
15961 Local2 = Local0
15962 }
15963 }
15964
15965 Break
15966 }
15967
15968 Local4 = (Local0 & 0x0FFF)
15969 While (One)
15970 {
15971 _T_3 = ToInteger (Local4)
15972 If ((_T_3 == 0x0100))
15973 {
15974 Local2 = (\DTCC & 0x01)
15975 If (!(Local2 & 0x01))
15976 {
15977 Local2 = 0x0100
15978 }
15979 Else
15980 {
15981 Local2 |= 0x00010000
15982 Local2 |= 0x10000000
15983 }
15984 }
15985
15986 Break
15987 }
15988
15989 Return (Local2)
15990 }
15991 }
15992 }
15993
15994 Scope (\_SB.PCI0.LPC.EC)
15995 {
15996 Method (ATMC, 0, NotSerialized)
15997 {
15998 If ((\WNTF && \TATC))
15999 {
16000 If (HPAC)
16001 {
16002 Local0 = \TCFA
16003 Local1 = \TCTA
16004 Local2 = ((Local1 << 0x04) | Local0)
16005 Local3 = (Local2 ^ ATMX) /* \_SB_.PCI0.LPC_.EC__.ATMX */
16006 ATMX = Local2
16007 If ((\TCTA == 0x00))
16008 {
16009 \TCRT = \TCR0
16010 \TPSV = \TPS0
16011 }
16012 Else
16013 {
16014 If ((\TCTA == 0x01))
16015 {
16016 \TCRT = \TCR1
16017 \TPSV = \TPS1
16018 }
16019 Else
16020 {
16021 }
16022 }
16023 }
16024 Else
16025 {
16026 Local0 = \TCFD
16027 Local1 = \TCTD
16028 Local2 = ((Local1 << 0x04) | Local0)
16029 Local3 = (Local2 ^ ATMX) /* \_SB_.PCI0.LPC_.EC__.ATMX */
16030 ATMX = Local2
16031 If ((\TCTD == 0x00))
16032 {
16033 \TCRT = \TCR0
16034 \TPSV = \TPS0
16035 }
16036 Else
16037 {
16038 If ((\TCTD == 0x01))
16039 {
16040 \TCRT = \TCR1
16041 \TPSV = \TPS1
16042 }
16043 Else
16044 {
16045 }
16046 }
16047 }
16048
16049 If (Local3)
16050 {
16051 If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
16052 {
16053 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6030)
16054 }
16055 }
16056
16057 Notify (\_TZ.THM0, 0x81) // Thermal Trip Point Change
16058 }
16059 }
16060 }
16061
16062 Scope (\_TZ)
16063 {
16064 ThermalZone (THM0)
16065 {
16066 Method (_CRT, 0, NotSerialized) // _CRT: Critical Temperature
16067 {
16068 Return (\TCRT)
16069 }
16070
16071 Method (_TMP, 0, NotSerialized) // _TMP: Temperature
16072 {
16073 If (\H8DR)
16074 {
16075 Local0 = \_SB.PCI0.LPC.EC.TMP0
16076 Local1 = \_SB.PCI0.LPC.EC.TSL2
16077 Local2 = \_SB.PCI0.LPC.EC.TSL3
16078 }
16079 Else
16080 {
16081 Local0 = \RBEC (0x78)
16082 Local1 = (\RBEC (0x8A) & 0x7F)
16083 Local2 = (\RBEC (0x8B) & 0x7F)
16084 }
16085
16086 If ((Local0 == 0x80))
16087 {
16088 Local0 = 0x30
16089 }
16090
16091 If (Local2)
16092 {
16093 \TSDL ()
16094 Return (\TCRT)
16095 }
16096
16097 If (!\_SB.PCI0.LPC.EC.HKEY.DHKC)
16098 {
16099 If (Local1)
16100 {
16101 \TSDL ()
16102 Return (\TCRT)
16103 }
16104 }
16105
16106 Return (C2K (Local0))
16107 }
16108 }
16109
16110 Method (C2K, 1, NotSerialized)
16111 {
16112 Local0 = ((Arg0 * 0x0A) + 0x0AAC)
16113 If ((Local0 <= 0x0AAC))
16114 {
16115 Local0 = 0x0BB8
16116 }
16117
16118 If ((Local0 > 0x0FAC))
16119 {
16120 Local0 = 0x0BB8
16121 }
16122
16123 Return (Local0)
16124 }
16125 }
16126
16127 Scope (\_SB.PCI0.LPC.EC)
16128 {
16129 Method (_Q40, 0, NotSerialized) // _Qxx: EC Query
16130 {
16131 Notify (\_TZ.THM0, 0x80) // Thermal Status Change
16132 If (\H8DR)
16133 {
16134 Local1 = \_SB.PCI0.LPC.EC.TSL2
16135 }
16136 Else
16137 {
16138 Local1 = (\RBEC (0x8A) & 0x7F)
16139 }
16140
16141 If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
16142 {
16143 If (Local1)
16144 {
16145 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6022)
16146 }
16147 }
16148
16149 If (VIGD)
16150 {
16151 Noop
16152 }
16153 Else
16154 {
16155 \VTHR ()
16156 }
16157
16158 If ((\_PR.CFGD & 0x01))
16159 {
16160 If ((\OSPX || \CPPX))
16161 {
16162 \PNTF (0x80)
16163 }
16164 Else
16165 {
16166 Local2 = (\_SB.PCI0.LPC.EC.TSL0 & 0x77)
16167 If (Local2)
16168 {
16169 \STEP (0x09)
16170 }
16171 Else
16172 {
16173 \STEP (0x0A)
16174 }
16175 }
16176 }
16177 }
16178 }
16179
16180 Name (GPIC, 0x00)
16181 Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model
16182 {
16183 \GPIC = Arg0
16184 }
16185
16186 OperationRegion (SMI0, SystemIO, 0xB2, 0x01)
16187 Field (SMI0, ByteAcc, NoLock, Preserve)
16188 {
16189 APMC, 8
16190 }
16191
16192 Field (MNVS, AnyAcc, NoLock, Preserve)
16193 {
16194 Offset (0xFC0),
16195 CMD, 8,
16196 ERR, 32,
16197 PAR0, 32,
16198 PAR1, 32,
16199 PAR2, 32,
16200 PAR3, 32
16201 }
16202
16203 Mutex (MSMI, 0x07)
16204 Method (SMI, 5, NotSerialized)
16205 {
16206 Acquire (MSMI, 0xFFFF)
16207 CMD = Arg0
16208 ERR = 0x01
16209 PAR0 = Arg1
16210 PAR1 = Arg2
16211 PAR2 = Arg3
16212 PAR3 = Arg4
16213 APMC = 0xF5
16214 While ((ERR == 0x01))
16215 {
16216 Sleep (0x01)
16217 APMC = 0xF5
16218 }
16219
16220 Local0 = PAR0 /* \PAR0 */
16221 Release (MSMI)
16222 Return (Local0)
16223 }
16224
16225 Method (RPCI, 1, NotSerialized)
16226 {
16227 Return (SMI (0x00, 0x00, Arg0, 0x00, 0x00))
16228 }
16229
16230 Method (WPCI, 2, NotSerialized)
16231 {
16232 SMI (0x00, 0x01, Arg0, Arg1, 0x00)
16233 }
16234
16235 Method (MPCI, 3, NotSerialized)
16236 {
16237 SMI (0x00, 0x02, Arg0, Arg1, Arg2)
16238 }
16239
16240 Method (RBEC, 1, NotSerialized)
16241 {
16242 Return (SMI (0x00, 0x03, Arg0, 0x00, 0x00))
16243 }
16244
16245 Method (WBEC, 2, NotSerialized)
16246 {
16247 SMI (0x00, 0x04, Arg0, Arg1, 0x00)
16248 }
16249
16250 Method (MBEC, 3, NotSerialized)
16251 {
16252 SMI (0x00, 0x05, Arg0, Arg1, Arg2)
16253 }
16254
16255 Method (RISA, 1, NotSerialized)
16256 {
16257 Return (SMI (0x00, 0x06, Arg0, 0x00, 0x00))
16258 }
16259
16260 Method (WISA, 2, NotSerialized)
16261 {
16262 SMI (0x00, 0x07, Arg0, Arg1, 0x00)
16263 }
16264
16265 Method (MISA, 3, NotSerialized)
16266 {
16267 SMI (0x00, 0x08, Arg0, Arg1, Arg2)
16268 }
16269
16270 Method (VEXP, 0, NotSerialized)
16271 {
16272 SMI (0x01, 0x00, 0x00, 0x00, 0x00)
16273 }
16274
16275 Method (VUPS, 1, NotSerialized)
16276 {
16277 SMI (0x01, 0x01, Arg0, 0x00, 0x00)
16278 }
16279
16280 Method (VSDS, 2, NotSerialized)
16281 {
16282 SMI (0x01, 0x02, Arg0, Arg1, 0x00)
16283 }
16284
16285 Method (VDDC, 0, NotSerialized)
16286 {
16287 SMI (0x01, 0x03, 0x00, 0x00, 0x00)
16288 }
16289
16290 Method (VVPD, 1, NotSerialized)
16291 {
16292 SMI (0x01, 0x04, Arg0, 0x00, 0x00)
16293 }
16294
16295 Method (VNRS, 1, NotSerialized)
16296 {
16297 SMI (0x01, 0x05, Arg0, 0x00, 0x00)
16298 }
16299
16300 Method (GLPW, 0, NotSerialized)
16301 {
16302 Return (SMI (0x01, 0x06, 0x00, 0x00, 0x00))
16303 }
16304
16305 Method (VSLD, 1, NotSerialized)
16306 {
16307 SMI (0x01, 0x07, Arg0, 0x00, 0x00)
16308 }
16309
16310 Method (VEVT, 1, NotSerialized)
16311 {
16312 Return (SMI (0x01, 0x08, Arg0, 0x00, 0x00))
16313 }
16314
16315 Method (VTHR, 0, NotSerialized)
16316 {
16317 Return (SMI (0x01, 0x09, 0x00, 0x00, 0x00))
16318 }
16319
16320 Method (VBRC, 1, NotSerialized)
16321 {
16322 SMI (0x01, 0x0A, Arg0, 0x00, 0x00)
16323 }
16324
16325 Method (VBRG, 0, NotSerialized)
16326 {
16327 Return (SMI (0x01, 0x0E, 0x00, 0x00, 0x00))
16328 }
16329
16330 Method (VCMS, 2, NotSerialized)
16331 {
16332 Return (SMI (0x01, 0x0B, Arg0, Arg1, 0x00))
16333 }
16334
16335 Method (VBTD, 0, NotSerialized)
16336 {
16337 Return (SMI (0x01, 0x0F, 0x00, 0x00, 0x00))
16338 }
16339
16340 Method (VHYB, 2, NotSerialized)
16341 {
16342 Return (SMI (0x01, 0x10, Arg0, Arg1, 0x00))
16343 }
16344
16345 Method (VDYN, 2, NotSerialized)
16346 {
16347 Return (SMI (0x01, 0x11, Arg0, Arg1, 0x00))
16348 }
16349
16350 Method (UCMS, 1, NotSerialized)
16351 {
16352 Return (SMI (0x02, Arg0, 0x00, 0x00, 0x00))
16353 }
16354
16355 Method (BHDP, 2, NotSerialized)
16356 {
16357 Return (SMI (0x03, 0x00, Arg0, Arg1, 0x00))
16358 }
16359
16360 Method (STEP, 1, NotSerialized)
16361 {
16362 SMI (0x04, Arg0, 0x00, 0x00, 0x00)
16363 }
16364
16365 Method (TRAP, 0, NotSerialized)
16366 {
16367 SMI (0x05, 0x00, 0x00, 0x00, 0x00)
16368 }
16369
16370 Method (CBRI, 0, NotSerialized)
16371 {
16372 SMI (0x05, 0x01, 0x00, 0x00, 0x00)
16373 }
16374
16375 Method (BCHK, 0, NotSerialized)
16376 {
16377 Return (SMI (0x05, 0x04, 0x00, 0x00, 0x00))
16378 }
16379
16380 Method (BYRS, 0, NotSerialized)
16381 {
16382 SMI (0x05, 0x05, 0x00, 0x00, 0x00)
16383 }
16384
16385 Method (LCHK, 1, NotSerialized)
16386 {
16387 Return (SMI (0x05, 0x06, Arg0, 0x00, 0x00))
16388 }
16389
16390 Method (BLTH, 1, NotSerialized)
16391 {
16392 Return (SMI (0x06, Arg0, 0x00, 0x00, 0x00))
16393 }
16394
16395 Method (PRSM, 2, NotSerialized)
16396 {
16397 Return (SMI (0x07, 0x00, Arg0, Arg1, 0x00))
16398 }
16399
16400 Method (IFRS, 2, NotSerialized)
16401 {
16402 Return (SMI (0x07, 0x01, Arg0, Arg1, 0x00))
16403 }
16404
16405 Method (ISOC, 1, NotSerialized)
16406 {
16407 Return (SMI (0x07, 0x03, Arg0, 0x00, 0x00))
16408 }
16409
16410 Method (EZRC, 1, NotSerialized)
16411 {
16412 Return (SMI (0x07, 0x04, Arg0, 0x00, 0x00))
16413 }
16414
16415 Method (WGSV, 1, NotSerialized)
16416 {
16417 Return (SMI (0x09, Arg0, 0x00, 0x00, 0x00))
16418 }
16419
16420 Method (SWTT, 1, NotSerialized)
16421 {
16422 If (SMI (0x0A, 0x02, Arg0, 0x00, 0x00))
16423 {
16424 If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
16425 {
16426 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6030)
16427 }
16428 }
16429 }
16430
16431 Method (TSDL, 0, NotSerialized)
16432 {
16433 Return (SMI (0x0A, 0x03, 0x00, 0x00, 0x00))
16434 }
16435
16436 Method (TPHY, 1, NotSerialized)
16437 {
16438 SMI (0x0C, Arg0, 0x00, 0x00, 0x00)
16439 }
16440
16441 Method (CSUM, 1, NotSerialized)
16442 {
16443 Return (SMI (0x0E, Arg0, 0x00, 0x00, 0x00))
16444 }
16445
16446 Method (NVSS, 1, NotSerialized)
16447 {
16448 Return (SMI (0x0F, Arg0, 0x00, 0x00, 0x00))
16449 }
16450
16451 Method (WMIS, 2, NotSerialized)
16452 {
16453 Return (SMI (0x10, Arg0, Arg1, 0x00, 0x00))
16454 }
16455
16456 Method (AWON, 1, NotSerialized)
16457 {
16458 Return (SMI (0x12, Arg0, 0x00, 0x00, 0x00))
16459 }
16460
16461 Method (PMON, 2, NotSerialized)
16462 {
16463 Local0 = SizeOf (Arg0)
16464 Name (TSTR, Buffer (Local0) {})
16465 TSTR = Arg0
16466 \DBGS = TSTR /* \PMON.TSTR */
16467 SMI (0x11, Arg1, 0x00, 0x00, 0x00)
16468 }
16469
16470 Method (UAWS, 1, NotSerialized)
16471 {
16472 Return (SMI (0x13, Arg0, 0x00, 0x00, 0x00))
16473 }
16474
16475 Method (BFWC, 1, NotSerialized)
16476 {
16477 Return (SMI (0x14, 0x00, Arg0, 0x00, 0x00))
16478 }
16479
16480 Method (BFWP, 0, NotSerialized)
16481 {
16482 Return (SMI (0x14, 0x01, 0x00, 0x00, 0x00))
16483 }
16484
16485 Method (BFWL, 0, NotSerialized)
16486 {
16487 SMI (0x14, 0x02, 0x00, 0x00, 0x00)
16488 }
16489
16490 Method (BFWG, 1, NotSerialized)
16491 {
16492 SMI (0x14, 0x03, Arg0, 0x00, 0x00)
16493 }
16494
16495 Method (BDMC, 1, NotSerialized)
16496 {
16497 SMI (0x14, 0x04, Arg0, 0x00, 0x00)
16498 }
16499
16500 Method (PSIF, 2, NotSerialized)
16501 {
16502 Return (SMI (0x14, 0x05, Arg0, Arg1, 0x00))
16503 }
16504
16505 Method (FNSC, 2, NotSerialized)
16506 {
16507 Return (SMI (0x14, 0x06, Arg0, Arg1, 0x00))
16508 }
16509
16510 Method (AUDC, 2, NotSerialized)
16511 {
16512 Return (SMI (0x14, 0x07, Arg0, Arg1, 0x00))
16513 }
16514
16515 Method (SYBC, 2, NotSerialized)
16516 {
16517 Return (SMI (0x14, 0x08, Arg0, Arg1, 0x00))
16518 }
16519
16520 Method (KBLS, 2, NotSerialized)
16521 {
16522 Return (SMI (0x14, 0x09, Arg0, Arg1, 0x00))
16523 }
16524
16525 Method (UBIS, 1, NotSerialized)
16526 {
16527 Return (SMI (0x15, 0x00, Arg0, 0x00, 0x00))
16528 }
16529
16530 Method (DIEH, 1, NotSerialized)
16531 {
16532 Return (SMI (0x16, 0x00, Arg0, 0x00, 0x00))
16533 }
16534
16535 Method (OUTP, 2, NotSerialized)
16536 {
16537 SMI (0x17, Arg0, Arg1, 0x00, 0x00)
16538 }
16539
16540 Method (DPIO, 2, NotSerialized)
16541 {
16542 If (!Arg0)
16543 {
16544 Return (0x00)
16545 }
16546
16547 If ((Arg0 > 0xF0))
16548 {
16549 Return (0x00)
16550 }
16551
16552 If ((Arg0 > 0xB4))
16553 {
16554 If (Arg1)
16555 {
16556 Return (0x02)
16557 }
16558 Else
16559 {
16560 Return (0x01)
16561 }
16562 }
16563
16564 If ((Arg0 > 0x78))
16565 {
16566 Return (0x03)
16567 }
16568
16569 Return (0x04)
16570 }
16571
16572 Method (DUDM, 2, NotSerialized)
16573 {
16574 If (!Arg1)
16575 {
16576 Return (0xFF)
16577 }
16578
16579 If ((Arg0 > 0x5A))
16580 {
16581 Return (0x00)
16582 }
16583
16584 If ((Arg0 > 0x3C))
16585 {
16586 Return (0x01)
16587 }
16588
16589 If ((Arg0 > 0x2D))
16590 {
16591 Return (0x02)
16592 }
16593
16594 If ((Arg0 > 0x1E))
16595 {
16596 Return (0x03)
16597 }
16598
16599 If ((Arg0 > 0x14))
16600 {
16601 Return (0x04)
16602 }
16603
16604 Return (0x05)
16605 }
16606
16607 Method (DMDM, 2, NotSerialized)
16608 {
16609 If (Arg1)
16610 {
16611 Return (0x00)
16612 }
16613
16614 If (!Arg0)
16615 {
16616 Return (0x00)
16617 }
16618
16619 If ((Arg0 > 0x96))
16620 {
16621 Return (0x01)
16622 }
16623
16624 If ((Arg0 > 0x78))
16625 {
16626 Return (0x02)
16627 }
16628
16629 Return (0x03)
16630 }
16631
16632 Method (UUDM, 2, NotSerialized)
16633 {
16634 If (!(Arg0 & 0x04))
16635 {
16636 Return (0x00)
16637 }
16638
16639 If ((Arg1 & 0x20))
16640 {
16641 Return (0x14)
16642 }
16643
16644 If ((Arg1 & 0x10))
16645 {
16646 Return (0x1E)
16647 }
16648
16649 If ((Arg1 & 0x08))
16650 {
16651 Return (0x2D)
16652 }
16653
16654 If ((Arg1 & 0x04))
16655 {
16656 Return (0x3C)
16657 }
16658
16659 If ((Arg1 & 0x02))
16660 {
16661 Return (0x5A)
16662 }
16663
16664 If ((Arg1 & 0x01))
16665 {
16666 Return (0x78)
16667 }
16668
16669 Return (0x00)
16670 }
16671
16672 Method (UMDM, 4, NotSerialized)
16673 {
16674 If (!(Arg0 & 0x02))
16675 {
16676 Return (0x00)
16677 }
16678
16679 If ((Arg1 & 0x04))
16680 {
16681 Return (Arg3)
16682 }
16683
16684 If ((Arg1 & 0x02))
16685 {
16686 If ((Arg3 <= 0x78))
16687 {
16688 Return (0xB4)
16689 }
16690 Else
16691 {
16692 Return (Arg3)
16693 }
16694 }
16695
16696 If ((Arg2 & 0x04))
16697 {
16698 If ((Arg3 <= 0xB4))
16699 {
16700 Return (0xF0)
16701 }
16702 Else
16703 {
16704 Return (Arg3)
16705 }
16706 }
16707
16708 Return (0x00)
16709 }
16710
16711 Method (UPIO, 4, NotSerialized)
16712 {
16713 If (!(Arg0 & 0x02))
16714 {
16715 If ((Arg2 == 0x02))
16716 {
16717 Return (0xF0)
16718 }
16719 Else
16720 {
16721 Return (0x0384)
16722 }
16723 }
16724
16725 If ((Arg1 & 0x02))
16726 {
16727 Return (Arg3)
16728 }
16729
16730 If ((Arg1 & 0x01))
16731 {
16732 If ((Arg3 <= 0x78))
16733 {
16734 Return (0xB4)
16735 }
16736 Else
16737 {
16738 Return (Arg3)
16739 }
16740 }
16741
16742 If ((Arg2 == 0x02))
16743 {
16744 Return (0xF0)
16745 }
16746 Else
16747 {
16748 Return (0x0384)
16749 }
16750 }
16751
16752 Method (FDMA, 2, NotSerialized)
16753 {
16754 If ((Arg1 != 0xFF))
16755 {
16756 Return ((Arg1 | 0x40))
16757 }
16758
16759 If ((Arg0 >= 0x03))
16760 {
16761 Return (((Arg0 - 0x02) | 0x20))
16762 }
16763
16764 If (Arg0)
16765 {
16766 Return (0x12)
16767 }
16768
16769 Return (0x00)
16770 }
16771
16772 Method (FPIO, 1, NotSerialized)
16773 {
16774 If ((Arg0 >= 0x03))
16775 {
16776 Return ((Arg0 | 0x08))
16777 }
16778
16779 If ((Arg0 == 0x01))
16780 {
16781 Return (0x01)
16782 }
16783
16784 Return (0x00)
16785 }
16786
16787 Method (SCMP, 2, NotSerialized)
16788 {
16789 Local0 = SizeOf (Arg0)
16790 If ((Local0 != SizeOf (Arg1)))
16791 {
16792 Return (One)
16793 }
16794
16795 Local0++
16796 Name (STR1, Buffer (Local0) {})
16797 Name (STR2, Buffer (Local0) {})
16798 STR1 = Arg0
16799 STR2 = Arg1
16800 Local1 = Zero
16801 While ((Local1 < Local0))
16802 {
16803 Local2 = DerefOf (Index (STR1, Local1))
16804 Local3 = DerefOf (Index (STR2, Local1))
16805 If ((Local2 != Local3))
16806 {
16807 Return (One)
16808 }
16809
16810 Local1++
16811 }
16812
16813 Return (Zero)
16814 }
16815
16816 Name (SPS, 0x00)
16817 Name (OSIF, 0x00)
16818 Name (WNTF, 0x00)
16819 Name (WXPF, 0x00)
16820 Name (WVIS, 0x00)
16821 Name (WIN7, 0x00)
16822 Name (WIN8, 0x00)
16823 Name (WSPV, 0x00)
16824 Name (LNUX, 0x00)
16825 Name (H8DR, 0x00)
16826 Name (MEMX, 0x00)
16827 Name (ACST, 0x00)
16828 Name (FMBL, 0x01)
16829 Name (FDTP, 0x02)
16830 Name (FUPS, 0x03)
16831 Name (FNID, 0x00)
16832 Name (RRBF, 0x00)
16833 Name (NBCF, 0x00)
16834 Scope (\_SB.PCI0)
16835 {
16836 Device (PDRC)
16837 {
16838 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
16839 Name (_UID, 0x01) // _UID: Unique ID
16840 Name (BUF0, ResourceTemplate ()
16841 {
16842 Memory32Fixed (ReadWrite,
16843 0x00000000, // Address Base
16844 0x00010000, // Address Length
16845 _Y27)
16846 Memory32Fixed (ReadWrite,
16847 0x00000000, // Address Base
16848 0x00010000, // Address Length
16849 _Y28)
16850 })
16851 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
16852 {
16853 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y27._BAS, SNR0) // _BAS: Base Address
16854 SNR0 = \SRMB
16855 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y28._BAS, XWT0) // _BAS: Base Address
16856 XWT0 = \XWMB
16857 Return (BUF0) /* \_SB_.PCI0.PDRC.BUF0 */
16858 }
16859 }
16860 }
16861
16862 Scope (\)
16863 {
16864 Method (KOU1, 0, NotSerialized)
16865 {
16866 Stall (0x64)
16867 }
16868 }
16869
16870 Scope (\)
16871 {
16872 Method (KOU2, 0, NotSerialized)
16873 {
16874 Stall (0x64)
16875 }
16876 }
16877
16878 Scope (\_SB.PCI0.VID.LCD0)
16879 {
16880 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
16881 {
16882 If (\WVIS)
16883 {
16884 \NBCF = 0x01
16885 }
16886
16887 Local0 = \_SB.PCI0.LPC.EC.BFRQ ()
16888 If ((\_SB.PCI0.VID.PFMB != Local0))
16889 {
16890 \_SB.PCI0.VID.AINT (0x03, Local0)
16891 }
16892
16893 If (\WIN8)
16894 {
16895 Return (Package (0x67)
16896 {
16897 0x64,
16898 0x64,
16899 0x00,
16900 0x01,
16901 0x02,
16902 0x03,
16903 0x04,
16904 0x05,
16905 0x06,
16906 0x07,
16907 0x08,
16908 0x09,
16909 0x0A,
16910 0x0B,
16911 0x0C,
16912 0x0D,
16913 0x0E,
16914 0x0F,
16915 0x10,
16916 0x11,
16917 0x12,
16918 0x13,
16919 0x14,
16920 0x15,
16921 0x16,
16922 0x17,
16923 0x18,
16924 0x19,
16925 0x1A,
16926 0x1B,
16927 0x1C,
16928 0x1D,
16929 0x1E,
16930 0x1F,
16931 0x20,
16932 0x21,
16933 0x22,
16934 0x23,
16935 0x24,
16936 0x25,
16937 0x26,
16938 0x27,
16939 0x28,
16940 0x29,
16941 0x2A,
16942 0x2B,
16943 0x2C,
16944 0x2D,
16945 0x2E,
16946 0x2F,
16947 0x30,
16948 0x31,
16949 0x32,
16950 0x33,
16951 0x34,
16952 0x35,
16953 0x36,
16954 0x37,
16955 0x38,
16956 0x39,
16957 0x3A,
16958 0x3B,
16959 0x3C,
16960 0x3D,
16961 0x3E,
16962 0x3F,
16963 0x40,
16964 0x41,
16965 0x42,
16966 0x43,
16967 0x44,
16968 0x45,
16969 0x46,
16970 0x47,
16971 0x48,
16972 0x49,
16973 0x4A,
16974 0x4B,
16975 0x4C,
16976 0x4D,
16977 0x4E,
16978 0x4F,
16979 0x50,
16980 0x51,
16981 0x52,
16982 0x53,
16983 0x54,
16984 0x55,
16985 0x56,
16986 0x57,
16987 0x58,
16988 0x59,
16989 0x5A,
16990 0x5B,
16991 0x5C,
16992 0x5D,
16993 0x5E,
16994 0x5F,
16995 0x60,
16996 0x61,
16997 0x62,
16998 0x63,
16999 0x64
17000 })
17001 }
17002
17003 Return (\_SB.PCI0.LPC.EC.BRTW)
17004 }
17005
17006 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
17007 {
17008 If (\WIN8)
17009 {
17010 \_SB.PCI0.VID.AINT (0x01, \_SB.PCI0.LPC.EC.BRCD (Arg0))
17011 }
17012 Else
17013 {
17014 Local0 = Match (\_SB.PCI0.LPC.EC.BRTW, MEQ, Arg0, MTR, 0x00, 0x02)
17015 If ((Local0 != Ones))
17016 {
17017 Local1 = (Local0 - 0x02)
17018 \BRLV = Local1
17019 \_SB.PCI0.LPC.EC.BRNS ()
17020 \UCMS (0x16)
17021 }
17022 }
17023 }
17024
17025 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
17026 {
17027 Local0 = \BRLV
17028 Local1 = (Local0 + 0x02)
17029 If ((Local1 <= 0x11))
17030 {
17031 Return (DerefOf (Index (\_SB.PCI0.LPC.EC.BRTW, Local1)))
17032 }
17033 Else
17034 {
17035 Return (Zero)
17036 }
17037 }
17038 }
17039
17040 Scope (\_SB.PCI0.PEG.VID.LCD0)
17041 {
17042 Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
17043 {
17044 If (\WVIS)
17045 {
17046 \NBCF = 0x01
17047 }
17048
17049 If (\WIN8)
17050 {
17051 Return (Package (0x67)
17052 {
17053 0x64,
17054 0x64,
17055 0x00,
17056 0x01,
17057 0x02,
17058 0x03,
17059 0x04,
17060 0x05,
17061 0x06,
17062 0x07,
17063 0x08,
17064 0x09,
17065 0x0A,
17066 0x0B,
17067 0x0C,
17068 0x0D,
17069 0x0E,
17070 0x0F,
17071 0x10,
17072 0x11,
17073 0x12,
17074 0x13,
17075 0x14,
17076 0x15,
17077 0x16,
17078 0x17,
17079 0x18,
17080 0x19,
17081 0x1A,
17082 0x1B,
17083 0x1C,
17084 0x1D,
17085 0x1E,
17086 0x1F,
17087 0x20,
17088 0x21,
17089 0x22,
17090 0x23,
17091 0x24,
17092 0x25,
17093 0x26,
17094 0x27,
17095 0x28,
17096 0x29,
17097 0x2A,
17098 0x2B,
17099 0x2C,
17100 0x2D,
17101 0x2E,
17102 0x2F,
17103 0x30,
17104 0x31,
17105 0x32,
17106 0x33,
17107 0x34,
17108 0x35,
17109 0x36,
17110 0x37,
17111 0x38,
17112 0x39,
17113 0x3A,
17114 0x3B,
17115 0x3C,
17116 0x3D,
17117 0x3E,
17118 0x3F,
17119 0x40,
17120 0x41,
17121 0x42,
17122 0x43,
17123 0x44,
17124 0x45,
17125 0x46,
17126 0x47,
17127 0x48,
17128 0x49,
17129 0x4A,
17130 0x4B,
17131 0x4C,
17132 0x4D,
17133 0x4E,
17134 0x4F,
17135 0x50,
17136 0x51,
17137 0x52,
17138 0x53,
17139 0x54,
17140 0x55,
17141 0x56,
17142 0x57,
17143 0x58,
17144 0x59,
17145 0x5A,
17146 0x5B,
17147 0x5C,
17148 0x5D,
17149 0x5E,
17150 0x5F,
17151 0x60,
17152 0x61,
17153 0x62,
17154 0x63,
17155 0x64
17156 })
17157 }
17158
17159 Return (\_SB.PCI0.LPC.EC.BRTW)
17160 }
17161
17162 Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
17163 {
17164 If (((\WIN7 != 0x00) && \_SB.PCI0.PEG.VID.ISOP ()))
17165 {
17166 \_SB.PCI0.VID.LCD0._BCM (Arg0)
17167 }
17168 Else
17169 {
17170 If (\NBCF)
17171 {
17172 Local0 = Match (\_SB.PCI0.LPC.EC.BRTW, MEQ, Arg0, MTR, 0x00, 0x02)
17173 If ((Local0 != Ones))
17174 {
17175 Local1 = (Local0 - 0x02)
17176 \VBRC (Local1)
17177 \BRLV = Local1
17178 }
17179 }
17180 }
17181 }
17182
17183 Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
17184 {
17185 If (((\WIN7 != 0x00) && \_SB.PCI0.PEG.VID.ISOP ()))
17186 {
17187 Return (\_SB.PCI0.VID.LCD0._BQC ())
17188 }
17189 Else
17190 {
17191 Local0 = \BRLV
17192 Local1 = (Local0 + 0x02)
17193 If ((Local1 <= 0x11))
17194 {
17195 Return (DerefOf (Index (\_SB.PCI0.LPC.EC.BRTW, Local1)))
17196 }
17197 Else
17198 {
17199 Return (Zero)
17200 }
17201 }
17202 }
17203 }
17204
17205 Scope (\_SB.PCI0.SAT1)
17206 {
17207 Device (PRT0)
17208 {
17209 Name (DIP0, 0x00)
17210 Name (FDEV, Zero)
17211 Name (FDRP, Zero)
17212 Name (HDTF, Buffer (0x0E)
17213 {
17214 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17215 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5 /* ...... */
17216 })
17217 Name (HETF, Buffer (0x15)
17218 {
17219 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17220 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09, /* ........ */
17221 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17222 })
17223 Name (ERTF, Buffer (0x15)
17224 {
17225 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17226 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17227 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17228 })
17229 Name (HPTF, Buffer (0x15)
17230 {
17231 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17232 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17233 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17234 })
17235 Name (HQTF, Buffer (0x1C)
17236 {
17237 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17238 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17239 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00, /* ........ */
17240 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17241 })
17242 Name (HXTF, Buffer (0x1C)
17243 {
17244 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17245 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17246 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00, /* ........ */
17247 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17248 })
17249 Name (DDTF, Buffer (0x0E)
17250 {
17251 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17252 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3 /* ...... */
17253 })
17254 CreateByteField (DDTF, 0x01, DTAT)
17255 CreateByteField (DDTF, 0x08, DTFT)
17256 Name (DGTF, Buffer (0x15)
17257 {
17258 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17259 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03, /* ........ */
17260 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17261 })
17262 CreateByteField (DGTF, 0x01, GTAT)
17263 CreateByteField (DGTF, 0x08, GTFT)
17264 Name (_ADR, 0xFFFF) // _ADR: Address
17265 Method (_SDD, 1, NotSerialized) // _SDD: Set Device Data
17266 {
17267 DIP0 = 0x00
17268 If ((SizeOf (Arg0) == 0x0200))
17269 {
17270 CreateWordField (Arg0, 0x9C, M078)
17271 If ((\DPP0 && (M078 & 0x08)))
17272 {
17273 DIP0 = 0x01
17274 }
17275
17276 CreateByteField (Arg0, 0x9D, BFDS)
17277 ToInteger (BFDS, FDEV) /* \_SB_.PCI0.SAT1.PRT0.FDEV */
17278 CreateByteField (Arg0, 0x9A, BFRP)
17279 ToInteger (BFRP, FDRP) /* \_SB_.PCI0.SAT1.PRT0.FDRP */
17280 }
17281 }
17282
17283 Method (_GTF, 0, NotSerialized) // _GTF: Get Task File
17284 {
17285 If (DIP0)
17286 {
17287 If ((((DVS0 == 0x01) && ((FDEV & 0x01) == 0x01)) &&
17288 ((FDRP & 0x80) == 0x80)))
17289 {
17290 Return (HQTF) /* \_SB_.PCI0.SAT1.PRT0.HQTF */
17291 }
17292 Else
17293 {
17294 Return (HPTF) /* \_SB_.PCI0.SAT1.PRT0.HPTF */
17295 }
17296 }
17297 Else
17298 {
17299 If ((((DVS0 == 0x01) && ((FDEV & 0x01) == 0x01)) &&
17300 ((FDRP & 0x80) == 0x80)))
17301 {
17302 Return (HETF) /* \_SB_.PCI0.SAT1.PRT0.HETF */
17303 }
17304 Else
17305 {
17306 Return (HDTF) /* \_SB_.PCI0.SAT1.PRT0.HDTF */
17307 }
17308 }
17309 }
17310 }
17311
17312 Device (PRT1)
17313 {
17314 Name (DIP0, 0x00)
17315 Name (FDEV, 0x00)
17316 Name (FDRP, 0x00)
17317 Name (HDTF, Buffer (0x0E)
17318 {
17319 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17320 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5 /* ...... */
17321 })
17322 Name (HETF, Buffer (0x15)
17323 {
17324 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17325 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09, /* ........ */
17326 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17327 })
17328 Name (ERTF, Buffer (0x15)
17329 {
17330 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17331 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17332 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17333 })
17334 Name (HPTF, Buffer (0x15)
17335 {
17336 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17337 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17338 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17339 })
17340 Name (HQTF, Buffer (0x1C)
17341 {
17342 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17343 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17344 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00, /* ........ */
17345 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17346 })
17347 Name (HXTF, Buffer (0x1C)
17348 {
17349 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17350 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17351 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00, /* ........ */
17352 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17353 })
17354 Name (DDTF, Buffer (0x0E)
17355 {
17356 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17357 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3 /* ...... */
17358 })
17359 CreateByteField (DDTF, 0x01, DTAT)
17360 CreateByteField (DDTF, 0x08, DTFT)
17361 Name (DGTF, Buffer (0x15)
17362 {
17363 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17364 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03, /* ........ */
17365 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17366 })
17367 CreateByteField (DGTF, 0x01, GTAT)
17368 CreateByteField (DGTF, 0x08, GTFT)
17369 Name (_ADR, 0x0001FFFF) // _ADR: Address
17370 Method (_SDD, 1, NotSerialized) // _SDD: Set Device Data
17371 {
17372 DIP0 = 0x00
17373 If ((SizeOf (Arg0) == 0x0200))
17374 {
17375 CreateWordField (Arg0, 0x9C, M078)
17376 If ((\DPP1 && (M078 & 0x08)))
17377 {
17378 DIP0 = 0x01
17379 }
17380
17381 CreateByteField (Arg0, 0x9D, BFDS)
17382 ToInteger (BFDS, FDEV) /* \_SB_.PCI0.SAT1.PRT1.FDEV */
17383 CreateByteField (Arg0, 0x9A, BFRP)
17384 ToInteger (BFRP, FDRP) /* \_SB_.PCI0.SAT1.PRT1.FDRP */
17385 }
17386 }
17387
17388 Method (_GTF, 0, NotSerialized) // _GTF: Get Task File
17389 {
17390 If (DIP0)
17391 {
17392 If ((((DVS1 == 0x01) && ((FDEV & 0x01) == 0x01)) &&
17393 ((FDRP & 0x80) == 0x80)))
17394 {
17395 Return (HQTF) /* \_SB_.PCI0.SAT1.PRT1.HQTF */
17396 }
17397 Else
17398 {
17399 Return (HPTF) /* \_SB_.PCI0.SAT1.PRT1.HPTF */
17400 }
17401 }
17402 Else
17403 {
17404 If ((((DVS1 == 0x01) && ((FDEV & 0x01) == 0x01)) &&
17405 ((FDRP & 0x80) == 0x80)))
17406 {
17407 Return (HETF) /* \_SB_.PCI0.SAT1.PRT1.HETF */
17408 }
17409 Else
17410 {
17411 Return (HDTF) /* \_SB_.PCI0.SAT1.PRT1.HDTF */
17412 }
17413 }
17414 }
17415 }
17416
17417 Device (PRT2)
17418 {
17419 Name (DIP0, 0x00)
17420 Name (FDEV, 0x00)
17421 Name (FDRP, 0x00)
17422 Name (HDTF, Buffer (0x0E)
17423 {
17424 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17425 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5 /* ...... */
17426 })
17427 Name (HETF, Buffer (0x15)
17428 {
17429 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17430 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09, /* ........ */
17431 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17432 })
17433 Name (ERTF, Buffer (0x15)
17434 {
17435 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17436 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17437 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17438 })
17439 Name (HPTF, Buffer (0x15)
17440 {
17441 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17442 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17443 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17444 })
17445 Name (HQTF, Buffer (0x1C)
17446 {
17447 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17448 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17449 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00, /* ........ */
17450 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17451 })
17452 Name (HXTF, Buffer (0x1C)
17453 {
17454 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17455 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17456 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00, /* ........ */
17457 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17458 })
17459 Name (DDTF, Buffer (0x0E)
17460 {
17461 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17462 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3 /* ...... */
17463 })
17464 CreateByteField (DDTF, 0x01, DTAT)
17465 CreateByteField (DDTF, 0x08, DTFT)
17466 Name (DGTF, Buffer (0x15)
17467 {
17468 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17469 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03, /* ........ */
17470 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17471 })
17472 CreateByteField (DGTF, 0x01, GTAT)
17473 CreateByteField (DGTF, 0x08, GTFT)
17474 Name (_ADR, 0x0002FFFF) // _ADR: Address
17475 Method (_SDD, 1, NotSerialized) // _SDD: Set Device Data
17476 {
17477 DIP0 = 0x00
17478 If ((SizeOf (Arg0) == 0x0200))
17479 {
17480 CreateWordField (Arg0, 0x9C, M078)
17481 If ((\DPP2 && (M078 & 0x08)))
17482 {
17483 DIP0 = 0x01
17484 }
17485
17486 CreateByteField (Arg0, 0x9D, BFDS)
17487 ToInteger (BFDS, FDEV) /* \_SB_.PCI0.SAT1.PRT2.FDEV */
17488 CreateByteField (Arg0, 0x9A, BFRP)
17489 ToInteger (BFRP, FDRP) /* \_SB_.PCI0.SAT1.PRT2.FDRP */
17490 }
17491 }
17492
17493 Method (_GTF, 0, NotSerialized) // _GTF: Get Task File
17494 {
17495 If (DIP0)
17496 {
17497 If ((((DVS2 == 0x01) && ((FDEV & 0x01) == 0x01)) &&
17498 ((FDRP & 0x80) == 0x80)))
17499 {
17500 Return (HQTF) /* \_SB_.PCI0.SAT1.PRT2.HQTF */
17501 }
17502 Else
17503 {
17504 Return (HPTF) /* \_SB_.PCI0.SAT1.PRT2.HPTF */
17505 }
17506 }
17507 Else
17508 {
17509 If ((((DVS2 == 0x01) && ((FDEV & 0x01) == 0x01)) &&
17510 ((FDRP & 0x80) == 0x80)))
17511 {
17512 Return (HETF) /* \_SB_.PCI0.SAT1.PRT2.HETF */
17513 }
17514 Else
17515 {
17516 Return (HDTF) /* \_SB_.PCI0.SAT1.PRT2.HDTF */
17517 }
17518 }
17519 }
17520 }
17521
17522 Device (PRT3)
17523 {
17524 Name (DIP0, 0x00)
17525 Name (FDEV, 0x00)
17526 Name (FDRP, 0x00)
17527 Name (HDTF, Buffer (0x0E)
17528 {
17529 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17530 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5 /* ...... */
17531 })
17532 Name (HETF, Buffer (0x15)
17533 {
17534 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17535 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09, /* ........ */
17536 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17537 })
17538 Name (ERTF, Buffer (0x15)
17539 {
17540 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17541 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17542 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17543 })
17544 Name (HPTF, Buffer (0x15)
17545 {
17546 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17547 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17548 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17549 })
17550 Name (HQTF, Buffer (0x1C)
17551 {
17552 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17553 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17554 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00, /* ........ */
17555 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17556 })
17557 Name (HXTF, Buffer (0x1C)
17558 {
17559 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17560 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17561 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00, /* ........ */
17562 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17563 })
17564 Name (DDTF, Buffer (0x0E)
17565 {
17566 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17567 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3 /* ...... */
17568 })
17569 CreateByteField (DDTF, 0x01, DTAT)
17570 CreateByteField (DDTF, 0x08, DTFT)
17571 Name (DGTF, Buffer (0x15)
17572 {
17573 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17574 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03, /* ........ */
17575 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17576 })
17577 CreateByteField (DGTF, 0x01, GTAT)
17578 CreateByteField (DGTF, 0x08, GTFT)
17579 Name (_ADR, 0x0003FFFF) // _ADR: Address
17580 Method (_SDD, 1, NotSerialized) // _SDD: Set Device Data
17581 {
17582 DIP0 = 0x00
17583 If ((SizeOf (Arg0) == 0x0200))
17584 {
17585 CreateWordField (Arg0, 0x9C, M078)
17586 If ((\DPP3 && (M078 & 0x08)))
17587 {
17588 DIP0 = 0x01
17589 }
17590
17591 CreateByteField (Arg0, 0x9D, BFDS)
17592 ToInteger (BFDS, FDEV) /* \_SB_.PCI0.SAT1.PRT3.FDEV */
17593 CreateByteField (Arg0, 0x9A, BFRP)
17594 ToInteger (BFRP, FDRP) /* \_SB_.PCI0.SAT1.PRT3.FDRP */
17595 }
17596 }
17597
17598 Method (_GTF, 0, NotSerialized) // _GTF: Get Task File
17599 {
17600 If (DIP0)
17601 {
17602 If ((((DVS3 == 0x01) && ((FDEV & 0x01) == 0x01)) &&
17603 ((FDRP & 0x80) == 0x80)))
17604 {
17605 Return (HQTF) /* \_SB_.PCI0.SAT1.PRT3.HQTF */
17606 }
17607 Else
17608 {
17609 Return (HPTF) /* \_SB_.PCI0.SAT1.PRT3.HPTF */
17610 }
17611 }
17612 Else
17613 {
17614 If ((((DVS3 == 0x01) && ((FDEV & 0x01) == 0x01)) &&
17615 ((FDRP & 0x80) == 0x80)))
17616 {
17617 Return (HETF) /* \_SB_.PCI0.SAT1.PRT3.HETF */
17618 }
17619 Else
17620 {
17621 Return (HDTF) /* \_SB_.PCI0.SAT1.PRT3.HDTF */
17622 }
17623 }
17624 }
17625 }
17626
17627 Device (PRT4)
17628 {
17629 Name (DIP0, 0x00)
17630 Name (HDTF, Buffer (0x0E)
17631 {
17632 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17633 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5 /* ...... */
17634 })
17635 Name (HETF, Buffer (0x15)
17636 {
17637 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17638 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09, /* ........ */
17639 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17640 })
17641 Name (ERTF, Buffer (0x15)
17642 {
17643 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17644 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17645 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17646 })
17647 Name (HPTF, Buffer (0x15)
17648 {
17649 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17650 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17651 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17652 })
17653 Name (HQTF, Buffer (0x1C)
17654 {
17655 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17656 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* ........ */
17657 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00, /* ........ */
17658 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17659 })
17660 Name (HXTF, Buffer (0x1C)
17661 {
17662 /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* ........ */
17663 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* ......_. */
17664 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00, /* ........ */
17665 /* 0018 */ 0x00, 0x00, 0xA0, 0xEF /* .... */
17666 })
17667 Name (DDTF, Buffer (0x0E)
17668 {
17669 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17670 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3 /* ...... */
17671 })
17672 CreateByteField (DDTF, 0x01, DTAT)
17673 CreateByteField (DDTF, 0x08, DTFT)
17674 Name (DGTF, Buffer (0x15)
17675 {
17676 /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* ........ */
17677 /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03, /* ........ */
17678 /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF /* ..... */
17679 })
17680 CreateByteField (DGTF, 0x01, GTAT)
17681 CreateByteField (DGTF, 0x08, GTFT)
17682 Name (_ADR, 0x0004FFFF) // _ADR: Address
17683 Method (_SDD, 1, NotSerialized) // _SDD: Set Device Data
17684 {
17685 DIP0 = 0x00
17686 If ((SizeOf (Arg0) == 0x0200))
17687 {
17688 CreateWordField (Arg0, 0x9C, M078)
17689 If ((\DPP4 && (M078 & 0x08)))
17690 {
17691 DIP0 = 0x01
17692 }
17693 }
17694 }
17695
17696 Method (_GTF, 0, NotSerialized) // _GTF: Get Task File
17697 {
17698 If (DIP0)
17699 {
17700 Return (HPTF) /* \_SB_.PCI0.SAT1.PRT4.HPTF */
17701 }
17702
17703 Return (HDTF) /* \_SB_.PCI0.SAT1.PRT4.HDTF */
17704 }
17705 }
17706 }
17707
17708 Scope (\_SB.PCI0.LPC.EC.BAT1)
17709 {
17710 Method (_Q4C, 0, NotSerialized) // _Qxx: EC Query
17711 {
17712 \_SB.PCI0.LPC.EC.CLPM ()
17713 If (\_SB.PCI0.LPC.EC.HB1A)
17714 {
17715 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x4010)
17716 }
17717 Else
17718 {
17719 \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x4011)
17720 If (\_SB.PCI0.LPC.EC.BAT1.XB1S)
17721 {
17722 Notify (\_SB.PCI0.LPC.EC.BAT1, 0x03) // Eject Request
17723 }
17724 }
17725 }
17726
17727 Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
17728 {
17729 If (Arg0)
17730 {
17731 \_SB.PCI0.LPC.EC.BAT1.B1ST = 0x00
17732 \_SB.PCI0.LPC.EC.BAT1.SBLI = 0x01
17733 \_SB.PCI0.LPC.EC.BAT1.XB1S = 0x00
17734 }
17735 }
17736 }
17737
17738 Scope (\_PR.CPU0)
17739 {
17740 Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilities
17741 {
17742 Local0 = Zero
17743 Local0 = \_SB.PCI0.LPC.EC.LPMD ()
17744 If (!Local0)
17745 {
17746 If (((\_SB.PCI0.LPC.EC.AC._PSR () && \TCFA) || (!\_SB.PCI0.LPC.EC.AC._PSR () && \TCFD)))
17747 {
17748 If ((\_SB.PCI0.LPC.EC.TSL0 & 0x76))
17749 {
17750 Local0 = \LWST
17751 }
17752 }
17753 Else
17754 {
17755 If ((\_SB.PCI0.LPC.EC.TSL0 & 0x77))
17756 {
17757 Local0 = \LWST
17758 }
17759 }
17760
17761 If (!Local0)
17762 {
17763 If (\_PR.CLVL)
17764 {
17765 If (\PPCA)
17766 {
17767 Local0 = \PPCA
17768 }
17769 }
17770 Else
17771 {
17772 If ((\PPCA || \FTPS))
17773 {
17774 If ((\FTPS <= \PPCA))
17775 {
17776 Local0 = \PPCA
17777 }
17778 Else
17779 {
17780 Local0 = \FTPS
17781 }
17782 }
17783 }
17784 }
17785 }
17786
17787 If (\_PR.CLVL)
17788 {
17789 If ((Local0 == Zero))
17790 {
17791 If ((\CTPR < \FTPS))
17792 {
17793 Local0 = \FTPS
17794 }
17795 Else
17796 {
17797 Local0 = \CTPR
17798 }
17799 }
17800 Else
17801 {
17802 If ((\CTPR >= Local0))
17803 {
17804 Local0 = \CTPR
17805 If ((\LWST > Local0))
17806 {
17807 Local0++
17808 }
17809 }
17810 }
17811 }
17812
17813 If ((\_SB.PCI0.PEG.VID.CPPC > Local0))
17814 {
17815 Local0 = \_SB.PCI0.PEG.VID.CPPC
17816 }
17817
17818 \PPCR = Local0
17819 Return (Local0)
17820 }
17821
17822 Method (_PCT, 0, NotSerialized) // _PCT: Performance Control
17823 {
17824 If (\_PR.CLVL)
17825 {
17826 \CTPR = \_PR.CPPC
17827 }
17828
17829 If (((CFGD & One) && (PDC0 & One)))
17830 {
17831 Return (Package (0x02)
17832 {
17833 ResourceTemplate ()
17834 {
17835 Register (FFixedHW,
17836 0x00, // Bit Width
17837 0x00, // Bit Offset
17838 0x0000000000000000, // Address
17839 ,)
17840 },
17841
17842 ResourceTemplate ()
17843 {
17844 Register (FFixedHW,
17845 0x00, // Bit Width
17846 0x00, // Bit Offset
17847 0x0000000000000000, // Address
17848 ,)
17849 }
17850 })
17851 }
17852 }
17853
17854 Name (_PSS, Package (0x10) // _PSS: Performance Supported States
17855 {
17856 Package (0x06)
17857 {
17858 0x00000A29,
17859 0x00003A98,
17860 0x0000000A,
17861 0x0000000A,
17862 0x00002400,
17863 0x00002400
17864 },
17865
17866 Package (0x06)
17867 {
17868 0x00000A28,
17869 0x00003A98,
17870 0x0000000A,
17871 0x0000000A,
17872 0x00001A00,
17873 0x00001A00
17874 },
17875
17876 Package (0x06)
17877 {
17878 0x000009C4,
17879 0x0000379C,
17880 0x0000000A,
17881 0x0000000A,
17882 0x00001900,
17883 0x00001900
17884 },
17885
17886 Package (0x06)
17887 {
17888 0x000008FC,
17889 0x000031D0,
17890 0x0000000A,
17891 0x0000000A,
17892 0x00001700,
17893 0x00001700
17894 },
17895
17896 Package (0x06)
17897 {
17898 0x00000834,
17899 0x00002C3D,
17900 0x0000000A,
17901 0x0000000A,
17902 0x00001500,
17903 0x00001500
17904 },
17905
17906 Package (0x06)
17907 {
17908 0x000007D0,
17909 0x0000298B,
17910 0x0000000A,
17911 0x0000000A,
17912 0x00001400,
17913 0x00001400
17914 },
17915
17916 Package (0x06)
17917 {
17918 0x00000708,
17919 0x000024D5,
17920 0x0000000A,
17921 0x0000000A,
17922 0x00001200,
17923 0x00001200
17924 },
17925
17926 Package (0x06)
17927 {
17928 0x000006A4,
17929 0x00002249,
17930 0x0000000A,
17931 0x0000000A,
17932 0x00001100,
17933 0x00001100
17934 },
17935
17936 Package (0x06)
17937 {
17938 0x000005DC,
17939 0x00001D5A,
17940 0x0000000A,
17941 0x0000000A,
17942 0x00000F00,
17943 0x00000F00
17944 },
17945
17946 Package (0x06)
17947 {
17948 0x00000578,
17949 0x00001AF6,
17950 0x0000000A,
17951 0x0000000A,
17952 0x00000E00,
17953 0x00000E00
17954 },
17955
17956 Package (0x06)
17957 {
17958 0x000004B0,
17959 0x000016D5,
17960 0x0000000A,
17961 0x0000000A,
17962 0x00000C00,
17963 0x00000C00
17964 },
17965
17966 Package (0x06)
17967 {
17968 0x0000044C,
17969 0x00001497,
17970 0x0000000A,
17971 0x0000000A,
17972 0x00000B00,
17973 0x00000B00
17974 },
17975
17976 Package (0x06)
17977 {
17978 0x00000384,
17979 0x00001042,
17980 0x0000000A,
17981 0x0000000A,
17982 0x00000900,
17983 0x00000900
17984 },
17985
17986 Package (0x06)
17987 {
17988 0x00000320,
17989 0x00000E2A,
17990 0x0000000A,
17991 0x0000000A,
17992 0x00000800,
17993 0x00000800
17994 },
17995
17996 Package (0x06)
17997 {
17998 0x00000258,
17999 0x00000A96,
18000 0x0000000A,
18001 0x0000000A,
18002 0x00000600,
18003 0x00000600
18004 },
18005
18006 Package (0x06)
18007 {
18008 0x000001F4,
18009 0x000008A2,
18010 0x0000000A,
18011 0x0000000A,
18012 0x00000500,
18013 0x00000500
18014 }
18015 })
18016 Package (0x06)
18017 {
18018 0x80000000,
18019 0x80000000,
18020 0x80000000,
18021 0x80000000,
18022 0x80000000,
18023 0x80000000
18024 }
18025
18026 Package (0x06)
18027 {
18028 0x80000000,
18029 0x80000000,
18030 0x80000000,
18031 0x80000000,
18032 0x80000000,
18033 0x80000000
18034 }
18035
18036 Package (0x06)
18037 {
18038 0x80000000,
18039 0x80000000,
18040 0x80000000,
18041 0x80000000,
18042 0x80000000,
18043 0x80000000
18044 }
18045
18046 Package (0x06)
18047 {
18048 0x80000000,
18049 0x80000000,
18050 0x80000000,
18051 0x80000000,
18052 0x80000000,
18053 0x80000000
18054 }
18055
18056 Package (0x06)
18057 {
18058 0x80000000,
18059 0x80000000,
18060 0x80000000,
18061 0x80000000,
18062 0x80000000,
18063 0x80000000
18064 }
18065
18066 Package (0x06)
18067 {
18068 0x80000000,
18069 0x80000000,
18070 0x80000000,
18071 0x80000000,
18072 0x80000000,
18073 0x80000000
18074 }
18075
18076 Package (0x06)
18077 {
18078 0x80000000,
18079 0x80000000,
18080 0x80000000,
18081 0x80000000,
18082 0x80000000,
18083 0x80000000
18084 }
18085
18086 Package (0x06)
18087 {
18088 0x80000000,
18089 0x80000000,
18090 0x80000000,
18091 0x80000000,
18092 0x80000000,
18093 0x80000000
18094 }
18095
18096 Package (0x06)
18097 {
18098 0x80000000,
18099 0x80000000,
18100 0x80000000,
18101 0x80000000,
18102 0x80000000,
18103 0x80000000
18104 }
18105
18106 Package (0x06)
18107 {
18108 0x80000000,
18109 0x80000000,
18110 0x80000000,
18111 0x80000000,
18112 0x80000000,
18113 0x80000000
18114 }
18115
18116 Package (0x06)
18117 {
18118 0x80000000,
18119 0x80000000,
18120 0x80000000,
18121 0x80000000,
18122 0x80000000,
18123 0x80000000
18124 }
18125
18126 Package (0x06)
18127 {
18128 0x80000000,
18129 0x80000000,
18130 0x80000000,
18131 0x80000000,
18132 0x80000000,
18133 0x80000000
18134 }
18135
18136 Package (0x06)
18137 {
18138 0x80000000,
18139 0x80000000,
18140 0x80000000,
18141 0x80000000,
18142 0x80000000,
18143 0x80000000
18144 }
18145
18146 Package (0x06)
18147 {
18148 0x80000000,
18149 0x80000000,
18150 0x80000000,
18151 0x80000000,
18152 0x80000000,
18153 0x80000000
18154 }
18155
18156 Package (0x06)
18157 {
18158 0x80000000,
18159 0x80000000,
18160 0x80000000,
18161 0x80000000,
18162 0x80000000,
18163 0x80000000
18164 }
18165
18166 Package (0x06)
18167 {
18168 0x80000000,
18169 0x80000000,
18170 0x80000000,
18171 0x80000000,
18172 0x80000000,
18173 0x80000000
18174 }
18175
18176 Name (PSDF, Zero)
18177 Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies
18178 {
18179 If (!PSDF)
18180 {
18181 Index (DerefOf (Index (HPSD, Zero)), 0x04) = TCNT /* \TCNT */
18182 Index (DerefOf (Index (SPSD, Zero)), 0x04) = TCNT /* \TCNT */
18183 PSDF = Ones
18184 }
18185
18186 If ((PDC0 & 0x0800))
18187 {
18188 Return (HPSD) /* \_PR_.CPU0.HPSD */
18189 }
18190
18191 Return (SPSD) /* \_PR_.CPU0.SPSD */
18192 }
18193
18194 Name (HPSD, Package (0x01)
18195 {
18196 Package (0x05)
18197 {
18198 0x05,
18199 Zero,
18200 Zero,
18201 0xFE,
18202 0x80
18203 }
18204 })
18205 Name (SPSD, Package (0x01)
18206 {
18207 Package (0x05)
18208 {
18209 0x05,
18210 Zero,
18211 Zero,
18212 0xFC,
18213 0x80
18214 }
18215 })
18216 }
18217
18218 Scope (\)
18219 {
18220 Name (SSDT, Package (0x0C)
18221 {
18222 "CPU0IST ",
18223 0xA4B86918,
18224 0x000006C5,
18225 "APIST ",
18226 0xACBCA618,
18227 0x000005AA,
18228 "CPU0CST ",
18229 0xACBC9918,
18230 0x00000436,
18231 "APCST ",
18232 0xACBC8D98,
18233 0x00000119
18234 })
18235 Name (\PDC0, 0x80000000)
18236 Name (\PDC1, 0x80000000)
18237 Name (\PDC2, 0x80000000)
18238 Name (\PDC3, 0x80000000)
18239 Name (\PDC4, 0x80000000)
18240 Name (\PDC5, 0x80000000)
18241 Name (\PDC6, 0x80000000)
18242 Name (\PDC7, 0x80000000)
18243 Name (\SDTL, Zero)
18244 }
18245
18246 Scope (\_PR)
18247 {
18248 OperationRegion (PNVS, SystemMemory, 0xACD6AF98, 0x0053)
18249 Field (PNVS, AnyAcc, Lock, Preserve)
18250 {
18251 PGRV, 8,
18252 CFGD, 32,
18253 Offset (0x06),
18254 ACRT, 8,
18255 APSV, 8,
18256 AAC0, 8,
18257 CPID, 32,
18258 CPPC, 8,
18259 CCTP, 8,
18260 CLVL, 8,
18261 CBMI, 8,
18262 PL10, 16,
18263 PL20, 16,
18264 PLW0, 8,
18265 CTC0, 8,
18266 TAR0, 8,
18267 PPC0, 8,
18268 PL11, 16,
18269 PL21, 16,
18270 PLW1, 8,
18271 CTC1, 8,
18272 TAR1, 8,
18273 PPC1, 8,
18274 PL12, 16,
18275 PL22, 16,
18276 PLW2, 8,
18277 CTC2, 8,
18278 TAR2, 8,
18279 PPC2, 8,
18280 C3MW, 8,
18281 C6MW, 8,
18282 C7MW, 8,
18283 CDMW, 8,
18284 C3LT, 16,
18285 C6LT, 16,
18286 C7LT, 16,
18287 CDLT, 16,
18288 CDLV, 16,
18289 CDPW, 16,
18290 MPMF, 8,
18291 DTSE, 8,
18292 DTS1, 8,
18293 DTS2, 8,
18294 DTSF, 8,
18295 PDTS, 8,
18296 PKGA, 8,
18297 DTS3, 8,
18298 DTS4, 8,
18299 BGMA, 64,
18300 BGMS, 8,
18301 BGIA, 16,
18302 BGIL, 16,
18303 DSIA, 16,
18304 DSIL, 8,
18305 DSAE, 8
18306 }
18307
18308 OperationRegion (IO_D, SystemIO, \_PR.DSIA, \_PR.DSIL)
18309 Field (IO_D, ByteAcc, NoLock, Preserve)
18310 {
18311 TRPD, 8
18312 }
18313
18314 OperationRegion (IO_P, SystemIO, \_PR.BGIA, \_PR.BGIL)
18315 Field (IO_P, ByteAcc, NoLock, Preserve)
18316 {
18317 TRPF, 8
18318 }
18319 }
18320
18321 Scope (\_PR.CPU0)
18322 {
18323 Name (HI0, Zero)
18324 Name (HC0, Zero)
18325 Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
18326 {
18327 If (CondRefOf (\_PR.CPU0._PPC))
18328 {
18329 \_PR.CPU0._PPC = CPPC /* \_PR_.CPPC */
18330 }
18331
18332 Local0 = CPDC (Arg0)
18333 GCAP (Local0)
18334 Return (Local0)
18335 }
18336
18337 Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
18338 {
18339 Local0 = COSC (Arg0, Arg1, Arg2, Arg3)
18340 GCAP (Local0)
18341 Return (Local0)
18342 }
18343
18344 Method (CPDC, 1, NotSerialized)
18345 {
18346 CreateDWordField (Arg0, Zero, REVS)
18347 CreateDWordField (Arg0, 0x04, SIZE)
18348 Local0 = SizeOf (Arg0)
18349 Local1 = (Local0 - 0x08)
18350 CreateField (Arg0, 0x40, (Local1 * 0x08), TEMP)
18351 Name (STS0, Buffer (0x04)
18352 {
18353 0x00, 0x00, 0x00, 0x00 /* .... */
18354 })
18355 Concatenate (STS0, TEMP, Local2)
18356 Return (COSC (ToUUID ("4077a616-290c-47be-9ebd-d87058713953"), REVS, SIZE, Local2))
18357 }
18358
18359 Method (COSC, 4, NotSerialized)
18360 {
18361 CreateDWordField (Arg3, Zero, STS0)
18362 CreateDWordField (Arg3, 0x04, CAP0)
18363 CreateDWordField (Arg0, Zero, IID0)
18364 CreateDWordField (Arg0, 0x04, IID1)
18365 CreateDWordField (Arg0, 0x08, IID2)
18366 CreateDWordField (Arg0, 0x0C, IID3)
18367 Name (UID0, ToUUID ("4077a616-290c-47be-9ebd-d87058713953"))
18368 CreateDWordField (UID0, Zero, EID0)
18369 CreateDWordField (UID0, 0x04, EID1)
18370 CreateDWordField (UID0, 0x08, EID2)
18371 CreateDWordField (UID0, 0x0C, EID3)
18372 If (!(((IID0 == EID0) && (IID1 == EID1)) && ((
18373 IID2 == EID2) && (IID3 == EID3))))
18374 {
18375 STS0 = 0x06
18376 Return (Arg3)
18377 }
18378
18379 If ((Arg1 != One))
18380 {
18381 STS0 = 0x0A
18382 Return (Arg3)
18383 }
18384
18385 Return (Arg3)
18386 }
18387
18388 Method (GCAP, 1, NotSerialized)
18389 {
18390 CreateDWordField (Arg0, Zero, STS0)
18391 CreateDWordField (Arg0, 0x04, CAP0)
18392 If (((STS0 == 0x06) || (STS0 == 0x0A)))
18393 {
18394 Return (Zero)
18395 }
18396
18397 If ((STS0 & One))
18398 {
18399 CAP0 &= 0x0BFF
18400 Return (Zero)
18401 }
18402
18403 PDC0 = ((PDC0 & 0x7FFFFFFF) | CAP0) /* \_PR_.CPU0.GCAP.CAP0 */
18404 If ((CFGD & 0x7A))
18405 {
18406 If ((((CFGD & 0x0200) && (PDC0 & 0x18)) && !
18407 (SDTL & 0x02)))
18408 {
18409 SDTL |= 0x02
18410 OperationRegion (CST0, SystemMemory, DerefOf (Index (SSDT, 0x07)), DerefOf (Index (SSDT, 0x08)))
18411 Load (CST0, HC0) /* \_PR_.CPU0.HC0_ */
18412 }
18413 }
18414
18415 Return (Zero)
18416 }
18417 }
18418
18419 Scope (\_PR.CPU1)
18420 {
18421 Name (HI1, Zero)
18422 Name (HC1, Zero)
18423 Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
18424 {
18425 Local0 = \_PR.CPU0.CPDC (Arg0)
18426 GCAP (Local0)
18427 Return (Local0)
18428 }
18429
18430 Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
18431 {
18432 Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
18433 GCAP (Local0)
18434 Return (Local0)
18435 }
18436
18437 Method (GCAP, 1, NotSerialized)
18438 {
18439 CreateDWordField (Arg0, Zero, STS1)
18440 CreateDWordField (Arg0, 0x04, CAP1)
18441 If (((STS1 == 0x06) || (STS1 == 0x0A)))
18442 {
18443 Return (Zero)
18444 }
18445
18446 If ((STS1 & One))
18447 {
18448 CAP1 &= 0x0BFF
18449 Return (Zero)
18450 }
18451
18452 PDC1 = ((PDC1 & 0x7FFFFFFF) | CAP1) /* \_PR_.CPU1.GCAP.CAP1 */
18453 If (((PDC1 & 0x09) == 0x09))
18454 {
18455 APPT ()
18456 }
18457
18458 If ((PDC1 & 0x18))
18459 {
18460 APCT ()
18461 }
18462
18463 PDC0 = PDC1 /* \PDC1 */
18464 Return (Zero)
18465 }
18466
18467 Method (APCT, 0, NotSerialized)
18468 {
18469 If (((CFGD & 0x7A) && !(SDTL & 0x20)))
18470 {
18471 SDTL |= 0x20
18472 OperationRegion (CST1, SystemMemory, DerefOf (Index (SSDT, 0x0A)), DerefOf (Index (SSDT, 0x0B)))
18473 Load (CST1, HC1) /* \_PR_.CPU1.HC1_ */
18474 }
18475 }
18476
18477 Method (APPT, 0, NotSerialized)
18478 {
18479 If (((CFGD & One) && !(SDTL & 0x10)))
18480 {
18481 SDTL |= 0x10
18482 OperationRegion (IST1, SystemMemory, DerefOf (Index (SSDT, 0x04)), DerefOf (Index (SSDT, 0x05)))
18483 Load (IST1, HI1) /* \_PR_.CPU1.HI1_ */
18484 }
18485 }
18486 }
18487
18488 Scope (\_PR.CPU2)
18489 {
18490 Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
18491 {
18492 Local0 = \_PR.CPU0.CPDC (Arg0)
18493 GCAP (Local0)
18494 Return (Local0)
18495 }
18496
18497 Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
18498 {
18499 Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
18500 GCAP (Local0)
18501 Return (Local0)
18502 }
18503
18504 Method (GCAP, 1, NotSerialized)
18505 {
18506 CreateDWordField (Arg0, Zero, STS2)
18507 CreateDWordField (Arg0, 0x04, CAP2)
18508 If (((STS2 == 0x06) || (STS2 == 0x0A)))
18509 {
18510 Return (Zero)
18511 }
18512
18513 If ((STS2 & One))
18514 {
18515 CAP2 &= 0x0BFF
18516 Return (Zero)
18517 }
18518
18519 PDC2 = ((PDC2 & 0x7FFFFFFF) | CAP2) /* \_PR_.CPU2.GCAP.CAP2 */
18520 If (((PDC2 & 0x09) == 0x09))
18521 {
18522 \_PR.CPU1.APPT ()
18523 }
18524
18525 If ((PDC2 & 0x18))
18526 {
18527 \_PR.CPU1.APCT ()
18528 }
18529
18530 PDC0 = PDC2 /* \PDC2 */
18531 Return (Zero)
18532 }
18533 }
18534
18535 Scope (\_PR.CPU3)
18536 {
18537 Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
18538 {
18539 Local0 = \_PR.CPU0.CPDC (Arg0)
18540 GCAP (Local0)
18541 Return (Local0)
18542 }
18543
18544 Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
18545 {
18546 Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
18547 GCAP (Local0)
18548 Return (Local0)
18549 }
18550
18551 Method (GCAP, 1, NotSerialized)
18552 {
18553 CreateDWordField (Arg0, Zero, STS3)
18554 CreateDWordField (Arg0, 0x04, CAP3)
18555 If (((STS3 == 0x06) || (STS3 == 0x0A)))
18556 {
18557 Return (Zero)
18558 }
18559
18560 If ((STS3 & One))
18561 {
18562 CAP3 &= 0x0BFF
18563 Return (Zero)
18564 }
18565
18566 PDC3 = ((PDC3 & 0x7FFFFFFF) | CAP3) /* \_PR_.CPU3.GCAP.CAP3 */
18567 If (((PDC3 & 0x09) == 0x09))
18568 {
18569 \_PR.CPU1.APPT ()
18570 }
18571
18572 If ((PDC3 & 0x18))
18573 {
18574 \_PR.CPU1.APCT ()
18575 }
18576
18577 PDC0 = PDC3 /* \PDC3 */
18578 Return (Zero)
18579 }
18580 }
18581
18582 Scope (\_PR.CPU4)
18583 {
18584 Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
18585 {
18586 Local0 = \_PR.CPU0.CPDC (Arg0)
18587 GCAP (Local0)
18588 Return (Local0)
18589 }
18590
18591 Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
18592 {
18593 Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
18594 GCAP (Local0)
18595 Return (Local0)
18596 }
18597
18598 Method (GCAP, 1, NotSerialized)
18599 {
18600 CreateDWordField (Arg0, Zero, STS4)
18601 CreateDWordField (Arg0, 0x04, CAP4)
18602 If (((STS4 == 0x06) || (STS4 == 0x0A)))
18603 {
18604 Return (Zero)
18605 }
18606
18607 If ((STS4 & One))
18608 {
18609 CAP4 &= 0x0BFF
18610 Return (Zero)
18611 }
18612
18613 PDC4 = ((PDC4 & 0x7FFFFFFF) | CAP4) /* \_PR_.CPU4.GCAP.CAP4 */
18614 If (((PDC4 & 0x09) == 0x09))
18615 {
18616 \_PR.CPU1.APPT ()
18617 }
18618
18619 If ((PDC4 & 0x18))
18620 {
18621 \_PR.CPU1.APCT ()
18622 }
18623
18624 PDC0 = PDC4 /* \PDC4 */
18625 Return (Zero)
18626 }
18627 }
18628
18629 Scope (\_PR.CPU5)
18630 {
18631 Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
18632 {
18633 Local0 = \_PR.CPU0.CPDC (Arg0)
18634 GCAP (Local0)
18635 Return (Local0)
18636 }
18637
18638 Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
18639 {
18640 Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
18641 GCAP (Local0)
18642 Return (Local0)
18643 }
18644
18645 Method (GCAP, 1, NotSerialized)
18646 {
18647 CreateDWordField (Arg0, Zero, STS5)
18648 CreateDWordField (Arg0, 0x04, CAP5)
18649 If (((STS5 == 0x06) || (STS5 == 0x0A)))
18650 {
18651 Return (Zero)
18652 }
18653
18654 If ((STS5 & One))
18655 {
18656 CAP5 &= 0x0BFF
18657 Return (Zero)
18658 }
18659
18660 PDC5 = ((PDC5 & 0x7FFFFFFF) | CAP5) /* \_PR_.CPU5.GCAP.CAP5 */
18661 If (((PDC5 & 0x09) == 0x09))
18662 {
18663 \_PR.CPU1.APPT ()
18664 }
18665
18666 If ((PDC5 & 0x18))
18667 {
18668 \_PR.CPU1.APCT ()
18669 }
18670
18671 PDC0 = PDC5 /* \PDC5 */
18672 Return (Zero)
18673 }
18674 }
18675
18676 Scope (\_PR.CPU6)
18677 {
18678 Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
18679 {
18680 Local0 = \_PR.CPU0.CPDC (Arg0)
18681 GCAP (Local0)
18682 Return (Local0)
18683 }
18684
18685 Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
18686 {
18687 Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
18688 GCAP (Local0)
18689 Return (Local0)
18690 }
18691
18692 Method (GCAP, 1, NotSerialized)
18693 {
18694 CreateDWordField (Arg0, Zero, STS6)
18695 CreateDWordField (Arg0, 0x04, CAP6)
18696 If (((STS6 == 0x06) || (STS6 == 0x0A)))
18697 {
18698 Return (Zero)
18699 }
18700
18701 If ((STS6 & One))
18702 {
18703 CAP6 &= 0x0BFF
18704 Return (Zero)
18705 }
18706
18707 PDC6 = ((PDC6 & 0x7FFFFFFF) | CAP6) /* \_PR_.CPU6.GCAP.CAP6 */
18708 If (((PDC6 & 0x09) == 0x09))
18709 {
18710 \_PR.CPU1.APPT ()
18711 }
18712
18713 If ((PDC6 & 0x18))
18714 {
18715 \_PR.CPU1.APCT ()
18716 }
18717
18718 PDC0 = PDC6 /* \PDC6 */
18719 Return (Zero)
18720 }
18721 }
18722
18723 Scope (\_PR.CPU7)
18724 {
18725 Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
18726 {
18727 Local0 = \_PR.CPU0.CPDC (Arg0)
18728 GCAP (Local0)
18729 Return (Local0)
18730 }
18731
18732 Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
18733 {
18734 Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
18735 GCAP (Local0)
18736 Return (Local0)
18737 }
18738
18739 Method (GCAP, 1, NotSerialized)
18740 {
18741 CreateDWordField (Arg0, Zero, STS7)
18742 CreateDWordField (Arg0, 0x04, CAP7)
18743 If (((STS7 == 0x06) || (STS7 == 0x0A)))
18744 {
18745 Return (Zero)
18746 }
18747
18748 If ((STS7 & One))
18749 {
18750 CAP7 &= 0x0BFF
18751 Return (Zero)
18752 }
18753
18754 PDC7 = ((PDC7 & 0x7FFFFFFF) | CAP7) /* \_PR_.CPU7.GCAP.CAP7 */
18755 If (((PDC7 & 0x09) == 0x09))
18756 {
18757 \_PR.CPU1.APPT ()
18758 }
18759
18760 If ((PDC7 & 0x18))
18761 {
18762 \_PR.CPU1.APCT ()
18763 }
18764
18765 PDC0 = PDC7 /* \PDC7 */
18766 Return (Zero)
18767 }
18768 }
18769
18770 Scope (\_SB.PCI0)
18771 {
18772 OperationRegion (MBAR, SystemMemory, 0xFED15000, 0x1000)
18773 Field (MBAR, ByteAcc, NoLock, Preserve)
18774 {
18775 Offset (0x930),
18776 PTDP, 15,
18777 Offset (0x932),
18778 PMIN, 15,
18779 Offset (0x934),
18780 PMAX, 15,
18781 Offset (0x936),
18782 TMAX, 7,
18783 Offset (0x938),
18784 PWRU, 4,
18785 Offset (0x939),
18786 EGYU, 5,
18787 Offset (0x93A),
18788 TIMU, 4,
18789 Offset (0x958),
18790 Offset (0x95C),
18791 LPMS, 1,
18792 CTNL, 2,
18793 Offset (0x9A0),
18794 PPL1, 15,
18795 PL1E, 1,
18796 , 1,
18797 PL1T, 7,
18798 Offset (0x9A4),
18799 PPL2, 15,
18800 PL2E, 1,
18801 , 1,
18802 PL2T, 7,
18803 Offset (0xF3C),
18804 TARN, 8,
18805 Offset (0xF40),
18806 PTD1, 15,
18807 Offset (0xF42),
18808 TAR1, 8,
18809 Offset (0xF44),
18810 PMX1, 15,
18811 Offset (0xF46),
18812 PMN1, 15,
18813 Offset (0xF48),
18814 PTD2, 15,
18815 Offset (0xF4A),
18816 TAR2, 8,
18817 Offset (0xF4C),
18818 PMX2, 15,
18819 Offset (0xF4E),
18820 PMN2, 15,
18821 Offset (0xF50),
18822 CTCL, 2,
18823 , 29,
18824 CLCK, 1,
18825 TAR, 8
18826 }
18827
18828 Method (CTCU, 0, NotSerialized)
18829 {
18830 PPL1 = PTD2 /* \_SB_.PCI0.PTD2 */
18831 PL1E = One
18832 \CTPC = One
18833 If ((Zero == \FTPS))
18834 {
18835 \CTPR = \CTPC
18836 }
18837 Else
18838 {
18839 If ((\CTPR == \FTPS))
18840 {
18841 \CTPR = \CTPC
18842 \FTPS = \CTPC
18843 }
18844 Else
18845 {
18846 \CTPR = \CTPC
18847 \FTPS = \CTPC
18848 \FTPS++
18849 }
18850 }
18851
18852 \PNTF (0x80)
18853 TAR = (TAR2 - One)
18854 CTCL = 0x02
18855 }
18856
18857 Method (CTCN, 0, NotSerialized)
18858 {
18859 If ((CTCL == One))
18860 {
18861 PPL1 = PTDP /* \_SB_.PCI0.PTDP */
18862 PL1E = One
18863 NPPC (TARN)
18864 TAR = (TARN - One)
18865 CTCL = Zero
18866 }
18867 Else
18868 {
18869 If ((CTCL == 0x02))
18870 {
18871 CTCL = Zero
18872 TAR = (TARN - One)
18873 NPPC (TARN)
18874 PPL1 = PTDP /* \_SB_.PCI0.PTDP */
18875 PL1E = One
18876 }
18877 }
18878 }
18879
18880 Method (CTCD, 0, NotSerialized)
18881 {
18882 CTCL = One
18883 TAR = (TAR1 - One)
18884 NPPC (TAR1)
18885 PPL1 = PTD1 /* \_SB_.PCI0.PTD1 */
18886 PL1E = One
18887 }
18888
18889 Method (NPPC, 1, NotSerialized)
18890 {
18891 Name (TRAT, Zero)
18892 Name (PRAT, Zero)
18893 Name (TMPI, Zero)
18894 TRAT = Arg0
18895 TMPI = SizeOf (\_PR.CPU0._PSS)
18896 While ((TMPI != Zero))
18897 {
18898 TMPI--
18899 PRAT = DerefOf (Index (DerefOf (Index (\_PR.CPU0._PSS, TMPI)), 0x04))
18900 PRAT >>= 0x08
18901 If ((PRAT >= TRAT))
18902 {
18903 \CTPC = TMPI /* \_SB_.PCI0.NPPC.TMPI */
18904 If ((Zero == \FTPS))
18905 {
18906 \CTPR = \CTPC
18907 }
18908 Else
18909 {
18910 If ((\CTPR == \FTPS))
18911 {
18912 \CTPR = \CTPC
18913 \FTPS = \CTPC
18914 }
18915 Else
18916 {
18917 \CTPR = \CTPC
18918 \FTPS = \CTPC
18919 \FTPS++
18920 }
18921 }
18922
18923 \PNTF (0x80)
18924 Break
18925 }
18926 }
18927 }
18928
18929 Method (CLC2, 1, Serialized)
18930 {
18931 Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
18932 Local0 = (PNHM & 0x0FFF0FF0)
18933 While (One)
18934 {
18935 _T_0 = Local0
18936 If ((_T_0 == 0x000306C0))
18937 {
18938 Return (((Arg0 * 0x05) / 0x04))
18939 }
18940 Else
18941 {
18942 If ((_T_0 == 0x00040650))
18943 {
18944 Return (0xC8)
18945 }
18946 Else
18947 {
18948 Return (((Arg0 * 0x05) / 0x04))
18949 }
18950 }
18951
18952 Break
18953 }
18954 }
18955 }
18956
18957 OperationRegion (SANV, SystemMemory, 0xACD67E18, 0x015B)
18958 Field (SANV, AnyAcc, Lock, Preserve)
18959 {
18960 SARV, 32,
18961 ASLB, 32,
18962 IMON, 8,
18963 IGDS, 8,
18964 CADL, 8,
18965 PADL, 8,
18966 CSTE, 16,
18967 NSTE, 16,
18968 DID9, 32,
18969 DIDA, 32,
18970 DIDB, 32,
18971 IBTT, 8,
18972 IPAT, 8,
18973 IPSC, 8,
18974 IBLC, 8,
18975 IBIA, 8,
18976 ISSC, 8,
18977 IPCF, 8,
18978 IDMS, 8,
18979 IF1E, 8,
18980 HVCO, 8,
18981 NXD1, 32,
18982 NXD2, 32,
18983 NXD3, 32,
18984 NXD4, 32,
18985 NXD5, 32,
18986 NXD6, 32,
18987 NXD7, 32,
18988 NXD8, 32,
18989 GSMI, 8,
18990 PAVP, 8,
18991 Offset (0x49),
18992 KSV0, 32,
18993 KSV1, 8,
18994 BLCS, 8,
18995 BRTL, 8,
18996 ALSE, 8,
18997 ALAF, 8,
18998 LLOW, 8,
18999 LHIH, 8,
19000 ALFP, 8,
19001 AUDA, 32,
19002 AUD3, 32,
19003 DIDC, 32,
19004 DIDD, 32,
19005 DIDE, 32,
19006 DIDF, 32,
19007 CADR, 32,
19008 CCNT, 8,
19009 Offset (0xC8),
19010 SGMD, 8,
19011 SGFL, 8,
19012 PWOK, 8,
19013 HLRS, 8,
19014 PWEN, 8,
19015 PRST, 8,
19016 CPSP, 32,
19017 EECP, 8,
19018 EVCP, 16,
19019 XBAS, 32,
19020 GBAS, 16,
19021 SGGP, 8,
19022 NVGA, 32,
19023 NVHA, 32,
19024 AMDA, 32,
19025 NDID, 8,
19026 DID1, 32,
19027 DID2, 32,
19028 DID3, 32,
19029 DID4, 32,
19030 DID5, 32,
19031 DID6, 32,
19032 DID7, 32,
19033 DID8, 32,
19034 OBS1, 32,
19035 OBS2, 32,
19036 OBS3, 32,
19037 OBS4, 32,
19038 OBS5, 32,
19039 OBS6, 32,
19040 OBS7, 32,
19041 OBS8, 32,
19042 LTRA, 8,
19043 OBFA, 8,
19044 LTRB, 8,
19045 OBFB, 8,
19046 LTRC, 8,
19047 OBFC, 8,
19048 SMSL, 16,
19049 SNSL, 16,
19050 P0UB, 8,
19051 P1UB, 8,
19052 P2UB, 8,
19053 EDPV, 8,
19054 NXDX, 32,
19055 DIDX, 32,
19056 PCSL, 8,
19057 SC7A, 8
19058 }
19059
19060 Scope (\_SB.PCI0.B0D3)
19061 {
19062 Name (BARA, 0x80000000)
19063 Name (BBAR, Zero)
19064 Name (TBAR, Zero)
19065 Name (TCMD, Zero)
19066 Name (MODB, Zero)
19067 Name (MODC, Zero)
19068 Method (_STA, 0, NotSerialized) // _STA: Status
19069 {
19070 If ((AUVD != 0xFFFF))
19071 {
19072 Return (0x0F)
19073 }
19074
19075 Return (Zero)
19076 }
19077
19078 Method (_INI, 0, NotSerialized) // _INI: Initialize
19079 {
19080 If ((((ABAR & 0xFFFFC004) != 0xFFFFC004) && ((
19081 ABAR & 0xFFFFC000) != Zero)))
19082 {
19083 BARA = ABAR /* \_SB_.PCI0.B0D3.ABAR */
19084 If ((ABAH != Zero))
19085 {
19086 BARA |= (ABAH << 0x20)
19087 }
19088 }
19089 }
19090
19091 OperationRegion (RPCS, SystemMemory, \XBAS, 0x00018040)
19092 Field (RPCS, AnyAcc, NoLock, Preserve)
19093 {
19094 Offset (0x18004),
19095 ACMD, 8,
19096 Offset (0x18010),
19097 ABAR, 32,
19098 ABAH, 32
19099 }
19100
19101 OperationRegion (RPCZ, PCI_Config, Zero, 0x40)
19102 Field (RPCZ, DWordAcc, Lock, Preserve)
19103 {
19104 AUVD, 16
19105 }
19106
19107 Method (ASTR, 0, NotSerialized)
19108 {
19109 If ((((ABAR & 0xFFFFC004) != 0xFFFFC004) && ((
19110 ABAR & 0xFFFFC000) != Zero)))
19111 {
19112 BBAR = Zero
19113 BBAR = (ABAR & 0xFFFFFFF0)
19114 If ((ABAH != Zero))
19115 {
19116 BBAR |= (ABAH << 0x20)
19117 }
19118
19119 BBAR += 0x1000
19120 OperationRegion (RPCY, SystemMemory, BBAR, 0x25)
19121 Field (RPCY, DWordAcc, NoLock, Preserve)
19122 {
19123 Offset (0x0C),
19124 EM4W, 32,
19125 EMWA, 32,
19126 Offset (0x1C),
19127 ADWA, 32
19128 }
19129
19130 EMWA = AUDA /* \AUDA */
19131 EM4W = AUD3 /* \AUD3 */
19132 }
19133 }
19134
19135 Method (VSTR, 1, NotSerialized)
19136 {
19137 Name (CONT, 0x03E8)
19138 Name (ADDR, 0x80000000)
19139 ADDR = Arg0
19140 OperationRegion (CCDC, SystemMemory, ADDR, 0x04)
19141 Field (CCDC, ByteAcc, NoLock, Preserve)
19142 {
19143 CDEC, 32
19144 }
19145
19146 If ((((ABAR & 0xFFFFC004) != 0xFFFFC004) && ((
19147 ABAR & 0xFFFFC000) != Zero)))
19148 {
19149 If ((CDEC != Zero))
19150 {
19151 BBAR = Zero
19152 BBAR = (ABAR & 0xFFFFFFF0)
19153 If ((ABAH != Zero))
19154 {
19155 BBAR |= (ABAH << 0x20)
19156 }
19157
19158 OperationRegion (IPCV, SystemMemory, BBAR, 0x70)
19159 Field (IPCV, DWordAcc, NoLock, Preserve)
19160 {
19161 Offset (0x60),
19162 AVIC, 32,
19163 Offset (0x68),
19164 AIRS, 16
19165 }
19166
19167 CONT = 0x03E8
19168 While ((((AIRS & One) == One) && (CONT != Zero)))
19169 {
19170 Stall (One)
19171 CONT--
19172 }
19173
19174 AIRS |= 0x02
19175 AVIC = CDEC /* \_SB_.PCI0.B0D3.VSTR.CDEC */
19176 AIRS |= One
19177 CONT = 0x03E8
19178 While ((((AIRS & One) == One) && (CONT != Zero)))
19179 {
19180 Stall (One)
19181 CONT--
19182 }
19183 }
19184 }
19185 }
19186
19187 Method (CXDC, 0, NotSerialized)
19188 {
19189 Name (IDDX, 0x80000000)
19190 If (((CADR != Zero) && (CCNT != Zero)))
19191 {
19192 IDDX = CADR /* \CADR */
19193 While ((IDDX < (CADR + (CCNT * 0x04))))
19194 {
19195 VSTR (IDDX)
19196 IDDX += 0x04
19197 }
19198 }
19199 }
19200
19201 Method (ARST, 0, NotSerialized)
19202 {
19203 If ((((ABAR & 0xFFFFC004) != 0xFFFFC004) && ((
19204 ABAR & 0xFFFFC000) != Zero)))
19205 {
19206 BBAR = (ABAR & 0xFFFFFFF0)
19207 OperationRegion (IPCV, SystemMemory, BBAR, 0xBF)
19208 Field (IPCV, AnyAcc, NoLock, Preserve)
19209 {
19210 Offset (0x08),
19211 CRST, 32,
19212 Offset (0x4C),
19213 CORB, 32,
19214 Offset (0x5C),
19215 RIRB, 32,
19216 Offset (0x80),
19217 OSD1, 32,
19218 Offset (0xA0),
19219 OSD2, 32
19220 }
19221
19222 CORB &= 0xFFFFFFFD
19223 RIRB &= 0xFFFFFFFD
19224 OSD1 &= 0xFFFFFFFD
19225 OSD2 &= 0xFFFFFFFD
19226 CRST &= 0xFFFFFFFE
19227 }
19228 }
19229
19230 Method (AINI, 0, NotSerialized)
19231 {
19232 Name (CONT, 0x03E8)
19233 If ((((ABAR & 0xFFFFC004) != 0xFFFFC004) && ((
19234 ABAR & 0xFFFFC000) != Zero)))
19235 {
19236 BBAR = Zero
19237 BBAR = (ABAR & 0xFFFFFFF0)
19238 If ((ABAH != Zero))
19239 {
19240 BBAR |= (ABAH << 0x20)
19241 }
19242
19243 OperationRegion (IPCV, SystemMemory, BBAR, 0x70)
19244 Field (IPCV, DWordAcc, NoLock, Preserve)
19245 {
19246 GCAP, 16,
19247 Offset (0x08),
19248 GCTL, 32,
19249 Offset (0x0E),
19250 SSTS, 8,
19251 Offset (0x60),
19252 AVIC, 32,
19253 Offset (0x68),
19254 AIRS, 16
19255 }
19256
19257 GCTL |= One
19258 CONT = 0x03E8
19259 While ((((GCTL & One) == Zero) && (CONT != Zero)))
19260 {
19261 Stall (One)
19262 CONT--
19263 }
19264
19265 GCAP &= 0xFFFF
19266 SSTS |= 0x0F
19267 GCTL &= 0xFFFFFFFE
19268 CONT = 0x03E8
19269 While ((((GCTL & One) == One) && (CONT != Zero)))
19270 {
19271 Stall (One)
19272 CONT--
19273 }
19274
19275 GCTL |= One
19276 CONT = 0x03E8
19277 While ((((GCTL & One) == Zero) && (CONT != Zero)))
19278 {
19279 Stall (One)
19280 CONT--
19281 }
19282 }
19283 }
19284
19285 Method (ABWA, 1, NotSerialized)
19286 {
19287 If (Arg0)
19288 {
19289 If ((((ABAR & 0xFFFFC004) == 0xFFFFC004) || ((ABAR & 0xFFFFC000
19290 ) == Zero)))
19291 {
19292 If ((BARA != 0x80000000))
19293 {
19294 TBAR = ABAR /* \_SB_.PCI0.B0D3.ABAR */
19295 TBAR |= (ABAH << 0x20)
19296 TCMD = ACMD /* \_SB_.PCI0.B0D3.ACMD */
19297 ABAH = (BARA >> 0x20)
19298 ABAR = BARA /* \_SB_.PCI0.B0D3.BARA */
19299 ACMD = 0x06
19300 MODB = One
19301 }
19302 }
19303 Else
19304 {
19305 If (((ACMD & 0x06) != 0x06))
19306 {
19307 TCMD = ACMD /* \_SB_.PCI0.B0D3.ACMD */
19308 ACMD = 0x06
19309 MODC = One
19310 }
19311 }
19312 }
19313 Else
19314 {
19315 If (MODB)
19316 {
19317 If ((ABAR == BARA))
19318 {
19319 ABAR = TBAR /* \_SB_.PCI0.B0D3.TBAR */
19320 ABAH = (TBAR >> 0x20)
19321 ACMD = TCMD /* \_SB_.PCI0.B0D3.TCMD */
19322 }
19323 }
19324
19325 If (MODC)
19326 {
19327 ACMD = TCMD /* \_SB_.PCI0.B0D3.TCMD */
19328 }
19329 }
19330 }
19331
19332 Method (DCCC, 1, NotSerialized)
19333 {
19334 If ((((ABAR & 0xFFFFC004) != 0xFFFFC004) && ((
19335 ABAR & 0xFFFFC000) != Zero)))
19336 {
19337 BBAR = (ABAR & 0xFFFFFFF0)
19338 OperationRegion (IPCV, SystemMemory, BBAR, 0x1020)
19339 Field (IPCV, AnyAcc, NoLock, Preserve)
19340 {
19341 Offset (0x100C),
19342 AEM4, 32,
19343 AEM5, 32
19344 }
19345
19346 If ((Arg0 == Zero))
19347 {
19348 AEM4 &= 0xFFFC0000
19349 AEM4 |= 0x04
19350 AEM5 &= 0xFFFC0000
19351 AEM5 |= 0x4B
19352 }
19353
19354 If ((Arg0 == One))
19355 {
19356 AEM4 &= 0xFFFC0000
19357 AEM4 |= 0x04
19358 AEM5 &= 0xFFFC0000
19359 AEM5 |= 0x5A
19360 }
19361
19362 If ((Arg0 == 0x02))
19363 {
19364 AEM4 &= 0xFFFC0000
19365 AEM4 |= 0x10
19366 AEM5 &= 0xFFFC0000
19367 AEM5 |= 0xE1
19368 }
19369
19370 If ((Arg0 == 0x03))
19371 {
19372 AEM4 &= 0xFFFC0000
19373 AEM4 |= 0x08
19374 AEM5 &= 0xFFFC0000
19375 AEM5 |= 0xE1
19376 }
19377 }
19378 }
19379 }
19380
19381 Scope (\_SB.PCI0.VID)
19382 {
19383 Scope (\_SB.PCI0)
19384 {
19385 OperationRegion (MCHP, PCI_Config, 0x40, 0xC0)
19386 Field (MCHP, AnyAcc, NoLock, Preserve)
19387 {
19388 Offset (0x14),
19389 AUDE, 8,
19390 Offset (0x60),
19391 TASM, 10,
19392 Offset (0x62)
19393 }
19394 }
19395
19396 OperationRegion (IGDP, PCI_Config, 0x40, 0xC0)
19397 Field (IGDP, AnyAcc, NoLock, Preserve)
19398 {
19399 Offset (0x12),
19400 , 1,
19401 GIVD, 1,
19402 , 2,
19403 GUMA, 3,
19404 Offset (0x14),
19405 , 4,
19406 GMFN, 1,
19407 Offset (0x18),
19408 Offset (0xA4),
19409 ASLE, 8,
19410 Offset (0xA8),
19411 GSSE, 1,
19412 GSSB, 14,
19413 GSES, 1,
19414 Offset (0xB0),
19415 , 12,
19416 CDVL, 1,
19417 Offset (0xB2),
19418 Offset (0xB5),
19419 LBPC, 8,
19420 Offset (0xBC),
19421 ASLS, 32
19422 }
19423
19424 OperationRegion (IGDM, SystemMemory, \ASLB, 0x2000)
19425 Field (IGDM, AnyAcc, NoLock, Preserve)
19426 {
19427 SIGN, 128,
19428 SIZE, 32,
19429 OVER, 32,
19430 SVER, 256,
19431 VVER, 128,
19432 GVER, 128,
19433 MBOX, 32,
19434 DMOD, 32,
19435 PCON, 32,
19436 DVER, 64,
19437 Offset (0x100),
19438 DRDY, 32,
19439 CSTS, 32,
19440 CEVT, 32,
19441 Offset (0x120),
19442 DIDL, 32,
19443 DDL2, 32,
19444 DDL3, 32,
19445 DDL4, 32,
19446 DDL5, 32,
19447 DDL6, 32,
19448 DDL7, 32,
19449 DDL8, 32,
19450 CPDL, 32,
19451 CPL2, 32,
19452 CPL3, 32,
19453 CPL4, 32,
19454 CPL5, 32,
19455 CPL6, 32,
19456 CPL7, 32,
19457 CPL8, 32,
19458 CADL, 32,
19459 CAL2, 32,
19460 CAL3, 32,
19461 CAL4, 32,
19462 CAL5, 32,
19463 CAL6, 32,
19464 CAL7, 32,
19465 CAL8, 32,
19466 NADL, 32,
19467 NDL2, 32,
19468 NDL3, 32,
19469 NDL4, 32,
19470 NDL5, 32,
19471 NDL6, 32,
19472 NDL7, 32,
19473 NDL8, 32,
19474 ASLP, 32,
19475 TIDX, 32,
19476 CHPD, 32,
19477 CLID, 32,
19478 CDCK, 32,
19479 SXSW, 32,
19480 EVTS, 32,
19481 CNOT, 32,
19482 NRDY, 32,
19483 DDL9, 32,
19484 DD10, 32,
19485 DD11, 32,
19486 DD12, 32,
19487 DD13, 32,
19488 DD14, 32,
19489 DD15, 32,
19490 CPL9, 32,
19491 CP10, 32,
19492 CP11, 32,
19493 CP12, 32,
19494 CP13, 32,
19495 CP14, 32,
19496 CP15, 32,
19497 Offset (0x200),
19498 SCIE, 1,
19499 GEFC, 4,
19500 GXFC, 3,
19501 GESF, 8,
19502 Offset (0x204),
19503 PARM, 32,
19504 DSLP, 32,
19505 Offset (0x300),
19506 ARDY, 32,
19507 ASLC, 32,
19508 TCHE, 32,
19509 ALSI, 32,
19510 BCLP, 32,
19511 PFIT, 32,
19512 CBLV, 32,
19513 BCLM, 320,
19514 CPFM, 32,
19515 EPFM, 32,
19516 PLUT, 592,
19517 PFMB, 32,
19518 CCDV, 32,
19519 PCFT, 32,
19520 SROT, 32,
19521 IUER, 32,
19522 FDSP, 64,
19523 FDSS, 32,
19524 STAT, 32,
19525 Offset (0x400),
19526 GVD1, 49152,
19527 PHED, 32,
19528 BDDC, 2048
19529 }
19530
19531 Name (DBTB, Package (0x15)
19532 {
19533 Zero,
19534 0x07,
19535 0x38,
19536 0x01C0,
19537 0x0E00,
19538 0x3F,
19539 0x01C7,
19540 0x0E07,
19541 0x01F8,
19542 0x0E38,
19543 0x0FC0,
19544 Zero,
19545 Zero,
19546 Zero,
19547 Zero,
19548 Zero,
19549 0x7000,
19550 0x7007,
19551 0x7038,
19552 0x71C0,
19553 0x7E00
19554 })
19555 Name (CDCT, Package (0x05)
19556 {
19557 Package (0x02)
19558 {
19559 0xE4,
19560 0x0140
19561 },
19562
19563 Package (0x02)
19564 {
19565 0xDE,
19566 0x014D
19567 },
19568
19569 Package (0x02)
19570 {
19571 0xDE,
19572 0x014D
19573 },
19574
19575 Package (0x02)
19576 {
19577 Zero,
19578 Zero
19579 },
19580
19581 Package (0x02)
19582 {
19583 0xDE,
19584 0x014D
19585 }
19586 })
19587 Name (SUCC, One)
19588 Name (NVLD, 0x02)
19589 Name (CRIT, 0x04)
19590 Name (NCRT, 0x06)
19591 Method (GSCI, 0, Serialized)
19592 {
19593 If ((GEFC == 0x04))
19594 {
19595 GXFC = GBDA ()
19596 }
19597
19598 If ((GEFC == 0x06))
19599 {
19600 GXFC = SBCB ()
19601 }
19602
19603 GEFC = Zero
19604 \_SB.PCI0.LPC.SCIS = One
19605 GSSE = Zero
19606 SCIE = Zero
19607 Return (Zero)
19608 }
19609
19610 Method (GBDA, 0, Serialized)
19611 {
19612 If ((GESF == Zero))
19613 {
19614 PARM = 0x0241
19615 GESF = Zero
19616 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19617 }
19618
19619 If ((GESF == One))
19620 {
19621 PARM = 0x00200382
19622 GESF = Zero
19623 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19624 }
19625
19626 If ((GESF == 0x04))
19627 {
19628 PARM &= 0xEFFF0000
19629 PARM &= (DerefOf (Index (DBTB, IBTT)) << 0x10)
19630 PARM |= IBTT /* \_SB_.PCI0.VID_.PARM */
19631 GESF = Zero
19632 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19633 }
19634
19635 If ((GESF == 0x05))
19636 {
19637 If (\_SB.LID._LID ())
19638 {
19639 LIDS = One
19640 }
19641 Else
19642 {
19643 LIDS = Zero
19644 }
19645
19646 PARM = IPSC /* \IPSC */
19647 PARM |= (IPAT << 0x08)
19648 PARM += 0x0100
19649 PARM |= (LIDS << 0x10)
19650 PARM += 0x00010000
19651 PARM |= (IBIA << 0x14)
19652 GESF = Zero
19653 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19654 }
19655
19656 If ((GESF == 0x07))
19657 {
19658 PARM = GIVD /* \_SB_.PCI0.VID_.GIVD */
19659 PARM ^= One
19660 PARM |= (GMFN << One)
19661 PARM |= 0x1800
19662 PARM |= 0x00060000
19663 PARM |= (IDMS << 0x11)
19664 PARM |= (DerefOf (Index (DerefOf (Index (CDCT, HVCO)), CDVL)) <<
19665 0x15) /* \_SB_.PCI0.VID_.PARM */
19666 GESF = One
19667 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19668 }
19669
19670 If ((GESF == 0x0A))
19671 {
19672 PARM = Zero
19673 If (ISSC)
19674 {
19675 PARM |= 0x03
19676 }
19677
19678 GESF = Zero
19679 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19680 }
19681
19682 If ((GESF == 0x0B))
19683 {
19684 PARM = KSV0 /* \KSV0 */
19685 GESF = KSV1 /* \KSV1 */
19686 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19687 }
19688
19689 GESF = Zero
19690 Return (CRIT) /* \_SB_.PCI0.VID_.CRIT */
19691 }
19692
19693 Method (SBCB, 0, Serialized)
19694 {
19695 If ((GESF == Zero))
19696 {
19697 PARM = 0x00220382
19698 GESF = Zero
19699 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19700 }
19701
19702 If ((GESF == One))
19703 {
19704 GESF = Zero
19705 PARM = Zero
19706 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19707 }
19708
19709 If ((GESF == 0x03))
19710 {
19711 GESF = Zero
19712 PARM = Zero
19713 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19714 }
19715
19716 If ((GESF == 0x04))
19717 {
19718 GESF = Zero
19719 PARM = Zero
19720 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19721 }
19722
19723 If ((GESF == 0x05))
19724 {
19725 GESF = Zero
19726 PARM = Zero
19727 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19728 }
19729
19730 If ((GESF == 0x07))
19731 {
19732 If ((S0ID == One))
19733 {
19734 If (((PARM & 0xFF) == One))
19735 {
19736 \GUAM (One)
19737 }
19738 }
19739
19740 If ((PARM == Zero))
19741 {
19742 Local0 = CLID /* \_SB_.PCI0.VID_.CLID */
19743 If ((0x80000000 & Local0))
19744 {
19745 CLID &= 0x0F
19746 GLID (CLID)
19747 }
19748 }
19749
19750 GESF = Zero
19751 PARM = Zero
19752 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19753 }
19754
19755 If ((GESF == 0x08))
19756 {
19757 If ((S0ID == One))
19758 {
19759 Local0 = ((PARM >> 0x08) & 0xFF)
19760 If ((Local0 == Zero))
19761 {
19762 \GUAM (Zero)
19763 }
19764 }
19765
19766 GESF = Zero
19767 PARM = Zero
19768 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19769 }
19770
19771 If ((GESF == 0x09))
19772 {
19773 IBTT = (PARM & 0xFF)
19774 GESF = Zero
19775 PARM = Zero
19776 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19777 }
19778
19779 If ((GESF == 0x0A))
19780 {
19781 IPSC = (PARM & 0xFF)
19782 If (((PARM >> 0x08) & 0xFF))
19783 {
19784 IPAT = ((PARM >> 0x08) & 0xFF)
19785 IPAT--
19786 }
19787
19788 IBIA = ((PARM >> 0x14) & 0x07)
19789 GESF = Zero
19790 PARM = Zero
19791 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19792 }
19793
19794 If ((GESF == 0x0B))
19795 {
19796 IF1E = ((PARM >> One) & One)
19797 If ((PARM & 0x0001E000))
19798 {
19799 IDMS = ((PARM >> 0x0D) & 0x0F)
19800 }
19801 Else
19802 {
19803 IDMS = ((PARM >> 0x11) & 0x0F)
19804 }
19805
19806 GESF = Zero
19807 PARM = Zero
19808 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19809 }
19810
19811 If ((GESF == 0x10))
19812 {
19813 GESF = Zero
19814 PARM = Zero
19815 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19816 }
19817
19818 If ((GESF == 0x11))
19819 {
19820 PARM = (LIDS << 0x08)
19821 PARM += 0x0100
19822 GESF = Zero
19823 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19824 }
19825
19826 If ((GESF == 0x12))
19827 {
19828 If ((PARM & One))
19829 {
19830 If (((PARM >> One) == One))
19831 {
19832 ISSC = One
19833 }
19834 Else
19835 {
19836 GESF = Zero
19837 Return (CRIT) /* \_SB_.PCI0.VID_.CRIT */
19838 }
19839 }
19840 Else
19841 {
19842 ISSC = Zero
19843 }
19844
19845 GESF = Zero
19846 PARM = Zero
19847 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19848 }
19849
19850 If ((GESF == 0x13))
19851 {
19852 GESF = Zero
19853 PARM = Zero
19854 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19855 }
19856
19857 If ((GESF == 0x14))
19858 {
19859 PAVP = (PARM & 0x0F)
19860 GESF = Zero
19861 PARM = Zero
19862 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19863 }
19864
19865 If ((GESF == 0x15))
19866 {
19867 If ((PARM == One))
19868 {
19869 \_SB.PCI0.AUDE |= 0x20
19870 \_SB.PCI0.B0D3.ABWA (One)
19871 \_SB.PCI0.B0D3.ARST ()
19872 \_SB.PCI0.B0D3.ASTR ()
19873 \_SB.PCI0.B0D3.AINI ()
19874 \_SB.PCI0.B0D3.CXDC ()
19875 \_SB.PCI0.B0D3.ABWA (Zero)
19876 Notify (\_SB.PCI0, Zero) // Bus Check
19877 }
19878
19879 If ((PARM == Zero))
19880 {
19881 \_SB.PCI0.AUDE &= 0xDF
19882 Notify (\_SB.PCI0, Zero) // Bus Check
19883 }
19884
19885 GESF = Zero
19886 PARM = Zero
19887 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19888 }
19889
19890 If ((GESF == 0x16))
19891 {
19892 Local0 = (PARM & 0x03)
19893 \_SB.PCI0.B0D3.DCCC (Local0)
19894 GESF = Zero
19895 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19896 }
19897
19898 GESF = Zero
19899 Return (SUCC) /* \_SB_.PCI0.VID_.SUCC */
19900 }
19901
19902 Method (PDRD, 0, NotSerialized)
19903 {
19904 If (!DRDY)
19905 {
19906 Sleep (ASLP)
19907 }
19908
19909 Return (!DRDY)
19910 }
19911
19912 Method (PSTS, 0, NotSerialized)
19913 {
19914 If ((CSTS > 0x02))
19915 {
19916 Sleep (ASLP)
19917 }
19918
19919 Return ((CSTS == 0x03))
19920 }
19921
19922 Method (GNOT, 2, NotSerialized)
19923 {
19924 If (PDRD ())
19925 {
19926 Return (One)
19927 }
19928
19929 CEVT = Arg0
19930 CSTS = 0x03
19931 If (((CHPD == Zero) && (Arg1 == Zero)))
19932 {
19933 If ((Arg0 != One))
19934 {
19935 If ((\WXPF && !\WVIS))
19936 {
19937 Notify (\_SB.PCI0, Arg1)
19938 }
19939 Else
19940 {
19941 Notify (\_SB.PCI0.VID, Arg1)
19942 }
19943 }
19944 }
19945
19946 Notify (\_SB.PCI0.VID, 0x80) // Status Change
19947 Return (Zero)
19948 }
19949
19950 Method (GHDS, 1, NotSerialized)
19951 {
19952 TIDX = Arg0
19953 Return (GNOT (One, Zero))
19954 }
19955
19956 Method (GLID, 1, NotSerialized)
19957 {
19958 CLID = Arg0
19959 Return (GNOT (0x02, Zero))
19960 }
19961
19962 Method (GLIS, 1, NotSerialized)
19963 {
19964 CLID = Arg0
19965 Return (Zero)
19966 }
19967
19968 Method (GDCK, 1, NotSerialized)
19969 {
19970 CDCK = Arg0
19971 Return (GNOT (0x04, 0x80))
19972 }
19973
19974 Method (GDCS, 1, NotSerialized)
19975 {
19976 CDCK = Arg0
19977 }
19978
19979 Method (PARD, 0, NotSerialized)
19980 {
19981 If (!ARDY)
19982 {
19983 Sleep (ASLP)
19984 }
19985
19986 Return (!ARDY)
19987 }
19988
19989 Method (AINT, 2, NotSerialized)
19990 {
19991 If (!(TCHE & (One << Arg0)))
19992 {
19993 Return (One)
19994 }
19995
19996 If (PARD ())
19997 {
19998 Return (One)
19999 }
20000
20001 If ((Arg0 == 0x02))
20002 {
20003 PFIT ^= 0x07
20004 PFIT |= 0x80000000
20005 ASLC = 0x04
20006 }
20007 Else
20008 {
20009 If ((Arg0 == One))
20010 {
20011 BCLP = Arg1
20012 BCLP |= 0x80000000
20013 ASLC = 0x0A
20014 }
20015 Else
20016 {
20017 If ((Arg0 == 0x03))
20018 {
20019 PFMB = Arg1
20020 PFMB |= 0x80000100
20021 ASLC = 0x08
20022 }
20023 Else
20024 {
20025 If ((Arg0 == Zero))
20026 {
20027 ALSI = Arg1
20028 ASLC = One
20029 }
20030 Else
20031 {
20032 Return (One)
20033 }
20034 }
20035 }
20036 }
20037
20038 ASLE = One
20039 Return (Zero)
20040 }
20041 }
20042
20043 Scope (\_SB)
20044 {
20045 Device (PCCD)
20046 {
20047 Name (PCCA, 0xACD62018)
20048 Name (PCCS, 0x00001000)
20049 Name (PENB, 0x00000001)
20050 Name (_HID, EisaId ("INT340F")) // _HID: Hardware ID
20051 Name (_STR, Unicode ("Collaborative Processor Performance Control (CPPC)")) // _STR: Description String
20052 Method (_STA, 0, NotSerialized) // _STA: Status
20053 {
20054 If ((OSYS >= 0x07DC))
20055 {
20056 Return (0x0F)
20057 }
20058 Else
20059 {
20060 Return (Zero)
20061 }
20062 }
20063
20064 Name (TMPP, Package (0x02)
20065 {
20066 0x80000000,
20067 0x80000000
20068 })
20069 Method (PADR, 0, NotSerialized)
20070 {
20071 Index (TMPP, Zero) = PCCA /* \_SB_.PCCD.PCCA */
20072 Index (TMPP, One) = PCCS /* \_SB_.PCCD.PCCS */
20073 Return (TMPP) /* \_SB_.PCCD.TMPP */
20074 }
20075
20076 Method (GPRN, 0, Serialized)
20077 {
20078 Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
20079 While (One)
20080 {
20081 _T_0 = ToInteger (\TCNT)
20082 If ((_T_0 == 0x08))
20083 {
20084 Notify (\_PR.CPU0, 0x83) // Device-Specific Change
20085 Notify (\_PR.CPU1, 0x83) // Device-Specific Change
20086 Notify (\_PR.CPU2, 0x83) // Device-Specific Change
20087 Notify (\_PR.CPU3, 0x83) // Device-Specific Change
20088 Notify (\_PR.CPU4, 0x83) // Device-Specific Change
20089 Notify (\_PR.CPU5, 0x83) // Device-Specific Change
20090 Notify (\_PR.CPU6, 0x83) // Device-Specific Change
20091 Notify (\_PR.CPU7, 0x83) // Device-Specific Change
20092 }
20093 Else
20094 {
20095 If ((_T_0 == 0x04))
20096 {
20097 Notify (\_PR.CPU0, 0x83) // Device-Specific Change
20098 Notify (\_PR.CPU1, 0x83) // Device-Specific Change
20099 Notify (\_PR.CPU2, 0x83) // Device-Specific Change
20100 Notify (\_PR.CPU3, 0x83) // Device-Specific Change
20101 }
20102 Else
20103 {
20104 If ((_T_0 == 0x02))
20105 {
20106 Notify (\_PR.CPU0, 0x83) // Device-Specific Change
20107 Notify (\_PR.CPU1, 0x83) // Device-Specific Change
20108 }
20109 Else
20110 {
20111 Notify (\_PR.CPU0, 0x83) // Device-Specific Change
20112 }
20113 }
20114 }
20115
20116 Break
20117 }
20118 }
20119
20120 Name (PCFG, Zero)
20121 Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control
20122 {
20123 If ((CondRefOf (\PDC0) && (\PDC0 != 0x80000000)))
20124 {
20125 If ((\PDC0 & 0x04))
20126 {
20127 Return (Package (0x02)
20128 {
20129 ResourceTemplate ()
20130 {
20131 Register (FFixedHW,
20132 0x00, // Bit Width
20133 0x00, // Bit Offset
20134 0x0000000000000000, // Address
20135 ,)
20136 },
20137
20138 ResourceTemplate ()
20139 {
20140 Register (FFixedHW,
20141 0x00, // Bit Width
20142 0x00, // Bit Offset
20143 0x0000000000000000, // Address
20144 ,)
20145 }
20146 })
20147 }
20148 Else
20149 {
20150 Return (Package (0x02)
20151 {
20152 ResourceTemplate ()
20153 {
20154 Register (SystemIO,
20155 0x05, // Bit Width
20156 0x00, // Bit Offset
20157 0x0000000000001810, // Address
20158 ,)
20159 },
20160
20161 ResourceTemplate ()
20162 {
20163 Register (SystemIO,
20164 0x05, // Bit Width
20165 0x00, // Bit Offset
20166 0x0000000000001810, // Address
20167 ,)
20168 }
20169 })
20170 }
20171 }
20172 Else
20173 {
20174 Return (Package (0x02)
20175 {
20176 ResourceTemplate ()
20177 {
20178 Register (FFixedHW,
20179 0x00, // Bit Width
20180 0x00, // Bit Offset
20181 0x0000000000000000, // Address
20182 ,)
20183 },
20184
20185 ResourceTemplate ()
20186 {
20187 Register (FFixedHW,
20188 0x00, // Bit Width
20189 0x00, // Bit Offset
20190 0x0000000000000000, // Address
20191 ,)
20192 }
20193 })
20194 }
20195 }
20196
20197 Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States
20198 {
20199 If (CondRefOf (\_PR.CPU0._PSS))
20200 {
20201 Return (\_PR.CPU0._PSS)
20202 }
20203 Else
20204 {
20205 Return (Package (0x02)
20206 {
20207 Package (0x06)
20208 {
20209 Zero,
20210 Zero,
20211 Zero,
20212 Zero,
20213 Zero,
20214 Zero
20215 },
20216
20217 Package (0x06)
20218 {
20219 Zero,
20220 Zero,
20221 Zero,
20222 Zero,
20223 Zero,
20224 Zero
20225 }
20226 })
20227 }
20228 }
20229
20230 Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilities
20231 {
20232 If (CondRefOf (\_PR.CPU0._PPC))
20233 {
20234 Return (\_PR.CPU0._PPC ())
20235 }
20236 Else
20237 {
20238 Return (Zero)
20239 }
20240 }
20241
20242 Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States
20243 {
20244 If (CondRefOf (\_PR.CPU0._TSS))
20245 {
20246 Return (\_PR.CPU0._TSS) /* External reference */
20247 }
20248 Else
20249 {
20250 Return (Package (0x02)
20251 {
20252 Package (0x05)
20253 {
20254 Zero,
20255 Zero,
20256 Zero,
20257 Zero,
20258 Zero
20259 },
20260
20261 Package (0x05)
20262 {
20263 Zero,
20264 Zero,
20265 Zero,
20266 Zero,
20267 Zero
20268 }
20269 })
20270 }
20271 }
20272 }
20273 }
20274
20275 Scope (\_PR.CPU0)
20276 {
20277 Name (_CPC, Package (0x11) // _CPC: Continuous Performance Control
20278 {
20279 0x11,
20280 One,
20281 ResourceTemplate ()
20282 {
20283 Register (PCC,
20284 0x20, // Bit Width
20285 0x00, // Bit Offset
20286 0x0000000000000000, // Address
20287 ,)
20288 },
20289
20290 ResourceTemplate ()
20291 {
20292 Register (PCC,
20293 0x20, // Bit Width
20294 0x00, // Bit Offset
20295 0x0000000000000004, // Address
20296 ,)
20297 },
20298
20299 ResourceTemplate ()
20300 {
20301 Register (PCC,
20302 0x20, // Bit Width
20303 0x00, // Bit Offset
20304 0x0000000000000008, // Address
20305 ,)
20306 },
20307
20308 ResourceTemplate ()
20309 {
20310 Register (PCC,
20311 0x20, // Bit Width
20312 0x00, // Bit Offset
20313 0x000000000000000C, // Address
20314 ,)
20315 },
20316
20317 ResourceTemplate ()
20318 {
20319 Register (PCC,
20320 0x20, // Bit Width
20321 0x00, // Bit Offset
20322 0x0000000000000010, // Address
20323 ,)
20324 },
20325
20326 ResourceTemplate ()
20327 {
20328 Register (PCC,
20329 0x20, // Bit Width
20330 0x00, // Bit Offset
20331 0x0000000000000014, // Address
20332 ,)
20333 },
20334
20335 ResourceTemplate ()
20336 {
20337 Register (PCC,
20338 0x20, // Bit Width
20339 0x00, // Bit Offset
20340 0x0000000000000018, // Address
20341 ,)
20342 },
20343
20344 ResourceTemplate ()
20345 {
20346 Register (PCC,
20347 0x20, // Bit Width
20348 0x00, // Bit Offset
20349 0x000000000000001C, // Address
20350 ,)
20351 },
20352
20353 ResourceTemplate ()
20354 {
20355 Register (PCC,
20356 0x20, // Bit Width
20357 0x00, // Bit Offset
20358 0x0000000000000020, // Address
20359 ,)
20360 },
20361
20362 ResourceTemplate ()
20363 {
20364 Register (PCC,
20365 0x20, // Bit Width
20366 0x00, // Bit Offset
20367 0x0000000000000024, // Address
20368 ,)
20369 },
20370
20371 ResourceTemplate ()
20372 {
20373 Register (PCC,
20374 0x20, // Bit Width
20375 0x00, // Bit Offset
20376 0x0000000000000028, // Address
20377 ,)
20378 },
20379
20380 ResourceTemplate ()
20381 {
20382 Register (FFixedHW,
20383 0x40, // Bit Width
20384 0x00, // Bit Offset
20385 0x00000000000000E7, // Address
20386 0x04, // Access Size
20387 )
20388 },
20389
20390 ResourceTemplate ()
20391 {
20392 Register (FFixedHW,
20393 0x40, // Bit Width
20394 0x00, // Bit Offset
20395 0x00000000000000E8, // Address
20396 0x04, // Access Size
20397 )
20398 },
20399
20400 ResourceTemplate ()
20401 {
20402 Register (PCC,
20403 0x20, // Bit Width
20404 0x00, // Bit Offset
20405 0x000000000000003C, // Address
20406 ,)
20407 },
20408
20409 ResourceTemplate ()
20410 {
20411 Register (PCC,
20412 0x20, // Bit Width
20413 0x00, // Bit Offset
20414 0x0000000000000040, // Address
20415 ,)
20416 }
20417 })
20418 }
20419
20420 Scope (\_PR.CPU1)
20421 {
20422 Name (_CPC, Package (0x11) // _CPC: Continuous Performance Control
20423 {
20424 0x11,
20425 One,
20426 ResourceTemplate ()
20427 {
20428 Register (PCC,
20429 0x20, // Bit Width
20430 0x00, // Bit Offset
20431 0x0000000000000064, // Address
20432 ,)
20433 },
20434
20435 ResourceTemplate ()
20436 {
20437 Register (PCC,
20438 0x20, // Bit Width
20439 0x00, // Bit Offset
20440 0x0000000000000068, // Address
20441 ,)
20442 },
20443
20444 ResourceTemplate ()
20445 {
20446 Register (PCC,
20447 0x20, // Bit Width
20448 0x00, // Bit Offset
20449 0x000000000000006C, // Address
20450 ,)
20451 },
20452
20453 ResourceTemplate ()
20454 {
20455 Register (PCC,
20456 0x20, // Bit Width
20457 0x00, // Bit Offset
20458 0x0000000000000070, // Address
20459 ,)
20460 },
20461
20462 ResourceTemplate ()
20463 {
20464 Register (PCC,
20465 0x20, // Bit Width
20466 0x00, // Bit Offset
20467 0x0000000000000074, // Address
20468 ,)
20469 },
20470
20471 ResourceTemplate ()
20472 {
20473 Register (PCC,
20474 0x20, // Bit Width
20475 0x00, // Bit Offset
20476 0x0000000000000078, // Address
20477 ,)
20478 },
20479
20480 ResourceTemplate ()
20481 {
20482 Register (PCC,
20483 0x20, // Bit Width
20484 0x00, // Bit Offset
20485 0x000000000000007C, // Address
20486 ,)
20487 },
20488
20489 ResourceTemplate ()
20490 {
20491 Register (PCC,
20492 0x20, // Bit Width
20493 0x00, // Bit Offset
20494 0x0000000000000080, // Address
20495 ,)
20496 },
20497
20498 ResourceTemplate ()
20499 {
20500 Register (PCC,
20501 0x20, // Bit Width
20502 0x00, // Bit Offset
20503 0x0000000000000084, // Address
20504 ,)
20505 },
20506
20507 ResourceTemplate ()
20508 {
20509 Register (PCC,
20510 0x20, // Bit Width
20511 0x00, // Bit Offset
20512 0x0000000000000088, // Address
20513 ,)
20514 },
20515
20516 ResourceTemplate ()
20517 {
20518 Register (PCC,
20519 0x20, // Bit Width
20520 0x00, // Bit Offset
20521 0x000000000000008C, // Address
20522 ,)
20523 },
20524
20525 ResourceTemplate ()
20526 {
20527 Register (FFixedHW,
20528 0x40, // Bit Width
20529 0x00, // Bit Offset
20530 0x00000000000000E7, // Address
20531 0x04, // Access Size
20532 )
20533 },
20534
20535 ResourceTemplate ()
20536 {
20537 Register (FFixedHW,
20538 0x40, // Bit Width
20539 0x00, // Bit Offset
20540 0x00000000000000E8, // Address
20541 0x04, // Access Size
20542 )
20543 },
20544
20545 ResourceTemplate ()
20546 {
20547 Register (PCC,
20548 0x20, // Bit Width
20549 0x00, // Bit Offset
20550 0x00000000000000A0, // Address
20551 ,)
20552 },
20553
20554 ResourceTemplate ()
20555 {
20556 Register (PCC,
20557 0x20, // Bit Width
20558 0x00, // Bit Offset
20559 0x00000000000000A4, // Address
20560 ,)
20561 }
20562 })
20563 }
20564
20565 Scope (\_PR.CPU2)
20566 {
20567 Name (_CPC, Package (0x11) // _CPC: Continuous Performance Control
20568 {
20569 0x11,
20570 One,
20571 ResourceTemplate ()
20572 {
20573 Register (PCC,
20574 0x20, // Bit Width
20575 0x00, // Bit Offset
20576 0x00000000000000C8, // Address
20577 ,)
20578 },
20579
20580 ResourceTemplate ()
20581 {
20582 Register (PCC,
20583 0x20, // Bit Width
20584 0x00, // Bit Offset
20585 0x00000000000000CC, // Address
20586 ,)
20587 },
20588
20589 ResourceTemplate ()
20590 {
20591 Register (PCC,
20592 0x20, // Bit Width
20593 0x00, // Bit Offset
20594 0x00000000000000D0, // Address
20595 ,)
20596 },
20597
20598 ResourceTemplate ()
20599 {
20600 Register (PCC,
20601 0x20, // Bit Width
20602 0x00, // Bit Offset
20603 0x00000000000000D4, // Address
20604 ,)
20605 },
20606
20607 ResourceTemplate ()
20608 {
20609 Register (PCC,
20610 0x20, // Bit Width
20611 0x00, // Bit Offset
20612 0x00000000000000D8, // Address
20613 ,)
20614 },
20615
20616 ResourceTemplate ()
20617 {
20618 Register (PCC,
20619 0x20, // Bit Width
20620 0x00, // Bit Offset
20621 0x00000000000000DC, // Address
20622 ,)
20623 },
20624
20625 ResourceTemplate ()
20626 {
20627 Register (PCC,
20628 0x20, // Bit Width
20629 0x00, // Bit Offset
20630 0x00000000000000E0, // Address
20631 ,)
20632 },
20633
20634 ResourceTemplate ()
20635 {
20636 Register (PCC,
20637 0x20, // Bit Width
20638 0x00, // Bit Offset
20639 0x00000000000000E4, // Address
20640 ,)
20641 },
20642
20643 ResourceTemplate ()
20644 {
20645 Register (PCC,
20646 0x20, // Bit Width
20647 0x00, // Bit Offset
20648 0x00000000000000E8, // Address
20649 ,)
20650 },
20651
20652 ResourceTemplate ()
20653 {
20654 Register (PCC,
20655 0x20, // Bit Width
20656 0x00, // Bit Offset
20657 0x00000000000000EC, // Address
20658 ,)
20659 },
20660
20661 ResourceTemplate ()
20662 {
20663 Register (PCC,
20664 0x20, // Bit Width
20665 0x00, // Bit Offset
20666 0x00000000000000F0, // Address
20667 ,)
20668 },
20669
20670 ResourceTemplate ()
20671 {
20672 Register (FFixedHW,
20673 0x40, // Bit Width
20674 0x00, // Bit Offset
20675 0x00000000000000E7, // Address
20676 0x04, // Access Size
20677 )
20678 },
20679
20680 ResourceTemplate ()
20681 {
20682 Register (FFixedHW,
20683 0x40, // Bit Width
20684 0x00, // Bit Offset
20685 0x00000000000000E8, // Address
20686 0x04, // Access Size
20687 )
20688 },
20689
20690 ResourceTemplate ()
20691 {
20692 Register (PCC,
20693 0x20, // Bit Width
20694 0x00, // Bit Offset
20695 0x0000000000000104, // Address
20696 ,)
20697 },
20698
20699 ResourceTemplate ()
20700 {
20701 Register (PCC,
20702 0x20, // Bit Width
20703 0x00, // Bit Offset
20704 0x0000000000000108, // Address
20705 ,)
20706 }
20707 })
20708 }
20709
20710 Scope (\_PR.CPU3)
20711 {
20712 Name (_CPC, Package (0x11) // _CPC: Continuous Performance Control
20713 {
20714 0x11,
20715 One,
20716 ResourceTemplate ()
20717 {
20718 Register (PCC,
20719 0x20, // Bit Width
20720 0x00, // Bit Offset
20721 0x000000000000012C, // Address
20722 ,)
20723 },
20724
20725 ResourceTemplate ()
20726 {
20727 Register (PCC,
20728 0x20, // Bit Width
20729 0x00, // Bit Offset
20730 0x0000000000000130, // Address
20731 ,)
20732 },
20733
20734 ResourceTemplate ()
20735 {
20736 Register (PCC,
20737 0x20, // Bit Width
20738 0x00, // Bit Offset
20739 0x0000000000000134, // Address
20740 ,)
20741 },
20742
20743 ResourceTemplate ()
20744 {
20745 Register (PCC,
20746 0x20, // Bit Width
20747 0x00, // Bit Offset
20748 0x0000000000000138, // Address
20749 ,)
20750 },
20751
20752 ResourceTemplate ()
20753 {
20754 Register (PCC,
20755 0x20, // Bit Width
20756 0x00, // Bit Offset
20757 0x000000000000013C, // Address
20758 ,)
20759 },
20760
20761 ResourceTemplate ()
20762 {
20763 Register (PCC,
20764 0x20, // Bit Width
20765 0x00, // Bit Offset
20766 0x0000000000000140, // Address
20767 ,)
20768 },
20769
20770 ResourceTemplate ()
20771 {
20772 Register (PCC,
20773 0x20, // Bit Width
20774 0x00, // Bit Offset
20775 0x0000000000000144, // Address
20776 ,)
20777 },
20778
20779 ResourceTemplate ()
20780 {
20781 Register (PCC,
20782 0x20, // Bit Width
20783 0x00, // Bit Offset
20784 0x0000000000000148, // Address
20785 ,)
20786 },
20787
20788 ResourceTemplate ()
20789 {
20790 Register (PCC,
20791 0x20, // Bit Width
20792 0x00, // Bit Offset
20793 0x000000000000014C, // Address
20794 ,)
20795 },
20796
20797 ResourceTemplate ()
20798 {
20799 Register (PCC,
20800 0x20, // Bit Width
20801 0x00, // Bit Offset
20802 0x0000000000000150, // Address
20803 ,)
20804 },
20805
20806 ResourceTemplate ()
20807 {
20808 Register (PCC,
20809 0x20, // Bit Width
20810 0x00, // Bit Offset
20811 0x0000000000000154, // Address
20812 ,)
20813 },
20814
20815 ResourceTemplate ()
20816 {
20817 Register (FFixedHW,
20818 0x40, // Bit Width
20819 0x00, // Bit Offset
20820 0x00000000000000E7, // Address
20821 0x04, // Access Size
20822 )
20823 },
20824
20825 ResourceTemplate ()
20826 {
20827 Register (FFixedHW,
20828 0x40, // Bit Width
20829 0x00, // Bit Offset
20830 0x00000000000000E8, // Address
20831 0x04, // Access Size
20832 )
20833 },
20834
20835 ResourceTemplate ()
20836 {
20837 Register (PCC,
20838 0x20, // Bit Width
20839 0x00, // Bit Offset
20840 0x0000000000000168, // Address
20841 ,)
20842 },
20843
20844 ResourceTemplate ()
20845 {
20846 Register (PCC,
20847 0x20, // Bit Width
20848 0x00, // Bit Offset
20849 0x000000000000016C, // Address
20850 ,)
20851 }
20852 })
20853 }
20854
20855 Scope (\_PR.CPU4)
20856 {
20857 Name (_CPC, Package (0x11) // _CPC: Continuous Performance Control
20858 {
20859 0x11,
20860 One,
20861 ResourceTemplate ()
20862 {
20863 Register (PCC,
20864 0x20, // Bit Width
20865 0x00, // Bit Offset
20866 0x0000000000000190, // Address
20867 ,)
20868 },
20869
20870 ResourceTemplate ()
20871 {
20872 Register (PCC,
20873 0x20, // Bit Width
20874 0x00, // Bit Offset
20875 0x0000000000000194, // Address
20876 ,)
20877 },
20878
20879 ResourceTemplate ()
20880 {
20881 Register (PCC,
20882 0x20, // Bit Width
20883 0x00, // Bit Offset
20884 0x0000000000000198, // Address
20885 ,)
20886 },
20887
20888 ResourceTemplate ()
20889 {
20890 Register (PCC,
20891 0x20, // Bit Width
20892 0x00, // Bit Offset
20893 0x000000000000019C, // Address
20894 ,)
20895 },
20896
20897 ResourceTemplate ()
20898 {
20899 Register (PCC,
20900 0x20, // Bit Width
20901 0x00, // Bit Offset
20902 0x00000000000001A0, // Address
20903 ,)
20904 },
20905
20906 ResourceTemplate ()
20907 {
20908 Register (PCC,
20909 0x20, // Bit Width
20910 0x00, // Bit Offset
20911 0x00000000000001A4, // Address
20912 ,)
20913 },
20914
20915 ResourceTemplate ()
20916 {
20917 Register (PCC,
20918 0x20, // Bit Width
20919 0x00, // Bit Offset
20920 0x00000000000001A8, // Address
20921 ,)
20922 },
20923
20924 ResourceTemplate ()
20925 {
20926 Register (PCC,
20927 0x20, // Bit Width
20928 0x00, // Bit Offset
20929 0x00000000000001AC, // Address
20930 ,)
20931 },
20932
20933 ResourceTemplate ()
20934 {
20935 Register (PCC,
20936 0x20, // Bit Width
20937 0x00, // Bit Offset
20938 0x00000000000001B0, // Address
20939 ,)
20940 },
20941
20942 ResourceTemplate ()
20943 {
20944 Register (PCC,
20945 0x20, // Bit Width
20946 0x00, // Bit Offset
20947 0x00000000000001B4, // Address
20948 ,)
20949 },
20950
20951 ResourceTemplate ()
20952 {
20953 Register (PCC,
20954 0x20, // Bit Width
20955 0x00, // Bit Offset
20956 0x00000000000001B8, // Address
20957 ,)
20958 },
20959
20960 ResourceTemplate ()
20961 {
20962 Register (FFixedHW,
20963 0x40, // Bit Width
20964 0x00, // Bit Offset
20965 0x00000000000000E7, // Address
20966 0x04, // Access Size
20967 )
20968 },
20969
20970 ResourceTemplate ()
20971 {
20972 Register (FFixedHW,
20973 0x40, // Bit Width
20974 0x00, // Bit Offset
20975 0x00000000000000E8, // Address
20976 0x04, // Access Size
20977 )
20978 },
20979
20980 ResourceTemplate ()
20981 {
20982 Register (PCC,
20983 0x20, // Bit Width
20984 0x00, // Bit Offset
20985 0x00000000000001CC, // Address
20986 ,)
20987 },
20988
20989 ResourceTemplate ()
20990 {
20991 Register (PCC,
20992 0x20, // Bit Width
20993 0x00, // Bit Offset
20994 0x00000000000001D0, // Address
20995 ,)
20996 }
20997 })
20998 }
20999
21000 Scope (\_PR.CPU5)
21001 {
21002 Name (_CPC, Package (0x11) // _CPC: Continuous Performance Control
21003 {
21004 0x11,
21005 One,
21006 ResourceTemplate ()
21007 {
21008 Register (PCC,
21009 0x20, // Bit Width
21010 0x00, // Bit Offset
21011 0x00000000000001F4, // Address
21012 ,)
21013 },
21014
21015 ResourceTemplate ()
21016 {
21017 Register (PCC,
21018 0x20, // Bit Width
21019 0x00, // Bit Offset
21020 0x00000000000001F8, // Address
21021 ,)
21022 },
21023
21024 ResourceTemplate ()
21025 {
21026 Register (PCC,
21027 0x20, // Bit Width
21028 0x00, // Bit Offset
21029 0x00000000000001FC, // Address
21030 ,)
21031 },
21032
21033 ResourceTemplate ()
21034 {
21035 Register (PCC,
21036 0x20, // Bit Width
21037 0x00, // Bit Offset
21038 0x0000000000000200, // Address
21039 ,)
21040 },
21041
21042 ResourceTemplate ()
21043 {
21044 Register (PCC,
21045 0x20, // Bit Width
21046 0x00, // Bit Offset
21047 0x0000000000000204, // Address
21048 ,)
21049 },
21050
21051 ResourceTemplate ()
21052 {
21053 Register (PCC,
21054 0x20, // Bit Width
21055 0x00, // Bit Offset
21056 0x0000000000000208, // Address
21057 ,)
21058 },
21059
21060 ResourceTemplate ()
21061 {
21062 Register (PCC,
21063 0x20, // Bit Width
21064 0x00, // Bit Offset
21065 0x000000000000020C, // Address
21066 ,)
21067 },
21068
21069 ResourceTemplate ()
21070 {
21071 Register (PCC,
21072 0x20, // Bit Width
21073 0x00, // Bit Offset
21074 0x0000000000000210, // Address
21075 ,)
21076 },
21077
21078 ResourceTemplate ()
21079 {
21080 Register (PCC,
21081 0x20, // Bit Width
21082 0x00, // Bit Offset
21083 0x0000000000000214, // Address
21084 ,)
21085 },
21086
21087 ResourceTemplate ()
21088 {
21089 Register (PCC,
21090 0x20, // Bit Width
21091 0x00, // Bit Offset
21092 0x0000000000000218, // Address
21093 ,)
21094 },
21095
21096 ResourceTemplate ()
21097 {
21098 Register (PCC,
21099 0x20, // Bit Width
21100 0x00, // Bit Offset
21101 0x000000000000021C, // Address
21102 ,)
21103 },
21104
21105 ResourceTemplate ()
21106 {
21107 Register (FFixedHW,
21108 0x40, // Bit Width
21109 0x00, // Bit Offset
21110 0x00000000000000E7, // Address
21111 0x04, // Access Size
21112 )
21113 },
21114
21115 ResourceTemplate ()
21116 {
21117 Register (FFixedHW,
21118 0x40, // Bit Width
21119 0x00, // Bit Offset
21120 0x00000000000000E8, // Address
21121 0x04, // Access Size
21122 )
21123 },
21124
21125 ResourceTemplate ()
21126 {
21127 Register (PCC,
21128 0x20, // Bit Width
21129 0x00, // Bit Offset
21130 0x0000000000000230, // Address
21131 ,)
21132 },
21133
21134 ResourceTemplate ()
21135 {
21136 Register (PCC,
21137 0x20, // Bit Width
21138 0x00, // Bit Offset
21139 0x0000000000000234, // Address
21140 ,)
21141 }
21142 })
21143 }
21144
21145 Scope (\_PR.CPU6)
21146 {
21147 Name (_CPC, Package (0x11) // _CPC: Continuous Performance Control
21148 {
21149 0x11,
21150 One,
21151 ResourceTemplate ()
21152 {
21153 Register (PCC,
21154 0x20, // Bit Width
21155 0x00, // Bit Offset
21156 0x0000000000000258, // Address
21157 ,)
21158 },
21159
21160 ResourceTemplate ()
21161 {
21162 Register (PCC,
21163 0x20, // Bit Width
21164 0x00, // Bit Offset
21165 0x000000000000025C, // Address
21166 ,)
21167 },
21168
21169 ResourceTemplate ()
21170 {
21171 Register (PCC,
21172 0x20, // Bit Width
21173 0x00, // Bit Offset
21174 0x0000000000000260, // Address
21175 ,)
21176 },
21177
21178 ResourceTemplate ()
21179 {
21180 Register (PCC,
21181 0x20, // Bit Width
21182 0x00, // Bit Offset
21183 0x0000000000000264, // Address
21184 ,)
21185 },
21186
21187 ResourceTemplate ()
21188 {
21189 Register (PCC,
21190 0x20, // Bit Width
21191 0x00, // Bit Offset
21192 0x0000000000000268, // Address
21193 ,)
21194 },
21195
21196 ResourceTemplate ()
21197 {
21198 Register (PCC,
21199 0x20, // Bit Width
21200 0x00, // Bit Offset
21201 0x000000000000026C, // Address
21202 ,)
21203 },
21204
21205 ResourceTemplate ()
21206 {
21207 Register (PCC,
21208 0x20, // Bit Width
21209 0x00, // Bit Offset
21210 0x0000000000000270, // Address
21211 ,)
21212 },
21213
21214 ResourceTemplate ()
21215 {
21216 Register (PCC,
21217 0x20, // Bit Width
21218 0x00, // Bit Offset
21219 0x0000000000000274, // Address
21220 ,)
21221 },
21222
21223 ResourceTemplate ()
21224 {
21225 Register (PCC,
21226 0x20, // Bit Width
21227 0x00, // Bit Offset
21228 0x0000000000000278, // Address
21229 ,)
21230 },
21231
21232 ResourceTemplate ()
21233 {
21234 Register (PCC,
21235 0x20, // Bit Width
21236 0x00, // Bit Offset
21237 0x000000000000027C, // Address
21238 ,)
21239 },
21240
21241 ResourceTemplate ()
21242 {
21243 Register (PCC,
21244 0x20, // Bit Width
21245 0x00, // Bit Offset
21246 0x0000000000000280, // Address
21247 ,)
21248 },
21249
21250 ResourceTemplate ()
21251 {
21252 Register (FFixedHW,
21253 0x40, // Bit Width
21254 0x00, // Bit Offset
21255 0x00000000000000E7, // Address
21256 0x04, // Access Size
21257 )
21258 },
21259
21260 ResourceTemplate ()
21261 {
21262 Register (FFixedHW,
21263 0x40, // Bit Width
21264 0x00, // Bit Offset
21265 0x00000000000000E8, // Address
21266 0x04, // Access Size
21267 )
21268 },
21269
21270 ResourceTemplate ()
21271 {
21272 Register (PCC,
21273 0x20, // Bit Width
21274 0x00, // Bit Offset
21275 0x0000000000000294, // Address
21276 ,)
21277 },
21278
21279 ResourceTemplate ()
21280 {
21281 Register (PCC,
21282 0x20, // Bit Width
21283 0x00, // Bit Offset
21284 0x0000000000000298, // Address
21285 ,)
21286 }
21287 })
21288 }
21289
21290 Scope (\_PR.CPU7)
21291 {
21292 Name (_CPC, Package (0x11) // _CPC: Continuous Performance Control
21293 {
21294 0x11,
21295 One,
21296 ResourceTemplate ()
21297 {
21298 Register (PCC,
21299 0x20, // Bit Width
21300 0x00, // Bit Offset
21301 0x00000000000002BC, // Address
21302 ,)
21303 },
21304
21305 ResourceTemplate ()
21306 {
21307 Register (PCC,
21308 0x20, // Bit Width
21309 0x00, // Bit Offset
21310 0x00000000000002C0, // Address
21311 ,)
21312 },
21313
21314 ResourceTemplate ()
21315 {
21316 Register (PCC,
21317 0x20, // Bit Width
21318 0x00, // Bit Offset
21319 0x00000000000002C4, // Address
21320 ,)
21321 },
21322
21323 ResourceTemplate ()
21324 {
21325 Register (PCC,
21326 0x20, // Bit Width
21327 0x00, // Bit Offset
21328 0x00000000000002C8, // Address
21329 ,)
21330 },
21331
21332 ResourceTemplate ()
21333 {
21334 Register (PCC,
21335 0x20, // Bit Width
21336 0x00, // Bit Offset
21337 0x00000000000002CC, // Address
21338 ,)
21339 },
21340
21341 ResourceTemplate ()
21342 {
21343 Register (PCC,
21344 0x20, // Bit Width
21345 0x00, // Bit Offset
21346 0x00000000000002D0, // Address
21347 ,)
21348 },
21349
21350 ResourceTemplate ()
21351 {
21352 Register (PCC,
21353 0x20, // Bit Width
21354 0x00, // Bit Offset
21355 0x00000000000002D4, // Address
21356 ,)
21357 },
21358
21359 ResourceTemplate ()
21360 {
21361 Register (PCC,
21362 0x20, // Bit Width
21363 0x00, // Bit Offset
21364 0x00000000000002D8, // Address
21365 ,)
21366 },
21367
21368 ResourceTemplate ()
21369 {
21370 Register (PCC,
21371 0x20, // Bit Width
21372 0x00, // Bit Offset
21373 0x00000000000002DC, // Address
21374 ,)
21375 },
21376
21377 ResourceTemplate ()
21378 {
21379 Register (PCC,
21380 0x20, // Bit Width
21381 0x00, // Bit Offset
21382 0x00000000000002E0, // Address
21383 ,)
21384 },
21385
21386 ResourceTemplate ()
21387 {
21388 Register (PCC,
21389 0x20, // Bit Width
21390 0x00, // Bit Offset
21391 0x00000000000002E4, // Address
21392 ,)
21393 },
21394
21395 ResourceTemplate ()
21396 {
21397 Register (FFixedHW,
21398 0x40, // Bit Width
21399 0x00, // Bit Offset
21400 0x00000000000000E7, // Address
21401 0x04, // Access Size
21402 )
21403 },
21404
21405 ResourceTemplate ()
21406 {
21407 Register (FFixedHW,
21408 0x40, // Bit Width
21409 0x00, // Bit Offset
21410 0x00000000000000E8, // Address
21411 0x04, // Access Size
21412 )
21413 },
21414
21415 ResourceTemplate ()
21416 {
21417 Register (PCC,
21418 0x20, // Bit Width
21419 0x00, // Bit Offset
21420 0x00000000000002F8, // Address
21421 ,)
21422 },
21423
21424 ResourceTemplate ()
21425 {
21426 Register (PCC,
21427 0x20, // Bit Width
21428 0x00, // Bit Offset
21429 0x00000000000002FC, // Address
21430 ,)
21431 }
21432 })
21433 }
21434
21435 Scope (\_SB)
21436 {
21437 Name (TCGP, Buffer (0x08)
21438 {
21439 0x00, 0xE0, 0x1F, 0x01, 0x02, 0x04, 0x08, 0xF0 /* ........ */
21440 })
21441 CreateByteField (TCGP, Zero, PPRQ)
21442 CreateByteField (TCGP, One, PPL1)
21443 CreateByteField (TCGP, 0x02, PPRP)
21444 CreateByteField (TCGP, 0x03, TPRS)
21445 CreateByteField (TCGP, 0x04, PPOR)
21446 CreateByteField (TCGP, 0x05, TPMV)
21447 CreateByteField (TCGP, 0x06, MOR)
21448 CreateByteField (TCGP, 0x07, TVEN)
21449 OperationRegion (TCGC, SystemIO, 0x72, 0x02)
21450 Field (TCGC, ByteAcc, Lock, Preserve)
21451 {
21452 TIDX, 8,
21453 TPDA, 8
21454 }
21455
21456 IndexField (TIDX, TPDA, ByteAcc, Lock, Preserve)
21457 {
21458 Offset (0x40),
21459 TPP1, 8,
21460 PPLO, 8,
21461 TPP3, 8
21462 }
21463
21464 OperationRegion (SMIP, SystemIO, 0xB2, 0x02)
21465 Field (SMIP, ByteAcc, NoLock, Preserve)
21466 {
21467 SMIT, 8,
21468 SMID, 8
21469 }
21470 }
21471
21472 Scope (\_SB.PCI0.LPC)
21473 {
21474 OperationRegion (TPMF, SystemMemory, 0xACD6AE98, 0x0004)
21475 Field (TPMF, AnyAcc, Lock, Preserve)
21476 {
21477 PPIP, 8,
21478 PPIC, 8,
21479 TPM2, 8
21480 }
21481
21482 Device (TPM)
21483 {
21484 Name (TMPV, Zero)
21485 Method (_HID, 0, NotSerialized) // _HID: Hardware ID
21486 {
21487 If ((TVID == 0x15D1))
21488 {
21489 Return (0x0201D824)
21490 }
21491
21492 If (((TVID == 0x1050) || (TVID == 0x100B)))
21493 {
21494 Return (0x0010A35C)
21495 }
21496
21497 If ((TVID == 0x19FA))
21498 {
21499 Return (0x0435CF4D)
21500 }
21501
21502 If ((TDID == 0x1002))
21503 {
21504 Return (0x02016D08)
21505 }
21506
21507 If ((TDID == 0x1001))
21508 {
21509 Return (0x01016D08)
21510 }
21511
21512 If ((TVID == 0x1114))
21513 {
21514 Return (0x00128D06)
21515 }
21516
21517 If ((TVID == 0x104A))
21518 {
21519 Return (0x0012AF4D)
21520 }
21521
21522 Return (0x310CD041)
21523 }
21524
21525 Method (_CID, 0, NotSerialized) // _CID: Compatible ID
21526 {
21527 Return (0x310CD041)
21528 }
21529
21530 Name (_UID, One) // _UID: Unique ID
21531 OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x1000)
21532 Field (TMMB, ByteAcc, Lock, Preserve)
21533 {
21534 ACCS, 8,
21535 Offset (0x18),
21536 TSTA, 8,
21537 TBCA, 8,
21538 Offset (0xF00),
21539 TVID, 16,
21540 TDID, 16
21541 }
21542
21543 Method (_STA, 0, NotSerialized) // _STA: Status
21544 {
21545 If ((ACCS == 0xFF))
21546 {
21547 Return (Zero)
21548 }
21549 Else
21550 {
21551 If ((\TPME == Zero))
21552 {
21553 Return (Zero)
21554 }
21555
21556 Return (0x0F)
21557 }
21558 }
21559
21560 Name (BUF1, ResourceTemplate ()
21561 {
21562 Memory32Fixed (ReadOnly,
21563 0xFED40000, // Address Base
21564 0x00005000, // Address Length
21565 )
21566 })
21567 Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
21568 {
21569 Return (BUF1) /* \_SB_.PCI0.LPC_.TPM_.BUF1 */
21570 }
21571
21572 Method (UCMP, 2, NotSerialized)
21573 {
21574 If ((0x10 != SizeOf (Arg0)))
21575 {
21576 Return (Zero)
21577 }
21578
21579 If ((0x10 != SizeOf (Arg1)))
21580 {
21581 Return (Zero)
21582 }
21583
21584 Local0 = Zero
21585 While ((Local0 < 0x10))
21586 {
21587 If ((DerefOf (Index (Arg0, Local0)) != DerefOf (Index (Arg1, Local0
21588 ))))
21589 {
21590 Return (Zero)
21591 }
21592
21593 Local0++
21594 }
21595
21596 Return (One)
21597 }
21598
21599 Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
21600 {
21601 Name (TTMP, Buffer (One)
21602 {
21603 0x00 /* . */
21604 })
21605 CreateByteField (TTMP, Zero, TMPV)
21606 If ((UCMP (Arg0, ToUUID ("3dddfaa6-361b-4eb4-a424-8d10089d1653") /* Physical Presence Interface */) == One))
21607 {
21608 If ((Arg2 == Zero))
21609 {
21610 Return (Buffer (0x02)
21611 {
21612 0xFF, 0x01 /* .. */
21613 })
21614 }
21615
21616 If ((Arg2 == One))
21617 {
21618 Return (Buffer (0x04)
21619 {
21620 "1.2"
21621 })
21622 }
21623
21624 If ((Arg2 == 0x02))
21625 {
21626 If ((DerefOf (Index (Arg3, Zero)) <= 0x0B))
21627 {
21628 PPRQ = DerefOf (Index (Arg3, Zero))
21629 SMID = PPRQ /* \_SB_.PPRQ */
21630 SMIT = 0xC1
21631 Return (Zero)
21632 }
21633
21634 If (((DerefOf (Index (Arg3, Zero)) >= 0x0E) && (
21635 DerefOf (Index (Arg3, Zero)) <= 0x12)))
21636 {
21637 PPRQ = DerefOf (Index (Arg3, Zero))
21638 SMID = PPRQ /* \_SB_.PPRQ */
21639 SMIT = 0xC1
21640 Return (Zero)
21641 }
21642
21643 If (((DerefOf (Index (Arg3, Zero)) == 0x15) || (DerefOf (Index (
21644 Arg3, Zero)) == 0x16)))
21645 {
21646 PPRQ = DerefOf (Index (Arg3, Zero))
21647 SMID = PPRQ /* \_SB_.PPRQ */
21648 SMIT = 0xC1
21649 Return (Zero)
21650 }
21651
21652 Return (One)
21653 }
21654
21655 If ((Arg2 == 0x03))
21656 {
21657 Name (TMP1, Package (0x02)
21658 {
21659 Zero,
21660 Ones
21661 })
21662 TMPV = PPRQ /* \_SB_.PPRQ */
21663 Index (TMP1, One) = TMPV &= 0x1F
21664 Return (TMP1) /* \_SB_.PCI0.LPC_.TPM_._DSM.TMP1 */
21665 }
21666
21667 If ((Arg2 == 0x04))
21668 {
21669 Return (0x02)
21670 }
21671
21672 If ((Arg2 == 0x05))
21673 {
21674 Name (TMP2, Package (0x03)
21675 {
21676 Zero,
21677 Ones,
21678 Ones
21679 })
21680 SMID = 0xFF
21681 SMIT = 0xC1
21682 Index (TMP2, One) = SMID /* \_SB_.SMID */
21683 Index (TMP2, 0x02) = Zero
21684 Return (TMP2) /* \_SB_.PCI0.LPC_.TPM_._DSM.TMP2 */
21685 }
21686
21687 If ((Arg2 == 0x06))
21688 {
21689 Return (0x03)
21690 }
21691
21692 If ((Arg2 == 0x07))
21693 {
21694 If ((DerefOf (Index (Arg3, Zero)) <= 0x0B))
21695 {
21696 PPRQ = DerefOf (Index (Arg3, Zero))
21697 SMID = PPRQ /* \_SB_.PPRQ */
21698 SMIT = 0xC1
21699 Return (Zero)
21700 }
21701
21702 If (((DerefOf (Index (Arg3, Zero)) >= 0x0E) && (
21703 DerefOf (Index (Arg3, Zero)) <= 0x12)))
21704 {
21705 PPRQ = DerefOf (Index (Arg3, Zero))
21706 SMID = PPRQ /* \_SB_.PPRQ */
21707 SMIT = 0xC1
21708 Return (Zero)
21709 }
21710
21711 If (((DerefOf (Index (Arg3, Zero)) == 0x15) || (DerefOf (Index (
21712 Arg3, Zero)) == 0x16)))
21713 {
21714 PPRQ = DerefOf (Index (Arg3, Zero))
21715 SMID = PPRQ /* \_SB_.PPRQ */
21716 SMIT = 0xC1
21717 Return (Zero)
21718 }
21719
21720 Return (One)
21721 }
21722
21723 If ((Arg2 == 0x08))
21724 {
21725 If ((TPM2 == One))
21726 {
21727 If ((DerefOf (Index (Arg3, Zero)) == Zero))
21728 {
21729 Return (0x04)
21730 }
21731
21732 If (((DerefOf (Index (Arg3, Zero)) >= One) && (
21733 DerefOf (Index (Arg3, Zero)) <= 0x04)))
21734 {
21735 Return (0x04)
21736 }
21737
21738 If (((DerefOf (Index (Arg3, Zero)) >= 0x06) && (
21739 DerefOf (Index (Arg3, Zero)) <= 0x0D)))
21740 {
21741 Return (0x04)
21742 }
21743
21744 If (((DerefOf (Index (Arg3, Zero)) == 0x0F) || (DerefOf (Index (
21745 Arg3, Zero)) == 0x10)))
21746 {
21747 Return (0x04)
21748 }
21749
21750 If (((DerefOf (Index (Arg3, Zero)) == 0x13) || (DerefOf (Index (
21751 Arg3, Zero)) == 0x14)))
21752 {
21753 Return (0x04)
21754 }
21755
21756 If (((DerefOf (Index (Arg3, Zero)) == 0x05) || (DerefOf (Index (
21757 Arg3, Zero)) == 0x0E)))
21758 {
21759 If ((PPIC > Zero))
21760 {
21761 Return (0x04)
21762 }
21763
21764 Return (0x03)
21765 }
21766
21767 If (((DerefOf (Index (Arg3, Zero)) == 0x15) || (DerefOf (Index (
21768 Arg3, Zero)) == 0x16)))
21769 {
21770 If ((PPIC > Zero))
21771 {
21772 Return (0x04)
21773 }
21774
21775 Return (0x03)
21776 }
21777
21778 If ((DerefOf (Index (Arg3, Zero)) == 0x11))
21779 {
21780 Return (0x04)
21781 }
21782
21783 If ((DerefOf (Index (Arg3, Zero)) == 0x12))
21784 {
21785 Return (0x03)
21786 }
21787 }
21788 Else
21789 {
21790 If ((DerefOf (Index (Arg3, Zero)) == 0x05))
21791 {
21792 If ((PPIC > Zero))
21793 {
21794 Return (0x04)
21795 }
21796
21797 Return (0x03)
21798 }
21799
21800 If (((DerefOf (Index (Arg3, Zero)) >= One) && (
21801 DerefOf (Index (Arg3, Zero)) <= 0x04)))
21802 {
21803 If ((PPIP > Zero))
21804 {
21805 Return (0x04)
21806 }
21807
21808 Return (0x03)
21809 }
21810
21811 If (((DerefOf (Index (Arg3, Zero)) >= 0x06) && (
21812 DerefOf (Index (Arg3, Zero)) <= 0x0B)))
21813 {
21814 If ((PPIP > Zero))
21815 {
21816 Return (0x04)
21817 }
21818
21819 Return (0x03)
21820 }
21821
21822 If (((DerefOf (Index (Arg3, Zero)) == 0x0E) || ((
21823 DerefOf (Index (Arg3, Zero)) >= 0x15) && (DerefOf (Index (Arg3, Zero)) <=
21824 0x16))))
21825 {
21826 If (((PPIP > Zero) && (PPIC > Zero)))
21827 {
21828 Return (0x04)
21829 }
21830
21831 Return (0x03)
21832 }
21833
21834 If (((DerefOf (Index (Arg3, Zero)) == 0x10) || (DerefOf (Index (
21835 Arg3, Zero)) == 0x12)))
21836 {
21837 Return (0x03)
21838 }
21839
21840 If (((DerefOf (Index (Arg3, Zero)) == Zero) || ((DerefOf (
21841 Index (Arg3, Zero)) == 0x0F) || (DerefOf (Index (Arg3, Zero)) == 0x11))))
21842 {
21843 Return (0x04)
21844 }
21845
21846 Return (Zero)
21847 }
21848 }
21849
21850 Return (One)
21851 }
21852
21853 If ((UCMP (Arg0, ToUUID ("376054ed-cc13-4675-901c-4756d7f2d45d")) == One))
21854 {
21855 If ((Arg2 == Zero))
21856 {
21857 Return (Buffer (One)
21858 {
21859 0x03 /* . */
21860 })
21861 }
21862
21863 If ((Arg2 == One))
21864 {
21865 TMPV = DerefOf (Index (Arg3, Zero))
21866 TMPV &= One
21867 If ((TMPV == Zero))
21868 {
21869 \_SB.MOR = Zero
21870 Return (Zero)
21871 }
21872
21873 If ((TMPV == One))
21874 {
21875 \_SB.MOR = One
21876 Return (Zero)
21877 }
21878 }
21879
21880 Return (One)
21881 }
21882
21883 Return (Buffer (One)
21884 {
21885 0x00 /* . */
21886 })
21887 }
21888
21889 Method (CMOR, 0, NotSerialized)
21890 {
21891 \_SB.MOR = Zero
21892 SMID = 0x80
21893 SMIT = 0xC1
21894 }
21895 }
21896 }
21897 }
Attached Files
To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.You are not allowed to attach a file to this page.