blob: 60e16e0b9830e72d87e7b328f910df89c0a8a350 [file] [log] [blame]
Angel Pons4b429832020-04-02 23:48:50 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Angel Pons1db5bc72020-01-15 00:49:03 +01002
Angel Ponse4156c32020-09-14 15:47:59 +02003#ifndef __HASWELL_REGISTERS_MCHBAR_H__
4#define __HASWELL_REGISTERS_MCHBAR_H__
Angel Pons1db5bc72020-01-15 00:49:03 +01005
6/* Register definitions */
7#define MAD_CHNL 0x5000 /* Address Decoder Channel Configuration */
Angel Pons6791ad22020-10-13 21:44:08 +02008#define MAD_DIMM(ch) (0x5004 + (ch) * 4)
Angel Pons1db5bc72020-01-15 00:49:03 +01009#define MC_INIT_STATE_G 0x5030
10#define MRC_REVISION 0x5034 /* MRC Revision */
11
12#define MC_LOCK 0x50fc /* Memory Controlller Lock register */
13
14#define GFXVTBAR 0x5400 /* Base address for IGD */
15#define EDRAMBAR 0x5408 /* Base address for eDRAM */
16#define VTVC0BAR 0x5410 /* Base address for PEG, USB, SATA, etc. */
17#define INTRDIRCTL 0x5418 /* Interrupt Redirection Control (PAIR) */
18#define GDXCBAR 0x5420 /* Generic Debug eXternal Connection */
19
20/* PAVP message register. Bit 0 locks PAVP settings, and bits [31..20] are an offset. */
21#define MMIO_PAVP_MSG 0x5500
22
23/* Some power MSRs are also represented in MCHBAR */
24#define MCH_PKG_POWER_LIMIT_LO 0x59a0
25#define MCH_PKG_POWER_LIMIT_HI 0x59a4
26
27#define MCH_DDR_POWER_LIMIT_LO 0x58e0
28#define MCH_DDR_POWER_LIMIT_HI 0x58e4
29
30#define SSKPD 0x5d10 /* 64-bit scratchpad register */
31#define BIOS_RESET_CPL 0x5da8 /* 8-bit */
32
33#define MC_BIOS_DATA 0x5e04 /* Miscellaneous information for BIOS */
34#define SAPMCTL 0x5f00
35
36#define HDAUDRID 0x6008
37#define UMAGFXCTL 0x6020
38#define VDMBDFBARKVM 0x6030
39#define VDMBDFBARPAVP 0x6034
40#define VTDTRKLCK 0x63fc
41#define REQLIM 0x6800
42#define DMIVCLIM 0x7000
43#define CRDTLCK 0x77fc
44
Angel Ponse4156c32020-09-14 15:47:59 +020045#endif /* __HASWELL_REGISTERS_MCHBAR_H__ */