Oskar Enoksson | 2516f2e | 2014-02-08 00:17:21 +0100 | [diff] [blame] | 1 | /* |
| 2 | * Copyright 2005 AMD |
| 3 | * Copyright (C) 2011,2014 Oskar Enoksson <enok@lysator.liu.se> |
| 4 | */ |
| 5 | //AMD8111 isa |
| 6 | |
| 7 | Device (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 | } |