blob: be2a1ffdb48acc37eeb8b1bf67fb577269eb6460 [file] [log] [blame]
Oskar Enoksson2516f2e2014-02-08 00:17:21 +01001/*
2 * Copyright 2005 AMD
3 * Copyright (C) 2011,2014 Oskar Enoksson <enok@lysator.liu.se>
4 */
5//AMD8111 isa
6
7Device (ISA) {
8 // lpc 0x00040000
9 Method (_ADR, 0, NotSerialized) {
10 Return (DADD(\_SB.PCI0.SBDN, 0x00010000))
11 }
12 /*
13 OperationRegion (PIRY, PCI_Config, 0x51, 0x02) // LPC Decode Registers
14 Field (PIRY, ByteAcc, NoLock, Preserve) {
15 Z000, 2, // Parallel Port Range
16 , 1,
17 ECP , 1, // ECP Enable
18 FDC1, 1, // Floppy Drive Controller 1
19 FDC2, 1, // Floppy Drive Controller 2
20 Offset (0x01),
21 Z001, 3, // Serial Port A Range
22 SAEN, 1, // Serial Post A Enabled
23 Z002, 3, // Serial Port B Range
24 SBEN, 1 // Serial Post B Enabled
25 }
26 */
27 Device (PIC) {
28 Name (_HID, EisaId ("PNP0000"))
29 Name (_CRS, ResourceTemplate () {
30 IO (Decode16, 0x0020, 0x0020, 0x01, 0x02) // Master Interrupt controller
31 IO (Decode16, 0x00A0, 0x00A0, 0x01, 0x02) // Slave Interrupt controller
32 IRQ (Edge, ActiveHigh, Exclusive) {2}
33 })
34 }
35 Device (DMA1) {
36 Name (_HID, EisaId ("PNP0200"))
37 Name (_CRS, ResourceTemplate () {
38 IO (Decode16, 0x0000, 0x0000, 0x01, 0x10) // Slave DMA controller
39 IO (Decode16, 0x0080, 0x0080, 0x01, 0x10) // DMA page registers
40 IO (Decode16, 0x00C0, 0x00C0, 0x01, 0x20) // Master DMA controller
41 DMA (Compatibility, NotBusMaster, Transfer16) {4}
42 })
43 }
44 Device (TMR) {
45 Name (_HID, EisaId ("PNP0100"))
46 Name (_CRS, ResourceTemplate () {
47 IO (Decode16, 0x0040, 0x0040, 0x01, 0x04) // Programmable Interval timer
48 IRQ (Edge, ActiveHigh, Exclusive) {0}
49 })
50 }
51 Device (RTC) {
52 Name (_HID, EisaId ("PNP0B00"))
53 Name (_CRS, ResourceTemplate () {
54 IO (Decode16, 0x0070, 0x0070, 0x01, 0x04) // Realtime Clock and CMOS ram
55 IRQ (Edge, ActiveHigh, Exclusive) {8}
56 })
57 }
58 Device (SPKR) {
59 Name (_HID, EisaId ("PNP0800"))
60 Name (_CRS, ResourceTemplate () {
61 IO (Decode16, 0x0061, 0x0061, 0x01, 0x01) // PC speaker
62 })
63 }
64 Device (COPR) { // Co-processor
65 Name (_HID, EisaId ("PNP0C04"))
66 Name (_CRS, ResourceTemplate () {
67 IO (Decode16, 0x00F0, 0x00F0, 0x01, 0x10) // Floating point Error control
68 IRQ (Edge, ActiveHigh, Exclusive) {13}
69 })
70 }
71 Device (SYSR) { // System control registers (?)
72 Name (_HID, EisaId ("PNP0C02"))
73 Name (_UID, 0x00)
74 Name (CRS, ResourceTemplate () {
75 IO (Decode16, 0x0010, 0x0010, 0x01, 0x10)
76 IO (Decode16, 0x0022, 0x0022, 0x01, 0x1E)
77 IO (Decode16, 0x0044, 0x0044, 0x01, 0x1C)
78 IO (Decode16, 0x0062, 0x0062, 0x01, 0x02)
79 IO (Decode16, 0x0065, 0x0065, 0x01, 0x0B)
80 IO (Decode16, 0x0074, 0x0074, 0x01, 0x0C)
81 IO (Decode16, 0x0080, 0x0080, 0x01, 0x01)
82 IO (Decode16, 0x0084, 0x0084, 0x01, 0x03)
83 IO (Decode16, 0x0088, 0x0088, 0x01, 0x01)
84 IO (Decode16, 0x008C, 0x008C, 0x01, 0x03)
85 IO (Decode16, 0x0090, 0x0090, 0x01, 0x10)
86 IO (Decode16, 0x00A2, 0x00A2, 0x01, 0x1E)
87 IO (Decode16, 0x00E0, 0x00E0, 0x01, 0x10)
88 // IO (Decode16, 0x0190, 0x0190, 0x01, 0x04) // Added this to remove ACPI Unrepoted IO Error
89 // EISA defined level triggered interrupt control registers
90 IO (Decode16, 0x04D0, 0x04D0, 0x01, 0x02)
91 // IO (Decode16, 0x0B78, 0x0B78, 0x01, 0x04) // Added this to remove ACPI Unrepoted IO Error
92 // IO (Decode16, 0xDE00, 0xDE00, 0x00, 0x80)
93 // IO (Decode16, 0xDE80, 0xDE80, 0x00, 0x80)
94 IO (Decode16,0xDE00,0xDE00,0x00,0x80)
95 IO (Decode16,0xDE80,0xDE80,0x00,0x80)
96 // IO (Decode16, 0x1100, 0x117F, 0x01, 0x80) //wrh092302 - added to report Thor NVRAM
97 // IO (Decode16, 0x1180, 0x11FF, 0x01, 0x80)
98 IO (Decode16, 0x0000, 0x0000, 0x00, 0x00,_Y0D) // PMBS block
99 IO (Decode16, 0x0000, 0x0000, 0x00, 0x00,_Y0E) // SMBS block
100 IO (Decode16, 0x0000, 0x0000, 0x00, 0x00,_Y0F) // GPBS block
101 })
102 Method (_CRS, 0, NotSerialized) {
103 CreateWordField (CRS, \_SB.PCI0.ISA.SYSR._Y0D._MIN, GP00)
104 CreateWordField (CRS, \_SB.PCI0.ISA.SYSR._Y0D._MAX, GP01)
105 CreateByteField (CRS, \_SB.PCI0.ISA.SYSR._Y0D._LEN, GP0L)
106 Store (PMBS, GP00)
107 Store (PMBS, GP01)
108 Store (PMLN, GP0L)
109 If (SMBS) {
110 CreateWordField (CRS, \_SB.PCI0.ISA.SYSR._Y0E._MIN, GP10)
111 CreateWordField (CRS, \_SB.PCI0.ISA.SYSR._Y0E._MAX, GP11)
112 CreateByteField (CRS, \_SB.PCI0.ISA.SYSR._Y0E._LEN, GP1L)
113 Store (SMBS, GP10)
114 Store (SMBS, GP11)
115 Store (SMBL, GP1L)
116 }
117 If (GPBS) {
118 CreateWordField (CRS, \_SB.PCI0.ISA.SYSR._Y0F._MIN, GP20)
119 CreateWordField (CRS, \_SB.PCI0.ISA.SYSR._Y0F._MAX, GP21)
120 CreateByteField (CRS, \_SB.PCI0.ISA.SYSR._Y0F._LEN, GP2L)
121 Store (GPBS, GP20)
122 Store (GPBS, GP21)
123 Store (GPLN, GP2L)
124 }
125 Return (CRS)
126 }
127 }
128 Device (MEM) {
129 Name (_HID, EisaId ("PNP0C02"))
130 Name (_UID, 0x01)
131 Method (_CRS, 0, Serialized) {
132 Name (BUF0, ResourceTemplate () {
133 Memory32Fixed (ReadWrite, 0x000E0000, 0x00020000) // BIOS E4000-FFFFF
134 Memory32Fixed (ReadWrite, 0x000C0000, 0x00010000) // video BIOS c0000-c8404
135 Memory32Fixed (ReadWrite, 0xFEC00000, 0x00001000) // I/O APIC
136 Memory32Fixed (ReadWrite, 0xFFC00000, 0x00380000) // LPC forwarded, 4 MB w/ROM
137 Memory32Fixed (ReadWrite, 0xFEE00000, 0x00001000) // Local APIC
138 Memory32Fixed (ReadWrite, 0xFFF80000, 0x00080000) // Overlay BIOS
139 Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) // Overlay BIOS
140 Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) // Overlay BIOS
141 Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) // Overlay BIOS
142 Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) // Overlay BIOS
143 })
144// Read the Video Memory length
145 CreateDWordField (BUF0, 0x14, CLEN)
146 CreateDWordField (BUF0, 0x10, CBAS)
147
148 ShiftLeft (VGA1, 0x09, Local0)
149 Store (Local0, CLEN)
150
151 Return (BUF0)
152 }
153 }
154#include "superio/winbond/w83627hf/acpi/superio.asl"
155}