]>
Commit | Line | Data |
---|---|---|
3cbfba02 DW |
1 | /**************************************************************************;\r |
2 | ;* *;\r | |
3 | ;* *;\r | |
4 | ;* Intel Corporation - ACPI Reference Code for the Baytrail *;\r | |
5 | ;* Family of Customer Reference Boards. *;\r | |
6 | ;* *;\r | |
7 | ;* *;\r | |
8 | ;* Copyright (c) 2012 - 2014, Intel Corporation. All rights reserved *;\r | |
9 | ;\r | |
7ede8060 | 10 | ; SPDX-License-Identifier: BSD-2-Clause-Patent\r |
3cbfba02 DW |
11 | ;\r |
12 | ;* *;\r | |
13 | ;* *;\r | |
14 | ;**************************************************************************/\r | |
15 | \r | |
16 | Device(FWHD) // Firmware Hub Device\r | |
17 | {\r | |
18 | Name(_HID,EISAID("INT0800"))\r | |
19 | \r | |
20 | Name(_CRS,ResourceTemplate()\r | |
21 | {\r | |
22 | Memory32Fixed(ReadOnly,0xFF000000,0x1000000)\r | |
23 | })\r | |
24 | }\r | |
25 | \r | |
26 | Device(IPIC) // 8259 PIC\r | |
27 | {\r | |
28 | Name(_HID,EISAID("PNP0000"))\r | |
29 | \r | |
30 | Name(_CRS,ResourceTemplate()\r | |
31 | {\r | |
32 | IO(Decode16,0x20,0x20,0x01,0x02)\r | |
33 | IO(Decode16,0x24,0x24,0x01,0x02)\r | |
34 | IO(Decode16,0x28,0x28,0x01,0x02)\r | |
35 | IO(Decode16,0x2C,0x2C,0x01,0x02)\r | |
36 | IO(Decode16,0x30,0x30,0x01,0x02)\r | |
37 | IO(Decode16,0x34,0x34,0x01,0x02)\r | |
38 | IO(Decode16,0x38,0x38,0x01,0x02)\r | |
39 | IO(Decode16,0x3C,0x3C,0x01,0x02)\r | |
40 | IO(Decode16,0xA0,0xA0,0x01,0x02)\r | |
41 | IO(Decode16,0xA4,0xA4,0x01,0x02)\r | |
42 | IO(Decode16,0xA8,0xA8,0x01,0x02)\r | |
43 | IO(Decode16,0xAC,0xAC,0x01,0x02)\r | |
44 | IO(Decode16,0xB0,0xB0,0x01,0x02)\r | |
45 | IO(Decode16,0xB4,0xB4,0x01,0x02)\r | |
46 | IO(Decode16,0xB8,0xB8,0x01,0x02)\r | |
47 | IO(Decode16,0xBC,0xBC,0x01,0x02)\r | |
48 | IO(Decode16,0x4D0,0x4D0,0x01,0x02)\r | |
49 | IRQNoFlags() {2}\r | |
50 | })\r | |
51 | }\r | |
52 | \r | |
53 | Device(LDRC) // LPC Device Resource Consumption\r | |
54 | {\r | |
55 | Name(_HID,EISAID("PNP0C02"))\r | |
56 | \r | |
57 | Name(_UID,2)\r | |
58 | \r | |
59 | Name(_CRS,ResourceTemplate()\r | |
60 | {\r | |
61 | IO(Decode16,0x4E,0x4E,0x1,0x02) // LPC Slot Access.\r | |
62 | IO(Decode16,0x61,0x61,0x1,0x1) // NMI Status.\r | |
63 | IO(Decode16,0x63,0x63,0x1,0x1) // Processor I/F.\r | |
64 | IO(Decode16,0x65,0x65,0x1,0x1) // Processor I/F.\r | |
65 | IO(Decode16,0x67,0x67,0x1,0x1) // Processor I/F.\r | |
66 | IO(Decode16,0x70,0x70,0x1,0x1) // NMI Enable.\r | |
67 | IO(Decode16,0x80,0x80,0x1,0x10) // Postcode.\r | |
68 | IO(Decode16,0x92,0x92,0x1,0x1) // Processor I/F.\r | |
69 | IO(Decode16,0xB2,0xB2,0x01,0x02) // Software SMI.\r | |
70 | IO(Decode16,0x680,0x680,0x1,0x20) // 32 Byte I/O.\r | |
71 | IO(Decode16,0x400,0x400,0x1,0x80) // ACPI Base.\r | |
72 | IO(Decode16,0x500,0x500,0x1,0xFF) // GPIO Base.\r | |
73 | })\r | |
74 | }\r | |
75 | \r | |
76 | Device(TIMR) // 8254 Timer\r | |
77 | {\r | |
78 | Name(_HID,EISAID("PNP0100"))\r | |
79 | \r | |
80 | Name(_CRS,ResourceTemplate()\r | |
81 | {\r | |
82 | IO(Decode16,0x40,0x40,0x01,0x04)\r | |
83 | IO(Decode16,0x50,0x50,0x10,0x04)\r | |
84 | IRQNoFlags() {0}\r | |
85 | })\r | |
86 | }\r | |
87 | \r | |
88 | Device(IUR3) // Internal UART\r | |
89 | {\r | |
90 | Name(_HID, EISAID("PNP0501"))\r | |
91 | \r | |
92 | Name(_UID,1)\r | |
93 | \r | |
94 | // Status Method for internal UART\r | |
95 | \r | |
96 | Method(_STA,0,Serialized)\r | |
97 | {\r | |
98 | // Only report resources to the OS if internal UART is\r | |
99 | // not set to Disabled in BIOS Setup.\r | |
100 | \r | |
101 | If(LEqual(USEL,0))\r | |
102 | {\r | |
103 | If(LEqual(PU1E,1))\r | |
104 | {\r | |
105 | Store(1,UI3E) // Enable IRQ3 for UART\r | |
106 | Store(1,UI4E) // Enable IRQ4 for UART\r | |
107 | Store(1,C1EN) // Enable UART\r | |
108 | Return(0x000F)\r | |
109 | }\r | |
110 | }\r | |
111 | \r | |
112 | Return(0x0000)\r | |
113 | }\r | |
114 | \r | |
115 | // Disable Method for internal UART\r | |
116 | \r | |
117 | Method(_DIS,0,Serialized)\r | |
118 | {\r | |
119 | Store(0,UI3E)\r | |
120 | Store(0,UI4E)\r | |
121 | Store(0,C1EN)\r | |
122 | }\r | |
123 | \r | |
124 | // Current Resource Setting Method for internal UART\r | |
125 | \r | |
126 | Method(_CRS,0,Serialized)\r | |
127 | {\r | |
128 | // Create the Buffer that stores the Resources to\r | |
129 | // be returned.\r | |
130 | \r | |
131 | Name(BUF0,ResourceTemplate()\r | |
132 | {\r | |
133 | IO(Decode16,0x03F8,0x03F8,0x01,0x08)\r | |
134 | IRQNoFlags() {3}\r | |
135 | })\r | |
136 | \r | |
137 | Name(BUF1,ResourceTemplate()\r | |
138 | {\r | |
139 | IO(Decode16,0x03F8,0x03F8,0x01,0x08)\r | |
140 | IRQNoFlags() {4}\r | |
141 | })\r | |
142 | \r | |
143 | If (LLessEqual(SRID, 0x04))\r | |
144 | {\r | |
145 | Return(BUF0)\r | |
146 | } Else\r | |
147 | {\r | |
148 | Return(BUF1)\r | |
149 | }\r | |
150 | }\r | |
151 | }\r |