1 /**************************************************************************;
4 ;* Intel Corporation - ACPI Reference Code for the Baytrail *;
5 ;* Family of Customer Reference Boards. *;
8 ;* Copyright (c) 2012 - 2016, Intel Corporation. All rights reserved *;
10 ; SPDX-License-Identifier: BSD-2-Clause-Patent
14 ;**************************************************************************/
16 // LPIO1 DMA#1 (Synopsis GP DMA)
20 Name (_HID, "INTL9C60")
21 Name (_DDN, "Intel(R) DMA Controller #1 - INTL9C60")
24 Name (RBUF, ResourceTemplate ()
26 Memory32Fixed (ReadWrite, 0x00000000, 0x00004000, BAR0)
27 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {42} // DMA #1 IRQ
29 Method (_CRS, 0x0, NotSerialized)
31 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
32 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
37 Method (_STA, 0x0, NotSerialized)
40 // PCIM>> 0:ACPI mode 1:PCI mode
42 If (LEqual(PCIM, 1)) {
46 If (LOr(LEqual(D10A, 0), LEqual(L10D, 1)))
55 // LPIO1 DMA#2 (Synopsis GP DMA)
59 Name (_HID, "INTL9C60")
60 Name (_DDN, "Intel(R) DMA Controller #2 - INTL9C60")
63 Name (RBUF, ResourceTemplate ()
65 Memory32Fixed (ReadWrite, 0x00000000, 0x00004000, BAR0)
66 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {43} // DMA #2 IRQ
68 Method (_CRS, 0x0, NotSerialized)
70 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
71 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
76 Method (_STA, 0x0, NotSerialized)
79 // PCIM>> 0:ACPI mode 1:PCI mode
81 If (LEqual(PCIM, 1)) {
85 If (LOr(LEqual(D20A, 0), LEqual(L20D, 1)))
99 Name (_HID, "80860F09")
100 Name (_CID, "80860F09")
101 Name (_DDN, "Intel(R) PWM Controller #1 - 80860F08")
104 Name (RBUF, ResourceTemplate ()
106 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
108 Method (_CRS, 0x0, NotSerialized)
110 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
111 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
116 Method (_STA, 0x0, NotSerialized)
119 // PCIM>> 0:ACPI mode 1:PCI mode
121 If (LEqual(PCIM, 1)) {
125 If (LOr(LEqual(P10A, 0), LEqual(L11D, 1)))
139 Name (_HID, "80860F09")
140 Name (_CID, "80860F09")
141 Name (_DDN, "Intel(R) PWM Controller #2 - 80860F09")
144 Name (RBUF, ResourceTemplate ()
146 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
148 Method (_CRS, 0x0, NotSerialized)
150 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
151 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
156 Method (_STA, 0x0, NotSerialized)
159 // PCIM>> 0:ACPI mode 1:PCI mode
161 If (LEqual(PCIM, 1)) {
165 If (LOr(LEqual(P20A, 0), LEqual(L12D, 1)))
179 Name (_HID, "80860F0A")
180 Name (_CID, "80860F0A")
181 Name (_DDN, "Intel(R) HS-UART Controller #1 - 80860F0A")
183 Name(_DEP, Package(0x1)
187 Name (RBUF, ResourceTemplate ()
189 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
190 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {39} // HS-UART #1 IRQ
192 FixedDMA(0x2, 0x2, Width32Bit, )
193 FixedDMA(0x3, 0x3, Width32Bit, )
195 Method (_HRV, 0x0, NotSerialized)
199 Method (_CRS, 0x0, NotSerialized)
201 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
202 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
208 Method (_STA, 0x0, NotSerialized)
211 // PCIM>> 0:ACPI mode 1:PCI mode
213 If (LEqual(PCIM, 1)) {
217 If (LOr(LEqual(U10A, 0), LEqual(L13D, 1)))
224 Method (_PS3, 0, NotSerialized)
226 OR(PSAT, 0x00000003, PSAT)
227 OR(PSAT, 0X00000000, PSAT)
230 Method (_PS0, 0, NotSerialized)
232 And(PSAT, 0xfffffffC, PSAT)
233 OR(PSAT, 0X00000000, PSAT)
236 OperationRegion (KEYS, SystemMemory, U11A, 0x100)
237 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
250 Name (_HID, "80860F0A")
251 Name (_CID, "80860F0A")
252 Name (_DDN, "Intel(R) HS-UART Controller #2 - 80860F0C")
255 Name(_DEP, Package(0x1)
260 Name (RBUF, ResourceTemplate ()
262 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
263 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {40} // HS-UART #2 IRQ
265 FixedDMA(0x4, 0x4, Width32Bit, )
266 FixedDMA(0x5, 0x5, Width32Bit, )
269 Method (_HRV, 0x0, NotSerialized)
274 Method (_CRS, 0x0, NotSerialized)
276 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
277 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
283 Method (_STA, 0x0, NotSerialized)
286 // PCIM>> 0:ACPI mode 1:PCI mode
288 If (LEqual(PCIM, 1)) {
292 If (LOr(LEqual(U20A, 0), LEqual(L14D, 1)))
299 Method (_PS3, 0, NotSerialized)
301 OR(PSAT, 0x00000003, PSAT)
302 OR(PSAT, 0X00000000, PSAT)
305 Method (_PS0, 0, NotSerialized)
307 And(PSAT, 0xfffffffC, PSAT)
308 OR(PSAT, 0X00000000, PSAT)
311 OperationRegion (KEYS, SystemMemory, U21A, 0x100)
312 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
325 Name (_HID, "80860F0E")
326 Name (_CID, "80860F0E")
327 Name (_UID, "0") // Static bus number assignment
328 Name(_DEP, Package(0x1)
332 Name (_DDN, "Intel(R) SPI Controller - 80860F0E")
334 Name (RBUF, ResourceTemplate ()
336 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
337 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {41} // SPI IRQ
339 FixedDMA(0x0, 0x0, Width32Bit, )
340 FixedDMA(0x1, 0x1, Width32Bit, )
343 Method (_HRV, 0x0, NotSerialized)
348 Method (_CRS, 0x0, NotSerialized)
350 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
351 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
357 Method (_STA, 0x0, NotSerialized)
360 // PCIM>> 0:ACPI mode 1:PCI mode
362 If (LEqual(PCIM, 1)) {
366 If (LOr(LEqual(SP0A, 0), LEqual(L15D, 1)))
373 Method (_PS3, 0, NotSerialized)
375 OR(PSAT, 0x00000003, PSAT)
376 OR(PSAT, 0X00000000, PSAT)
379 Method (_PS0, 0, NotSerialized)
381 And(PSAT, 0xfffffffC, PSAT)
382 OR(PSAT, 0X00000000, PSAT)
385 OperationRegion (KEYS, SystemMemory, SP1A, 0x100)
386 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
399 Name (_HID, "80860F41")
400 Name (_CID, "80860F41")
401 Name(_DEP, Package(0x1)
405 Name (_DDN, "Intel(R) I2C Controller #1 - 80860F41")
408 Name (RBUF, ResourceTemplate ()
410 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
411 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {32} // I2C #1 IRQ
413 FixedDMA(0x10, 0x0, Width32Bit, )
414 FixedDMA(0x11, 0x1, Width32Bit, )
417 Method (SSCN, 0x0, NotSerialized)
419 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
422 Method (FMCN, 0x0, NotSerialized)
424 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
427 Method (FPCN, 0x0, NotSerialized)
429 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
433 Method (_HRV, 0x0, NotSerialized)
437 Method (_CRS, 0x0, NotSerialized)
439 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
440 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
445 Method (_STA, 0x0, NotSerialized)
448 // PCIM>> 0:ACPI mode 1:PCI mode
450 If (LEqual(PCIM, 1)) {
454 If (LOr(LEqual(I10A, 0), LEqual(L21D, 1)))
462 Method (_PS3, 0, NotSerialized)
464 OR(PSAT, 0x00000003, PSAT)
465 OR(PSAT, 0X00000000, PSAT)
467 Method (_PS0, 0, NotSerialized)
469 And(PSAT, 0xfffffffC, PSAT)
470 OR(PSAT, 0X00000000, PSAT)
472 OperationRegion (KEYS, SystemMemory, I11A, 0x100)
473 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
487 Name (_HID, "80860F41")
488 Name (_CID, "80860F41")
489 Name(_DEP, Package(0x1)
493 Name (_DDN, "Intel(R) I2C Controller #2 - 80860F42")
496 Name (RBUF, ResourceTemplate ()
498 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
499 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {33} // I2C #2 IRQ
501 FixedDMA(0x12, 0x2, Width32Bit, )
502 FixedDMA(0x13, 0x3, Width32Bit, )
505 Method (SSCN, 0x0, NotSerialized)
507 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
510 Method (FMCN, 0x0, NotSerialized)
512 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
515 Method (FPCN, 0x0, NotSerialized)
517 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
521 Method (_HRV, 0x0, NotSerialized)
525 Method (_CRS, 0x0, NotSerialized)
527 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
528 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
533 Method (_STA, 0x0, NotSerialized)
536 // PCIM>> 0:ACPI mode 1:PCI mode
538 If (LEqual(PCIM, 1)) {
542 If (LOr(LEqual(I20A, 0), LEqual(L22D, 1)))
549 Method (_PS3, 0, NotSerialized)
551 OR(PSAT, 0x00000003, PSAT)
552 OR(PSAT, 0X00000000, PSAT)
555 Method (_PS0, 0, NotSerialized)
557 And(PSAT, 0xfffffffC, PSAT)
558 OR(PSAT, 0X00000000, PSAT)
560 OperationRegion (KEYS, SystemMemory, I21A, 0x100)
561 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
569 // Realtek Audio Codec
571 Device (RTEK) //Audio Codec driver I2C
574 Name (_HID, "10EC5640")
575 Name (_CID, "10EC5640")
576 Name (_DDN, "RTEK Codec Controller " )
580 Method(_CRS, 0x0, Serialized)
582 Name(SBUF,ResourceTemplate ()
584 I2CSerialBus(0x1C, //SlaveAddress: bus address
585 , //SlaveMode: default to ControllerInitiated
586 400000, //ConnectionSpeed: in Hz
587 , //Addressing Mode: default to 7 bit
588 "\\_SB.I2C2", //ResourceSource: I2C bus controller name
589 , //ResourceSourceIndex: defaults to 0
590 , //ResourceUsage: Defaults to ResourceConsumer
591 , //Descriptor Name: creates name for offset of resource descriptor
593 GpioInt(Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0,"\\_SB.GPO2") {4} // AUD_INT
598 Method (_STA, 0x0, NotSerialized)
601 If (LEqual(LPEE, 2)) { // LPE enable/disable
610 Method (_DIS, 0x0, NotSerialized)
623 Name (_HID, "80860F41")
624 Name (_CID, "80860F41")
625 Name (_DDN, "Intel(R) I2C Controller #3 - 80860F43")
627 Name(_DEP, Package(0x1)
631 Name (RBUF, ResourceTemplate ()
633 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
634 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {34} // I2C #3 IRQ
636 FixedDMA(0x14, 0x4, Width32Bit, )
637 FixedDMA(0x15, 0x5, Width32Bit, )
640 Method (SSCN, 0x0, NotSerialized)
642 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
645 Method (FMCN, 0x0, NotSerialized)
647 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
650 Method (FPCN, 0x0, NotSerialized)
652 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
656 Method (_HRV, 0x0, NotSerialized)
660 Method (_CRS, 0x0, NotSerialized)
662 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
663 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
669 Method (_STA, 0x0, NotSerialized)
672 // PCIM>> 0:ACPI mode 1:PCI mode
674 If (LEqual(PCIM, 1)) {
678 If (LOr(LEqual(I30A, 0), LEqual(L23D, 1)))
685 Method (_PS3, 0, NotSerialized)
687 OR(PSAT, 0x00000003, PSAT)
688 OR(PSAT, 0X00000000, PSAT)
691 Method (_PS0, 0, NotSerialized)
693 And(PSAT, 0xfffffffC, PSAT)
694 OR(PSAT, 0X00000000, PSAT)
696 OperationRegion (KEYS, SystemMemory, I31A, 0x100)
697 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
712 Name (_HID, "80860F41")
713 Name (_CID, "80860F41")
714 Name (_DDN, "Intel(R) I2C Controller #4 - 80860F44")
716 Name(_DEP, Package(0x1)
720 Name (RBUF, ResourceTemplate ()
722 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
723 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {35} // I2C #4 IRQ
725 FixedDMA(0x16, 0x6, Width32Bit, )
726 FixedDMA(0x17, 0x7, Width32Bit, )
729 Method (SSCN, 0x0, NotSerialized)
731 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
734 Method (FMCN, 0x0, NotSerialized)
736 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
739 Method (FPCN, 0x0, NotSerialized)
741 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
746 Method (_HRV, 0x0, NotSerialized)
750 Method (_CRS, 0x0, NotSerialized)
752 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
753 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
759 Method (_STA, 0x0, NotSerialized)
762 // PCIM>> 0:ACPI mode 1:PCI mode
764 If (LEqual(PCIM, 1)) {
768 If (LOr(LEqual(I40A, 0), LEqual(L24D, 1)))
775 Method (_PS3, 0, NotSerialized)
777 OR(PSAT, 0x00000003, PSAT)
778 OR(PSAT, 0X00000000, PSAT)
781 Method (_PS0, 0, NotSerialized)
783 And(PSAT, 0xfffffffC, PSAT)
784 OR(PSAT, 0X00000000, PSAT)
786 OperationRegion (KEYS, SystemMemory, I41A, 0x100)
787 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
793 PowerResource (CLK0, 0x00, 0x0000)
795 Method (_STA, 0, NotSerialized) // _STA: Status
800 Method (_ON, 0, NotSerialized) // _ON_: Power On
807 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
812 PowerResource (CLK1, 0x00, 0x0000)
814 Method (_STA, 0, NotSerialized) // _STA: Status
819 Method (_ON, 0, NotSerialized) // _ON_: Power On
826 Method (_OFF, 0, NotSerialized) // _OFF: Power Off
839 Name (_HID, "80860F41")
840 Name (_CID, "80860F41")
841 Name (_DDN, "Intel(R) I2C Controller #5 - 80860F45")
843 Name(_DEP, Package(0x1)
847 Name (RBUF, ResourceTemplate ()
849 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
850 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {36} // I2C #5 IRQ
852 FixedDMA(0x18, 0x0, Width32Bit, )
853 FixedDMA(0x19, 0x1, Width32Bit, )
856 Method (SSCN, 0x0, NotSerialized)
858 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
861 Method (FMCN, 0x0, NotSerialized)
863 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
866 Method (FPCN, 0x0, NotSerialized)
868 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
872 Method (_HRV, 0x0, NotSerialized)
876 Method (_CRS, 0x0, NotSerialized)
878 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
879 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
884 Method (_STA, 0x0, NotSerialized)
887 // PCIM>> 0:ACPI mode 1:PCI mode
889 If (LEqual(PCIM, 1)) {
893 If (LOr(LEqual(I50A, 0), LEqual(L25D, 1)))
900 Method (_PS3, 0, NotSerialized)
902 OR(PSAT, 0x00000003, PSAT)
903 OR(PSAT, 0X00000000, PSAT)
905 Method (_PS0, 0, NotSerialized)
907 And(PSAT, 0xfffffffC, PSAT)
908 OR(PSAT, 0X00000000, PSAT)
910 OperationRegion (KEYS, SystemMemory, I51A, 0x100)
911 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
924 Name (_HID, "80860F41")
925 Name (_CID, "80860F41")
926 Name (_DDN, "Intel(R) I2C Controller #6 - 80860F46")
928 Name(_DEP, Package(0x1)
932 Name (RBUF, ResourceTemplate ()
934 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
935 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {37} // I2C #6 IRQ
937 FixedDMA(0x1A, 0x02, Width32Bit, )
938 FixedDMA(0x1B, 0x03, Width32Bit, )
941 Method (SSCN, 0x0, NotSerialized)
943 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
946 Method (FMCN, 0x0, NotSerialized)
948 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
951 Method (FPCN, 0x0, NotSerialized)
953 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
957 Method (_HRV, 0x0, NotSerialized)
961 Method (_CRS, 0x0, NotSerialized)
963 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
964 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
969 Method (_STA, 0x0, NotSerialized)
972 // PCIM>> 0:ACPI mode 1:PCI mode
974 If (LEqual(PCIM, 1)) {
978 If (LOr(LEqual(I60A, 0), LEqual(L26D, 1)))
985 Method (_PS3, 0, NotSerialized)
987 OR(PSAT, 0x00000003, PSAT)
988 OR(PSAT, 0X00000000, PSAT)
990 Method (_PS0, 0, NotSerialized)
992 And(PSAT, 0xfffffffC, PSAT)
993 OR(PSAT, 0X00000000, PSAT)
995 OperationRegion (KEYS, SystemMemory, I61A, 0x100)
996 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
1009 Name (_HID, "80860F41")
1010 Name (_CID, "80860F41")
1011 //Name (_CLS, Package (3) {0x0C, 0x80, 0x00})
1012 Name (_DDN, "Intel(R) I2C Controller #7 - 80860F47")
1014 Name(_DEP, Package(0x1)
1018 Name (RBUF, ResourceTemplate ()
1020 Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
1021 Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {38} // I2C #7 IRQ
1023 FixedDMA(0x1C, 0x4, Width32Bit, )
1024 FixedDMA(0x1D, 0x5, Width32Bit, )
1027 Method (SSCN, 0x0, NotSerialized)
1029 Name (PKG, Package(3) { 0x200, 0x200, 0x06 })
1032 Method (FMCN, 0x0, NotSerialized)
1034 Name (PKG, Package(3) { 0x55, 0x99, 0x06 })
1037 Method (FPCN, 0x0, NotSerialized)
1039 Name (PKG, Package(3) { 0x1b, 0x3a, 0x06 })
1043 Method (_HRV, 0x0, NotSerialized)
1048 Method (_CRS, 0x0, NotSerialized)
1050 CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
1051 CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
1057 Method (_STA, 0x0, NotSerialized)
1060 // PCIM>> 0:ACPI mode 1:PCI mode
1062 If (LEqual(PCIM, 1)) {
1066 If (LOr(LEqual(I70A, 0), LEqual(L27D, 1)))
1073 Method (_PS3, 0, NotSerialized)
1075 OR(PSAT, 0x00000003, PSAT)
1076 OR(PSAT, 0X00000000, PSAT)
1079 Method (_PS0, 0, NotSerialized)
1081 And(PSAT, 0xfffffffC, PSAT)
1082 OR(PSAT, 0X00000000, PSAT)
1085 OperationRegion (KEYS, SystemMemory, I71A, 0x100)
1086 Field (KEYS, DWordAcc, NoLock, WriteAsZeros)