2 // This file is part of the coreboot project.
4 // Copyright (C) 2007 Advanced Micro Devices, Inc.
6 // This program is free software; you can redistribute it and/or modify
7 // it under the terms of the GNU General Public License as published by
8 // the Free Software Foundation; version 2 of the License.
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.
16 #include <arch/ioapic.h>
17 #include <cpu/x86/lapic_def.h>
24 Method (_ADR, 0, NotSerialized)
26 Return (DADD(\_SB.PCI0.SBDN, 0x00010000))
29 OperationRegion (PIRY, PCI_Config, 0x51, 0x02) // LPC Decode Registers
30 Field (PIRY, ByteAcc, NoLock, Preserve)
32 Z000, 2, // Parallel Port Range
35 FDC1, 1, // Floppy Drive Controller 1
36 FDC2, 1, // Floppy Drive Controller 2
38 Z001, 3, // Serial Port A Range
39 SAEN, 1, // Serial Post A Enabled
40 Z002, 3, // Serial Port B Range
41 SBEN, 1 // Serial Post B Enabled
46 Name (_HID, EisaId ("PNP0000"))
47 Name (_CRS, ResourceTemplate ()
49 IO (Decode16, 0x0020, 0x0020, 0x01, 0x02)
50 IO (Decode16, 0x00A0, 0x00A0, 0x01, 0x02)
51 IRQ (Edge, ActiveHigh, Exclusive) {2}
57 Name (_HID, EisaId ("PNP0200"))
58 Name (_CRS, ResourceTemplate ()
60 IO (Decode16, 0x0000, 0x0000, 0x01, 0x10)
61 IO (Decode16, 0x0080, 0x0080, 0x01, 0x10)
62 IO (Decode16, 0x00C0, 0x00C0, 0x01, 0x20)
63 DMA (Compatibility, NotBusMaster, Transfer16) {4}
69 Name (_HID, EisaId ("PNP0100"))
70 Name (_CRS, ResourceTemplate ()
72 IO (Decode16, 0x0040, 0x0040, 0x01, 0x04)
73 IRQ (Edge, ActiveHigh, Exclusive) {0}
79 Name (_HID, EisaId ("PNP0B00"))
80 Name (_CRS, ResourceTemplate ()
82 IO (Decode16, 0x0070, 0x0070, 0x01, 0x06)
83 IRQ (Edge, ActiveHigh, Exclusive) {8}
89 Name (_HID, EisaId ("PNP0800"))
90 Name (_CRS, ResourceTemplate ()
92 IO (Decode16, 0x0061, 0x0061, 0x01, 0x01)
98 Name (_HID, EisaId ("PNP0C04"))
99 Name (_CRS, ResourceTemplate ()
101 IO (Decode16, 0x00F0, 0x00F0, 0x01, 0x10)
102 IRQ (Edge, ActiveHigh, Exclusive) {13}
108 Name (_HID, EisaId ("PNP0C02"))
110 Name (SYR1, ResourceTemplate ()
112 IO (Decode16, 0x04D0, 0x04D0, 0x01, 0x02) //report Thor NVRAM
113 IO (Decode16, 0x1100, 0x117F, 0x01, 0x80) //report Thor NVRAM
114 IO (Decode16, 0x1180, 0x11FF, 0x01, 0x80)
115 IO (Decode16, 0x0010, 0x0010, 0x01, 0x10)
116 IO (Decode16, 0x0022, 0x0022, 0x01, 0x1E)
117 IO (Decode16, 0x0044, 0x0044, 0x01, 0x1C)
118 IO (Decode16, 0x0062, 0x0062, 0x01, 0x02)
119 IO (Decode16, 0x0065, 0x0065, 0x01, 0x0B)
120 IO (Decode16, 0x0076, 0x0076, 0x01, 0x0A)
121 IO (Decode16, 0x0090, 0x0090, 0x01, 0x10)
122 IO (Decode16, 0x00A2, 0x00A2, 0x01, 0x1E)
123 IO (Decode16, 0x00E0, 0x00E0, 0x01, 0x10)
124 IO (Decode16, 0x0B78, 0x0B78, 0x01, 0x04) // Added this to remove ACPI Unrepoted IO Error
125 IO (Decode16, 0x0190, 0x0190, 0x01, 0x04) // Added this to remove ACPI Unrepoted IO Error
127 Method (_CRS, 0, NotSerialized)
135 Name (_HID, EisaId ("PNP0C02"))
137 Method (_CRS, 0, NotSerialized)
139 Name (BUF0, ResourceTemplate ()
141 Memory32Fixed (ReadWrite, 0x000E0000, 0x00020000) // BIOS E4000-FFFFF
142 Memory32Fixed (ReadWrite, 0x000C0000, 0x00010000) // video BIOS c0000-c8404
143 Memory32Fixed (ReadWrite, IO_APIC_ADDR, 0x00001000)
144 Memory32Fixed (ReadWrite, 0xFFC00000, 0x00380000) // LPC forwarded, 4 MB w/ROM
145 Memory32Fixed (ReadWrite, LOCAL_APIC_ADDR, 0x00001000)
146 Memory32Fixed (ReadWrite, 0xFFF80000, 0x00080000) // Overlay BIOS
147 Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) // Overlay BIOS
148 Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) // Overlay BIOS
149 Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) // Overlay BIOS
150 Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) // Overlay BIOS
152 // Read the Video Memory length
153 CreateDWordField (BUF0, 0x14, CLEN)
154 CreateDWordField (BUF0, 0x10, CBAS)
156 ShiftLeft (VGA1, 0x09, Local0)
165 Name (_HID, EisaId ("PNP0F13"))
166 Name (_CRS, ResourceTemplate ()
170 Method (_STA, 0, NotSerialized)
172 And (FLG0, 0x04, Local0)
173 If (LEqual (Local0, 0x04)) { Return (0x0F) }
174 Else { Return (0x00) }
180 Name (_HID, EisaId ("PNP0303"))
181 Name (_CRS, ResourceTemplate ()
183 IO (Decode16, 0x0060, 0x0060, 0x01, 0x01)
184 IO (Decode16, 0x0064, 0x0064, 0x01, 0x01)
188 #include "superio.asl"