Vlv2DeviceRefCodePkg&Vlv2TbltDevicePkg:Add setup option of LPE Audio.
[mirror_edk2.git] / Vlv2DeviceRefCodePkg / AcpiTablesPCAT / PchLpss.asl
1 /**************************************************************************;
2 ;* *;
3 ;* *;
4 ;* Intel Corporation - ACPI Reference Code for the Baytrail *;
5 ;* Family of Customer Reference Boards. *;
6 ;* *;
7 ;* *;
8 ;* Copyright (c) 2012 - 2016, Intel Corporation. All rights reserved *;
9 ;
10 ; This program and the accompanying materials are licensed and made available under
11 ; the terms and conditions of the BSD License that accompanies this distribution.
12 ; The full text of the license may be found at
13 ; http://opensource.org/licenses/bsd-license.php.
14 ;
15 ; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
16 ; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17 ;
18 ;* *;
19 ;* *;
20 ;**************************************************************************/
21 //
22 // LPIO1 DMA#1 (Synopsis GP DMA)
23 //
24 Device (GDM1)
25 {
26 Name (_HID, "INTL9C60")
27 Name (_DDN, "Intel(R) DMA Controller #1 - INTL9C60")
28 Name (_UID, 1)
29
30 Name (RBUF, ResourceTemplate ()
31 {
32 Memory32Fixed (ReadWrite, 0x00000000, 0x00004000, BAR0)
33 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {42} // DMA #1 IRQ
34 })
35 Method (_CRS, 0x0, NotSerialized)
36 {
37 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
38 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
39 Store(D10A, B0BA)
40 Store(D10L, B0LN)
41 Return (RBUF)
42 }
43 Method (_STA, 0x0, NotSerialized)
44 {
45 //
46 // PCIM>> 0:ACPI mode 1:PCI mode
47 //
48 If (LEqual(PCIM, 1)) {
49 Return (0x0)
50 }
51
52 If (LOr(LEqual(D10A, 0), LEqual(L10D, 1)))
53 {
54 Return (0x0)
55 }
56 Return (0xF)
57 }
58 }
59
60 //
61 // LPIO1 DMA#2 (Synopsis GP DMA)
62 //
63 Device (GDM2)
64 {
65 Name (_HID, "INTL9C60")
66 Name (_DDN, "Intel(R) DMA Controller #2 - INTL9C60")
67 Name (_UID, 2)
68
69 Name (RBUF, ResourceTemplate ()
70 {
71 Memory32Fixed (ReadWrite, 0x00000000, 0x00004000, BAR0)
72 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {43} // DMA #2 IRQ
73 })
74 Method (_CRS, 0x0, NotSerialized)
75 {
76 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
77 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
78 Store(D20A, B0BA)
79 Store(D20L, B0LN)
80 Return (RBUF)
81 }
82 Method (_STA, 0x0, NotSerialized)
83 {
84 //
85 // PCIM>> 0:ACPI mode 1:PCI mode
86 //
87 If (LEqual(PCIM, 1)) {
88 Return (0x0)
89 }
90
91 If (LOr(LEqual(D20A, 0), LEqual(L20D, 1)))
92 {
93 Return (0x0)
94 }
95 Return (0xF)
96 }
97 }
98
99 //
100 // LPIO1 PWM #1
101 //
102 Device(PWM1)
103 {
104 Name (_ADR, 0)
105 Name (_HID, "80860F09")
106 Name (_CID, "80860F09")
107 Name (_DDN, "Intel(R) PWM Controller #1 - 80860F08")
108 Name (_UID, 1)
109
110 Name (RBUF, ResourceTemplate ()
111 {
112 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
113 })
114 Method (_CRS, 0x0, NotSerialized)
115 {
116 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
117 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
118 Store(P10A, B0BA)
119 Store(P10L, B0LN)
120 Return (RBUF)
121 }
122 Method (_STA, 0x0, NotSerialized)
123 {
124 //
125 // PCIM>> 0:ACPI mode 1:PCI mode
126 //
127 If (LEqual(PCIM, 1)) {
128 Return (0x0)
129 }
130
131 If (LOr(LEqual(P10A, 0), LEqual(L11D, 1)))
132 {
133 Return (0x0)
134 }
135 Return (0xF)
136 }
137 }
138
139 //
140 // LPIO1 PWM #2
141 //
142 Device(PWM2)
143 {
144 Name (_ADR, 0)
145 Name (_HID, "80860F09")
146 Name (_CID, "80860F09")
147 Name (_DDN, "Intel(R) PWM Controller #2 - 80860F09")
148 Name (_UID, 2)
149
150 Name (RBUF, ResourceTemplate ()
151 {
152 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
153 })
154 Method (_CRS, 0x0, NotSerialized)
155 {
156 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
157 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
158 Store(P20A, B0BA)
159 Store(P20L, B0LN)
160 Return (RBUF)
161 }
162 Method (_STA, 0x0, NotSerialized)
163 {
164 //
165 // PCIM>> 0:ACPI mode 1:PCI mode
166 //
167 If (LEqual(PCIM, 1)) {
168 Return (0x0)
169 }
170
171 If (LOr(LEqual(P20A, 0), LEqual(L12D, 1)))
172 {
173 Return (0x0)
174 }
175 Return (0xF)
176 }
177 }
178
179 //
180 // LPIO1 HS-UART #1
181 //
182 Device(URT1)
183 {
184 Name (_ADR, 0)
185 Name (_HID, "80860F0A")
186 Name (_CID, "80860F0A")
187 Name (_DDN, "Intel(R) HS-UART Controller #1 - 80860F0A")
188 Name (_UID, 1)
189 Name(_DEP, Package(0x1)
190 {
191 PEPD
192 })
193 Name (RBUF, ResourceTemplate ()
194 {
195 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
196 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {39} // HS-UART #1 IRQ
197
198 FixedDMA(0x2, 0x2, Width32Bit, )
199 FixedDMA(0x3, 0x3, Width32Bit, )
200 })
201 Method (_HRV, 0x0, NotSerialized)
202 {
203 Return (SOCS)
204 }
205 Method (_CRS, 0x0, NotSerialized)
206 {
207 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
208 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
209 Store(U10A, B0BA)
210 Store(U10L, B0LN)
211 Return (RBUF)
212 }
213
214 Method (_STA, 0x0, NotSerialized)
215 {
216 //
217 // PCIM>> 0:ACPI mode 1:PCI mode
218 //
219 If (LEqual(PCIM, 1)) {
220 Return (0x0)
221 }
222
223 If (LOr(LEqual(U10A, 0), LEqual(L13D, 1)))
224 {
225 Return (0x0)
226 }
227 Return (0xF)
228 }
229
230 Method (_PS3, 0, NotSerialized)
231 {
232 OR(PSAT, 0x00000003, PSAT)
233 OR(PSAT, 0X00000000, PSAT)
234 }
235
236 Method (_PS0, 0, NotSerialized)
237 {
238 And(PSAT, 0xfffffffC, PSAT)
239 OR(PSAT, 0X00000000, PSAT)
240 }
241
242 OperationRegion (KEYS, SystemMemory, U11A, 0x100)
243 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
244 {
245 Offset (0x84),
246 PSAT, 32
247 }
248 }// Device (URT1)
249
250 //
251 // LPIO1 HS-UART #2
252 //
253 Device(URT2)
254 {
255 Name (_ADR, 0)
256 Name (_HID, "80860F0A")
257 Name (_CID, "80860F0A")
258 Name (_DDN, "Intel(R) HS-UART Controller #2 - 80860F0C")
259 Name (_UID, 2)
260
261 Name(_DEP, Package(0x1)
262 {
263 PEPD
264 })
265
266 Name (RBUF, ResourceTemplate ()
267 {
268 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
269 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {40} // HS-UART #2 IRQ
270
271 FixedDMA(0x4, 0x4, Width32Bit, )
272 FixedDMA(0x5, 0x5, Width32Bit, )
273 })
274
275 Method (_HRV, 0x0, NotSerialized)
276 {
277 Return (SOCS)
278 }
279
280 Method (_CRS, 0x0, NotSerialized)
281 {
282 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
283 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
284 Store(U20A, B0BA)
285 Store(U20L, B0LN)
286 Return (RBUF)
287 }
288
289 Method (_STA, 0x0, NotSerialized)
290 {
291 //
292 // PCIM>> 0:ACPI mode 1:PCI mode
293 //
294 If (LEqual(PCIM, 1)) {
295 Return (0x0)
296 }
297
298 If (LOr(LEqual(U20A, 0), LEqual(L14D, 1)))
299 {
300 Return (0x0)
301 }
302 Return (0xF)
303 }
304
305 Method (_PS3, 0, NotSerialized)
306 {
307 OR(PSAT, 0x00000003, PSAT)
308 OR(PSAT, 0X00000000, PSAT)
309 }
310
311 Method (_PS0, 0, NotSerialized)
312 {
313 And(PSAT, 0xfffffffC, PSAT)
314 OR(PSAT, 0X00000000, PSAT)
315 }
316
317 OperationRegion (KEYS, SystemMemory, U21A, 0x100)
318 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
319 {
320 Offset (0x84),
321 PSAT, 32
322 }
323 }// Device (URT2)
324
325 //
326 // LPIO1 SPI
327 //
328 Device(SPI1)
329 {
330 Name (_ADR, 0)
331 Name (_HID, "80860F0E")
332 Name (_CID, "80860F0E")
333 Name (_UID, "0") // Static bus number assignment
334 Name(_DEP, Package(0x1)
335 {
336 PEPD
337 })
338 Name (_DDN, "Intel(R) SPI Controller - 80860F0E")
339
340 Name (RBUF, ResourceTemplate ()
341 {
342 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
343 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {41} // SPI IRQ
344
345 FixedDMA(0x0, 0x0, Width32Bit, )
346 FixedDMA(0x1, 0x1, Width32Bit, )
347 })
348
349 Method (_HRV, 0x0, NotSerialized)
350 {
351 Return (SOCS)
352 }
353
354 Method (_CRS, 0x0, NotSerialized)
355 {
356 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
357 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
358 Store(SP0A, B0BA)
359 Store(SP0L, B0LN)
360 Return (RBUF)
361 }
362
363 Method (_STA, 0x0, NotSerialized)
364 {
365 //
366 // PCIM>> 0:ACPI mode 1:PCI mode
367 //
368 If (LEqual(PCIM, 1)) {
369 Return (0x0)
370 }
371
372 If (LOr(LEqual(SP0A, 0), LEqual(L15D, 1)))
373 {
374 Return (0x0)
375 }
376 Return (0xF)
377 }
378
379 Method (_PS3, 0, NotSerialized)
380 {
381 OR(PSAT, 0x00000003, PSAT)
382 OR(PSAT, 0X00000000, PSAT)
383 }
384
385 Method (_PS0, 0, NotSerialized)
386 {
387 And(PSAT, 0xfffffffC, PSAT)
388 OR(PSAT, 0X00000000, PSAT)
389 }
390
391 OperationRegion (KEYS, SystemMemory, SP1A, 0x100)
392 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
393 {
394 Offset (0x84),
395 PSAT, 32
396 }
397 }// Device (SPI1)
398
399 //
400 // LPIO2 I2C #1
401 //
402 Device(I2C1)
403 {
404 Name (_ADR, 0)
405 Name (_HID, "80860F41")
406 Name (_CID, "80860F41")
407 Name(_DEP, Package(0x1)
408 {
409 PEPD
410 })
411 Name (_DDN, "Intel(R) I2C Controller #1 - 80860F41")
412 Name (_UID, 1)
413
414 Name (RBUF, ResourceTemplate ()
415 {
416 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
417 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {32} // I2C #1 IRQ
418
419 FixedDMA(0x10, 0x0, Width32Bit, )
420 FixedDMA(0x11, 0x1, Width32Bit, )
421 })
422
423 Method (SSCN, 0x0, NotSerialized)
424 {
425 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
426 Return (PKG)
427 }
428 Method (FMCN, 0x0, NotSerialized)
429 {
430 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
431 Return (PKG)
432 }
433 Method (FPCN, 0x0, NotSerialized)
434 {
435 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
436 Return (PKG)
437 }
438
439 Method (_HRV, 0x0, NotSerialized)
440 {
441 Return (SOCS)
442 }
443 Method (_CRS, 0x0, NotSerialized)
444 {
445 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
446 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
447 Store(I10A, B0BA)
448 Store(I10L, B0LN)
449 Return (RBUF)
450 }
451 Method (_STA, 0x0, NotSerialized)
452 {
453 //
454 // PCIM>> 0:ACPI mode 1:PCI mode
455 //
456 If (LEqual(PCIM, 1)) {
457 Return (0x0)
458 }
459
460 If (LOr(LEqual(I10A, 0), LEqual(L21D, 1)))
461 {
462 Return (0x0)
463 }
464 Return (0xF)
465
466 }
467
468 Method (_PS3, 0, NotSerialized)
469 {
470 OR(PSAT, 0x00000003, PSAT)
471 OR(PSAT, 0X00000000, PSAT)
472 }
473 Method (_PS0, 0, NotSerialized)
474 {
475 And(PSAT, 0xfffffffC, PSAT)
476 OR(PSAT, 0X00000000, PSAT)
477 }
478 OperationRegion (KEYS, SystemMemory, I11A, 0x100)
479 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
480 {
481 Offset (0x84),
482 PSAT, 32
483 }
484
485 }
486
487 //
488 // LPIO2 I2C #2
489 //
490 Device(I2C2)
491 {
492 Name (_ADR, 0)
493 Name (_HID, "80860F41")
494 Name (_CID, "80860F41")
495 Name(_DEP, Package(0x1)
496 {
497 PEPD
498 })
499 Name (_DDN, "Intel(R) I2C Controller #2 - 80860F42")
500 Name (_UID, 2)
501
502 Name (RBUF, ResourceTemplate ()
503 {
504 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
505 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {33} // I2C #2 IRQ
506
507 FixedDMA(0x12, 0x2, Width32Bit, )
508 FixedDMA(0x13, 0x3, Width32Bit, )
509 })
510
511 Method (SSCN, 0x0, NotSerialized)
512 {
513 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
514 Return (PKG)
515 }
516 Method (FMCN, 0x0, NotSerialized)
517 {
518 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
519 Return (PKG)
520 }
521 Method (FPCN, 0x0, NotSerialized)
522 {
523 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
524 Return (PKG)
525 }
526
527 Method (_HRV, 0x0, NotSerialized)
528 {
529 Return (SOCS)
530 }
531 Method (_CRS, 0x0, NotSerialized)
532 {
533 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
534 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
535 Store(I20A, B0BA)
536 Store(I20L, B0LN)
537 Return (RBUF)
538 }
539 Method (_STA, 0x0, NotSerialized)
540 {
541 //
542 // PCIM>> 0:ACPI mode 1:PCI mode
543 //
544 If (LEqual(PCIM, 1)) {
545 Return (0x0)
546 }
547
548 If (LOr(LEqual(I20A, 0), LEqual(L22D, 1)))
549 {
550 Return (0x0)
551 }
552 Return (0xF)
553 }
554
555 Method (_PS3, 0, NotSerialized)
556 {
557 OR(PSAT, 0x00000003, PSAT)
558 OR(PSAT, 0X00000000, PSAT)
559
560 }
561 Method (_PS0, 0, NotSerialized)
562 {
563 And(PSAT, 0xfffffffC, PSAT)
564 OR(PSAT, 0X00000000, PSAT)
565 }
566 OperationRegion (KEYS, SystemMemory, I21A, 0x100)
567 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
568 {
569 Offset (0x84),
570 PSAT, 32
571 }
572
573
574 //
575 // Realtek Audio Codec
576 //
577 Device (RTEK) //Audio Codec driver I2C
578 {
579 Name (_ADR, 0)
580 Name (_HID, "10EC5640")
581 Name (_CID, "10EC5640")
582 Name (_DDN, "RTEK Codec Controller " )
583 Name (_UID, 1)
584
585
586 Method(_CRS, 0x0, Serialized)
587 {
588 Name(SBUF,ResourceTemplate ()
589 {
590 I2CSerialBus(0x1C, //SlaveAddress: bus address
591 , //SlaveMode: default to ControllerInitiated
592 400000, //ConnectionSpeed: in Hz
593 , //Addressing Mode: default to 7 bit
594 "\\_SB.I2C2", //ResourceSource: I2C bus controller name
595 , //ResourceSourceIndex: defaults to 0
596 , //ResourceUsage: Defaults to ResourceConsumer
597 , //Descriptor Name: creates name for offset of resource descriptor
598 ) //VendorData
599 GpioInt(Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0,"\\_SB.GPO2") {4} // AUD_INT
600 })
601 Return (SBUF)
602 }
603
604 Method (_STA, 0x0, NotSerialized)
605 {
606
607 If (LEqual(LPEE, 2)) { // LPE enable/disable
608 If (LEqual(LPAD, 1))
609 {
610 Return(0xF)
611 }
612 }
613 Return(0)
614 }
615
616 Method (_DIS, 0x0, NotSerialized)
617 {
618
619 }
620 } // Device (RTEK)
621 } // Device (I2C2)
622
623 //
624 // LPIO2 I2C #3
625 //
626 Device(I2C3)
627 {
628 Name (_ADR, 0)
629 Name (_HID, "80860F41")
630 Name (_CID, "80860F41")
631 Name (_DDN, "Intel(R) I2C Controller #3 - 80860F43")
632 Name (_UID, 3)
633 Name(_DEP, Package(0x1)
634 {
635 PEPD
636 })
637 Name (RBUF, ResourceTemplate ()
638 {
639 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
640 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {34} // I2C #3 IRQ
641
642 FixedDMA(0x14, 0x4, Width32Bit, )
643 FixedDMA(0x15, 0x5, Width32Bit, )
644 })
645
646 Method (SSCN, 0x0, NotSerialized)
647 {
648 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
649 Return (PKG)
650 }
651 Method (FMCN, 0x0, NotSerialized)
652 {
653 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
654 Return (PKG)
655 }
656 Method (FPCN, 0x0, NotSerialized)
657 {
658 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
659 Return (PKG)
660 }
661
662 Method (_HRV, 0x0, NotSerialized)
663 {
664 Return (SOCS)
665 }
666 Method (_CRS, 0x0, NotSerialized)
667 {
668 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
669 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
670 Store(I30A, B0BA)
671 Store(I30L, B0LN)
672 Return (RBUF)
673 }
674
675 Method (_STA, 0x0, NotSerialized)
676 {
677 //
678 // PCIM>> 0:ACPI mode 1:PCI mode
679 //
680 If (LEqual(PCIM, 1)) {
681 Return (0x0)
682 }
683
684 If (LOr(LEqual(I30A, 0), LEqual(L23D, 1)))
685 {
686 Return (0x0)
687 }
688 Return (0xF)
689 }
690
691 Method (_PS3, 0, NotSerialized)
692 {
693 OR(PSAT, 0x00000003, PSAT)
694 OR(PSAT, 0X00000000, PSAT)
695
696 }
697 Method (_PS0, 0, NotSerialized)
698 {
699 And(PSAT, 0xfffffffC, PSAT)
700 OR(PSAT, 0X00000000, PSAT)
701 }
702 OperationRegion (KEYS, SystemMemory, I31A, 0x100)
703 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
704 {
705 Offset (0x84),
706 PSAT, 32
707 }
708
709
710 }
711
712 //
713 // LPIO2 I2C #4
714 //
715 Device(I2C4)
716 {
717 Name (_ADR, 0)
718 Name (_HID, "80860F41")
719 Name (_CID, "80860F41")
720 Name (_DDN, "Intel(R) I2C Controller #4 - 80860F44")
721 Name (_UID, 4)
722 Name(_DEP, Package(0x1)
723 {
724 PEPD
725 })
726 Name (RBUF, ResourceTemplate ()
727 {
728 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
729 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {35} // I2C #4 IRQ
730
731 FixedDMA(0x16, 0x6, Width32Bit, )
732 FixedDMA(0x17, 0x7, Width32Bit, )
733 })
734
735 Method (SSCN, 0x0, NotSerialized)
736 {
737 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
738 Return (PKG)
739 }
740 Method (FMCN, 0x0, NotSerialized)
741 {
742 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
743 Return (PKG)
744 }
745 Method (FPCN, 0x0, NotSerialized)
746 {
747 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
748 Return (PKG)
749 }
750
751
752 Method (_HRV, 0x0, NotSerialized)
753 {
754 Return (SOCS)
755 }
756 Method (_CRS, 0x0, NotSerialized)
757 {
758 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
759 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
760 Store(I40A, B0BA)
761 Store(I40L, B0LN)
762 Return (RBUF)
763 }
764
765 Method (_STA, 0x0, NotSerialized)
766 {
767 //
768 // PCIM>> 0:ACPI mode 1:PCI mode
769 //
770 If (LEqual(PCIM, 1)) {
771 Return (0x0)
772 }
773
774 If (LOr(LEqual(I40A, 0), LEqual(L24D, 1)))
775 {
776 Return (0x0)
777 }
778 Return (0xF)
779 }
780
781 Method (_PS3, 0, NotSerialized)
782 {
783 OR(PSAT, 0x00000003, PSAT)
784 OR(PSAT, 0X00000000, PSAT)
785
786 }
787 Method (_PS0, 0, NotSerialized)
788 {
789 And(PSAT, 0xfffffffC, PSAT)
790 OR(PSAT, 0X00000000, PSAT)
791 }
792 OperationRegion (KEYS, SystemMemory, I41A, 0x100)
793 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
794 {
795 Offset (0x84),
796 PSAT, 32
797 }
798
799 PowerResource (CLK0, 0x00, 0x0000)
800 {
801 Method (_STA, 0, NotSerialized) // _STA: Status
802 {
803 Return (CKC0)
804 }
805
806 Method (_ON, 0, NotSerialized) // _ON_: Power On
807 {
808 Store (One, CKC0)
809 Store (One, CKF0)
810 Sleep (0x20)
811 }
812
813 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
814 {
815 Store (0x02, CKC0)
816 }
817 }
818 PowerResource (CLK1, 0x00, 0x0000)
819 {
820 Method (_STA, 0, NotSerialized) // _STA: Status
821 {
822 Return (CKC1)
823 }
824
825 Method (_ON, 0, NotSerialized) // _ON_: Power On
826 {
827 Store (One, CKC1)
828 Store (One, CKF1)
829 Sleep (0x20)
830 }
831
832 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
833 {
834 Store (0x02, CKC1)
835 }
836 }
837 }
838
839 //
840 // LPIO2 I2C #5
841 //
842 Device(I2C5)
843 {
844 Name (_ADR, 0)
845 Name (_HID, "80860F41")
846 Name (_CID, "80860F41")
847 Name (_DDN, "Intel(R) I2C Controller #5 - 80860F45")
848 Name (_UID, 5)
849 Name(_DEP, Package(0x1)
850 {
851 PEPD
852 })
853 Name (RBUF, ResourceTemplate ()
854 {
855 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
856 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {36} // I2C #5 IRQ
857
858 FixedDMA(0x18, 0x0, Width32Bit, )
859 FixedDMA(0x19, 0x1, Width32Bit, )
860 })
861
862 Method (SSCN, 0x0, NotSerialized)
863 {
864 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
865 Return (PKG)
866 }
867 Method (FMCN, 0x0, NotSerialized)
868 {
869 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
870 Return (PKG)
871 }
872 Method (FPCN, 0x0, NotSerialized)
873 {
874 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
875 Return (PKG)
876 }
877
878 Method (_HRV, 0x0, NotSerialized)
879 {
880 Return (SOCS)
881 }
882 Method (_CRS, 0x0, NotSerialized)
883 {
884 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
885 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
886 Store(I50A, B0BA)
887 Store(I50L, B0LN)
888 Return (RBUF)
889 }
890 Method (_STA, 0x0, NotSerialized)
891 {
892 //
893 // PCIM>> 0:ACPI mode 1:PCI mode
894 //
895 If (LEqual(PCIM, 1)) {
896 Return (0x0)
897 }
898
899 If (LOr(LEqual(I50A, 0), LEqual(L25D, 1)))
900 {
901 Return (0x0)
902 }
903 Return (0xF)
904 }
905
906 Method (_PS3, 0, NotSerialized)
907 {
908 OR(PSAT, 0x00000003, PSAT)
909 OR(PSAT, 0X00000000, PSAT)
910 }
911 Method (_PS0, 0, NotSerialized)
912 {
913 And(PSAT, 0xfffffffC, PSAT)
914 OR(PSAT, 0X00000000, PSAT)
915 }
916 OperationRegion (KEYS, SystemMemory, I51A, 0x100)
917 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
918 {
919 Offset (0x84),
920 PSAT, 32
921 }
922 }
923
924 //
925 // LPIO2 I2C #6
926 //
927 Device(I2C6)
928 {
929 Name (_ADR, 0)
930 Name (_HID, "80860F41")
931 Name (_CID, "80860F41")
932 Name (_DDN, "Intel(R) I2C Controller #6 - 80860F46")
933 Name (_UID, 6)
934 Name(_DEP, Package(0x1)
935 {
936 PEPD
937 })
938 Name (RBUF, ResourceTemplate ()
939 {
940 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
941 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {37} // I2C #6 IRQ
942
943 FixedDMA(0x1A, 0x02, Width32Bit, )
944 FixedDMA(0x1B, 0x03, Width32Bit, )
945 })
946
947 Method (SSCN, 0x0, NotSerialized)
948 {
949 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
950 Return (PKG)
951 }
952 Method (FMCN, 0x0, NotSerialized)
953 {
954 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
955 Return (PKG)
956 }
957 Method (FPCN, 0x0, NotSerialized)
958 {
959 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
960 Return (PKG)
961 }
962
963 Method (_HRV, 0x0, NotSerialized)
964 {
965 Return (SOCS)
966 }
967 Method (_CRS, 0x0, NotSerialized)
968 {
969 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
970 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
971 Store(I60A, B0BA)
972 Store(I60L, B0LN)
973 Return (RBUF)
974 }
975 Method (_STA, 0x0, NotSerialized)
976 {
977 //
978 // PCIM>> 0:ACPI mode 1:PCI mode
979 //
980 If (LEqual(PCIM, 1)) {
981 Return (0x0)
982 }
983
984 If (LOr(LEqual(I60A, 0), LEqual(L26D, 1)))
985 {
986 Return (0x0)
987 }
988 Return (0xF)
989 }
990
991 Method (_PS3, 0, NotSerialized)
992 {
993 OR(PSAT, 0x00000003, PSAT)
994 OR(PSAT, 0X00000000, PSAT)
995 }
996 Method (_PS0, 0, NotSerialized)
997 {
998 And(PSAT, 0xfffffffC, PSAT)
999 OR(PSAT, 0X00000000, PSAT)
1000 }
1001 OperationRegion (KEYS, SystemMemory, I61A, 0x100)
1002 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
1003 {
1004 Offset (0x84),
1005 PSAT, 32
1006 }
1007 }
1008
1009 //
1010 // LPIO2 I2C #7
1011 //
1012 Device(I2C7)
1013 {
1014 Name (_ADR, 0)
1015 Name (_HID, "80860F41")
1016 Name (_CID, "80860F41")
1017 //Name (_CLS, Package (3) {0x0C, 0x80, 0x00})
1018 Name (_DDN, "Intel(R) I2C Controller #7 - 80860F47")
1019 Name (_UID, 7)
1020 Name(_DEP, Package(0x1)
1021 {
1022 PEPD
1023 })
1024 Name (RBUF, ResourceTemplate ()
1025 {
1026 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
1027 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {38} // I2C #7 IRQ
1028
1029 FixedDMA(0x1C, 0x4, Width32Bit, )
1030 FixedDMA(0x1D, 0x5, Width32Bit, )
1031 })
1032
1033 Method (SSCN, 0x0, NotSerialized)
1034 {
1035 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
1036 Return (PKG)
1037 }
1038 Method (FMCN, 0x0, NotSerialized)
1039 {
1040 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
1041 Return (PKG)
1042 }
1043 Method (FPCN, 0x0, NotSerialized)
1044 {
1045 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
1046 Return (PKG)
1047 }
1048
1049 Method (_HRV, 0x0, NotSerialized)
1050 {
1051 Return (SOCS)
1052 }
1053
1054 Method (_CRS, 0x0, NotSerialized)
1055 {
1056 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
1057 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
1058 Store(I70A, B0BA)
1059 Store(I70L, B0LN)
1060 Return (RBUF)
1061 }
1062
1063 Method (_STA, 0x0, NotSerialized)
1064 {
1065 //
1066 // PCIM>> 0:ACPI mode 1:PCI mode
1067 //
1068 If (LEqual(PCIM, 1)) {
1069 Return (0x0)
1070 }
1071
1072 If (LOr(LEqual(I70A, 0), LEqual(L27D, 1)))
1073 {
1074 Return (0x0)
1075 }
1076 Return (0xF)
1077 }
1078
1079 Method (_PS3, 0, NotSerialized)
1080 {
1081 OR(PSAT, 0x00000003, PSAT)
1082 OR(PSAT, 0X00000000, PSAT)
1083 }
1084
1085 Method (_PS0, 0, NotSerialized)
1086 {
1087 And(PSAT, 0xfffffffC, PSAT)
1088 OR(PSAT, 0X00000000, PSAT)
1089 }
1090
1091 OperationRegion (KEYS, SystemMemory, I71A, 0x100)
1092 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
1093 {
1094 Offset (0x84),
1095 PSAT, 32
1096 }
1097
1098 }
1099