1 /* SPDX-License-Identifier: GPL-2.0-only */
3 /* Intel Cougar Point PCH support */
4 #include <southbridge/intel/bd82x6x/pch.h>
8 // PCH Power Management Registers, located at PMBASE (0x1f.0 0x40.l)
9 OperationRegion(PMIO, SystemIO, DEFAULT_PMBASE, 0x80)
10 Field(PMIO, ByteAcc, NoLock, Preserve)
12 Offset(0x20), // GPE0_STS
14 GS00, 1, // GPIO00 SCI/Wake Status
15 GS01, 1, // GPIO01 SCI/Wake Status
16 GS02, 1, // GPIO02 SCI/Wake Status
17 GS03, 1, // GPIO03 SCI/Wake Status
18 GS04, 1, // GPIO04 SCI/Wake Status
19 GS05, 1, // GPIO05 SCI/Wake Status
20 GS06, 1, // GPIO06 SCI/Wake Status
21 GS07, 1, // GPIO07 SCI/Wake Status
22 GS08, 1, // GPIO08 SCI/Wake Status
23 GS09, 1, // GPIO09 SCI/Wake Status
24 GS10, 1, // GPIO10 SCI/Wake Status
25 GS11, 1, // GPIO11 SCI/Wake Status
26 GS12, 1, // GPIO12 SCI/Wake Status
27 GS13, 1, // GPIO13 SCI/Wake Status
28 GS14, 1, // GPIO14 SCI/Wake Status
29 GS15, 1, // GPIO15 SCI/Wake Status
30 Offset(0x28), // GPE0_EN
32 GE00, 1, // GPIO00 SCI/Wake Enable
33 GE01, 1, // GPIO01 SCI/Wake Enable
34 GE02, 1, // GPIO02 SCI/Wake Enable
35 GE03, 1, // GPIO03 SCI/Wake Enable
36 GE04, 1, // GPIO04 SCI/Wake Enable
37 GE05, 1, // GPIO05 SCI/Wake Enable
38 GE06, 1, // GPIO06 SCI/Wake Enable
39 GE07, 1, // GPIO07 SCI/Wake Enable
40 GE08, 1, // GPIO08 SCI/Wake Enable
41 GE09, 1, // GPIO09 SCI/Wake Enable
42 GE10, 1, // GPIO10 SCI/Wake Enable
43 GE11, 1, // GPIO11 SCI/Wake Enable
44 GE12, 1, // GPIO12 SCI/Wake Enable
45 GE13, 1, // GPIO13 SCI/Wake Enable
46 GE14, 1, // GPIO14 SCI/Wake Enable
47 GE15, 1, // GPIO15 SCI/Wake Enable
48 Offset(0x42), // General Purpose Control
50 GPEC, 1, // SWGPE_CTRL
53 // GPIO IO mapped registers (0x1f.0 reg 0x48.l)
54 OperationRegion(GPIO, SystemIO, DEFAULT_GPIOBASE, 0x6c)
55 Field(GPIO, ByteAcc, NoLock, Preserve)
57 Offset(0x0c), // GPIO Level
90 Offset(0x18), // GPIO Blink
123 Offset(0x2c), // GPIO Invert
128 Offset(0x38), // GPIO Level 2
161 Offset(0x48), // GPIO Level 3
177 // ICH7 Root Complex Register Block. Memory Mapped through RCBA)
178 OperationRegion(RCRB, SystemMemory, CONFIG_FIXED_RCBA_MMIO_BASE, CONFIG_RCBA_LENGTH)
179 Field(RCRB, DWordAcc, Lock, Preserve)
181 Offset(0x0000), // Backbone
182 Offset(0x1000), // Chipset
183 Offset(0x3000), // Legacy Configuration Registers
184 Offset(0x3404), // High Performance Timer Configuration
185 HPAS, 2, // Address Select
187 HPTE, 1, // Address Enable
188 Offset(0x3418), // FD (Function Disable)
190 PCID, 1, // PCI bridge disable
191 SA1D, 1, // SATA1 disable
192 SMBD, 1, // SMBUS disable
193 HDAD, 1, // Azalia disable
195 EH2D, 1, // EHCI #2 disable
196 LPBD, 1, // LPC bridge disable
197 EH1D, 1, // EHCI #1 disable
198 RP1D, 1, // Root Port 1 disable
199 RP2D, 1, // Root Port 2 disable
200 RP3D, 1, // Root Port 3 disable
201 RP4D, 1, // Root Port 4 disable
202 RP5D, 1, // Root Port 5 disable
203 RP6D, 1, // Root Port 6 disable
204 RP7D, 1, // Root Port 7 disable
205 RP8D, 1, // Root Port 8 disable
206 TTRD, 1, // Thermal sensor registers disable
207 SA2D, 1, // SATA2 disable
208 Offset(0x3428), // FD2 (Function Disable 2)
209 BDFD, 1, // Display BDF
210 ME1D, 1, // ME Interface 1 disable
211 ME2D, 1, // ME Interface 2 disable
212 IDRD, 1, // IDE redirect disable
213 KTCT, 1, // Keyboard Text redirect disable
217 // High Definition Audio (Azalia) 0:1b.0
220 // PCI Express Ports 0:1c.x
221 #include <southbridge/intel/common/acpi/pcie.asl>
223 // USB EHCI 0:1d.0 and 0:1a.0, XHCI 0:14.0
229 // SATA 0:1f.2, 0:1f.5
233 #include <southbridge/intel/common/acpi/smbus.asl>
238 * Arg0 - A Buffer containing a UUID
239 * Arg1 - An Integer containing a Revision ID of the buffer format
240 * Arg2 - An Integer containing a count of entries in Arg3
241 * Arg3 - A Buffer containing a list of DWORD capabilities
244 If (Arg0 == ToUUID("7c9512a9-1705-4cb4-af7d-506a2423ab71"))
246 Return (^XHC.POSC(Arg2, Arg3))
250 If (Arg0 == ToUUID("33DB4D5B-1FF7-401C-9657-7441C03DD766"))
252 /* Let OS control everything */
256 /* Else Return Unrecognized UUID */
257 CreateDWordField (Arg3, 0, CDW1)