Merge remote-tracking branch 'remotes/afaerber/tags/qom-devices-for-peter' into staging
[qemu/ar7.git] / hw / i386 / acpi-dsdt-isa.dsl
blob89caa1649dd832bb7ec512dae8bf194c91946ee5
1 /*
2  * This program is free software; you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License as published by
4  * the Free Software Foundation; either version 2 of the License, or
5  * (at your option) any later version.
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10  * GNU General Public License for more details.
12  * You should have received a copy of the GNU General Public License along
13  * with this program; if not, see <http://www.gnu.org/licenses/>.
14  */
16 /* Common legacy ISA style devices. */
17 Scope(\_SB.PCI0.ISA) {
19     Device(RTC) {
20         Name(_HID, EisaId("PNP0B00"))
21         Name(_CRS, ResourceTemplate() {
22             IO(Decode16, 0x0070, 0x0070, 0x10, 0x02)
23             IRQNoFlags() { 8 }
24             IO(Decode16, 0x0072, 0x0072, 0x02, 0x06)
25         })
26     }
28     Device(KBD) {
29         Name(_HID, EisaId("PNP0303"))
30         Method(_STA, 0, NotSerialized) {
31             Return (0x0f)
32         }
33         Name(_CRS, ResourceTemplate() {
34             IO(Decode16, 0x0060, 0x0060, 0x01, 0x01)
35             IO(Decode16, 0x0064, 0x0064, 0x01, 0x01)
36             IRQNoFlags() { 1 }
37         })
38     }
40     Device(MOU) {
41         Name(_HID, EisaId("PNP0F13"))
42         Method(_STA, 0, NotSerialized) {
43             Return (0x0f)
44         }
45         Name(_CRS, ResourceTemplate() {
46             IRQNoFlags() { 12 }
47         })
48     }
50     Device(FDC0) {
51         Name(_HID, EisaId("PNP0700"))
52         Method(_STA, 0, NotSerialized) {
53             Store(FDEN, Local0)
54             If (LEqual(Local0, 0)) {
55                 Return (0x00)
56             } Else {
57                 Return (0x0F)
58             }
59         }
60         Name(_CRS, ResourceTemplate() {
61             IO(Decode16, 0x03F2, 0x03F2, 0x00, 0x04)
62             IO(Decode16, 0x03F7, 0x03F7, 0x00, 0x01)
63             IRQNoFlags() { 6 }
64             DMA(Compatibility, NotBusMaster, Transfer8) { 2 }
65         })
66     }
68     Device(LPT) {
69         Name(_HID, EisaId("PNP0400"))
70         Method(_STA, 0, NotSerialized) {
71             Store(LPEN, Local0)
72             If (LEqual(Local0, 0)) {
73                 Return (0x00)
74             } Else {
75                 Return (0x0F)
76             }
77         }
78         Name(_CRS, ResourceTemplate() {
79             IO(Decode16, 0x0378, 0x0378, 0x08, 0x08)
80             IRQNoFlags() { 7 }
81         })
82     }
84     Device(COM1) {
85         Name(_HID, EisaId("PNP0501"))
86         Name(_UID, 0x01)
87         Method(_STA, 0, NotSerialized) {
88             Store(CAEN, Local0)
89             If (LEqual(Local0, 0)) {
90                 Return (0x00)
91             } Else {
92                 Return (0x0F)
93             }
94         }
95         Name(_CRS, ResourceTemplate() {
96             IO(Decode16, 0x03F8, 0x03F8, 0x00, 0x08)
97             IRQNoFlags() { 4 }
98         })
99     }
101     Device(COM2) {
102         Name(_HID, EisaId("PNP0501"))
103         Name(_UID, 0x02)
104         Method(_STA, 0, NotSerialized) {
105             Store(CBEN, Local0)
106             If (LEqual(Local0, 0)) {
107                 Return (0x00)
108             } Else {
109                 Return (0x0F)
110             }
111         }
112         Name(_CRS, ResourceTemplate() {
113             IO(Decode16, 0x02F8, 0x02F8, 0x00, 0x08)
114             IRQNoFlags() { 3 }
115         })
116     }