soc: Remove copyright notices
[coreboot.git] / src / soc / intel / baytrail / acpi / lpc.asl
blobdc2b663f897620b310392c543f8dbbc9f7b921bc
1 /*
2  * This file is part of the coreboot project.
3  *
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License as
7  * published by the Free Software Foundation; version 2 of
8  * the License.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  */
16 // Intel LPC Bus Device  - 0:1f.0
18 Device (LPCB)
20         Name(_ADR, 0x001f0000)
22         #include "irqlinks.asl"
24         #include "acpi/ec.asl"
26         Device (DMAC)           // DMA Controller
27         {
28                 Name(_HID, EISAID("PNP0200"))
29                 Name(_CRS, ResourceTemplate()
30                 {
31                         IO (Decode16, 0x00, 0x00, 0x01, 0x20)
32                         IO (Decode16, 0x81, 0x81, 0x01, 0x11)
33                         IO (Decode16, 0x93, 0x93, 0x01, 0x0d)
34                         IO (Decode16, 0xc0, 0xc0, 0x01, 0x20)
35                         DMA (Compatibility, NotBusMaster, Transfer8_16) { 4 }
36                 })
37         }
39         Device (FWH)            // Firmware Hub
40         {
41                 Name (_HID, EISAID("INT0800"))
42                 Name (_CRS, ResourceTemplate()
43                 {
44                         Memory32Fixed(ReadOnly, 0xff000000, 0x01000000)
45                 })
46         }
48         Device (HPET)
49         {
50                 Name (_HID, EISAID("PNP0103"))
51                 Name (_CID, 0x010CD041)
53                 Method (_STA, 0)        // Device Status
54                 {
55                         Return (0xf)    // Enable and show device
56                 }
58                 Name(_CRS, ResourceTemplate()
59                 {
60                         Memory32Fixed(ReadOnly, CONFIG_HPET_ADDRESS, 0x400)
61                 })
62         }
64         Device(PIC)     // 8259 Interrupt Controller
65         {
66                 Name(_HID,EISAID("PNP0000"))
67                 Name(_CRS, ResourceTemplate()
68                 {
69                         IO (Decode16, 0x20, 0x20, 0x01, 0x02)
70                         IO (Decode16, 0x24, 0x24, 0x01, 0x02)
71                         IO (Decode16, 0x28, 0x28, 0x01, 0x02)
72                         IO (Decode16, 0x2c, 0x2c, 0x01, 0x02)
73                         IO (Decode16, 0x30, 0x30, 0x01, 0x02)
74                         IO (Decode16, 0x34, 0x34, 0x01, 0x02)
75                         IO (Decode16, 0x38, 0x38, 0x01, 0x02)
76                         IO (Decode16, 0x3c, 0x3c, 0x01, 0x02)
77                         IO (Decode16, 0xa0, 0xa0, 0x01, 0x02)
78                         IO (Decode16, 0xa4, 0xa4, 0x01, 0x02)
79                         IO (Decode16, 0xa8, 0xa8, 0x01, 0x02)
80                         IO (Decode16, 0xac, 0xac, 0x01, 0x02)
81                         IO (Decode16, 0xb0, 0xb0, 0x01, 0x02)
82                         IO (Decode16, 0xb4, 0xb4, 0x01, 0x02)
83                         IO (Decode16, 0xb8, 0xb8, 0x01, 0x02)
84                         IO (Decode16, 0xbc, 0xbc, 0x01, 0x02)
85                         IO (Decode16, 0x4d0, 0x4d0, 0x01, 0x02)
86                         IRQNoFlags () { 2 }
87                 })
88         }
90         Device(LDRC)    // LPC device: Resource consumption
91         {
92                 Name (_HID, EISAID("PNP0C02"))
93                 Name (_UID, 2)
95                 Name (RBUF, ResourceTemplate()
96                 {
97                         IO (Decode16, 0x61, 0x61, 0x1, 0x01) // NMI Status
98                         IO (Decode16, 0x63, 0x63, 0x1, 0x01) // CPU Reserved
99                         IO (Decode16, 0x65, 0x65, 0x1, 0x01) // CPU Reserved
100                         IO (Decode16, 0x67, 0x67, 0x1, 0x01) // CPU Reserved
101                         IO (Decode16, 0x80, 0x80, 0x1, 0x01) // Port 80 Post
102                         IO (Decode16, 0x92, 0x92, 0x1, 0x01) // CPU Reserved
103                         IO (Decode16, 0xb2, 0xb2, 0x1, 0x02) // SWSMI
104                 })
106                 Method (_CRS, 0, NotSerialized)
107                 {
108                         Return (RBUF)
109                 }
110         }
112         Device (RTC)    // Real Time Clock
113         {
114                 Name (_HID, EISAID("PNP0B00"))
115                 Name (_CRS, ResourceTemplate()
116                 {
117                         IO (Decode16, 0x70, 0x70, 1, 8)
118 // Disable as Windows doesn't like it, and systems don't seem to use it.
119 //                      IRQNoFlags() { 8 }
120                 })
121         }
123         Device (TIMR)   // Intel 8254 timer
124         {
125                 Name(_HID, EISAID("PNP0100"))
126                 Name(_CRS, ResourceTemplate()
127                 {
128                         IO (Decode16, 0x40, 0x40, 0x01, 0x04)
129                         IO (Decode16, 0x50, 0x50, 0x10, 0x04)
130                         IRQNoFlags() {0}
131                 })
132         }
134         // Include mainboard's superio.asl file.
135         #include "acpi/superio.asl"