2 * This file is part of the coreboot project.
4 * Copyright (C) 2010 Travelping GmbH <info@travelping.com>
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; either version 2 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21 /* Host-Hub Interface Bridge */
22 #define GMC 0x50 /* GMCH Misc. Control (0x0000) */
23 #define GGC 0x52 /* GMCH Graphics Control (0x0030) */
24 #define DAFC 0x54 /* Device and Function Control (0x0000) */
25 #define FDHC 0x58 /* Fixed Dram Hole Control */
26 #define PAM0 0x59 /* Programmable Attribute Map #0 (0x00) */
27 #define PAM1 0x5a /* Programmable Attribute Map #1 (0x00) */
28 #define PAM2 0x5b /* Programmable Attribute Map #2 (0x00) */
29 #define PAM3 0x5c /* Programmable Attribute Map #3 (0x00) */
30 #define PAM4 0x5d /* Programmable Attribute Map #4 (0x00) */
31 #define PAM5 0x5e /* Programmable Attribute Map #5 (0x00) */
32 #define PAM6 0x5f /* Programmable Attribute Map #6 (0x00) */
33 #define SMRAM 0x60 /* System Management RAM Control (0x02) */
34 #define ESMRAMC 0x61 /* Extended System Management RAM Control (0x38) */
35 #define ERRSTS 0x62 /* Error Status (0x0000) */
36 #define ERRCMD 0x64 /* Error Command (0x0000) */
37 #define SMICMD 0x66 /* SMI Command (0x00) */
38 #define SCICMD 0x67 /* SCI Command (0x00) */
39 #define SHIC 0x74 /* Secondary Host Interface Control Register (0x00006010) */
40 #define ACAPID 0xA0 /* AGP Capability Identifier (0x00200002) */
41 #define AGPSTAT 0xA4 /* AGP Status Register (0x1f000217) */
42 #define AGPCMD 0xA8 /* AGP Command (0x0000) */
43 #define AGPCTRL 0xB0 /* AGP Control (0x0000) */
44 #define AFT 0xB2 /* AGP Functional Test (0xe9f0) */
45 #define ATTBASE 0xB8 /* Aperture Translation Table Base (0x00000000) */
46 #define AMTT 0xBC /* AGP Interface Multi Transaction Timer (0x00) */
47 #define LPTT 0xBD /* Low Priority Transaction Timer (0x00) */
48 #define HEM 0xF0 /* Host Error Control/Status/Obs (0x00000000) */
50 /* Main Memory Control */
51 #define DRB 0x40 /* DRAM Row 0-3 Boundary (0x00000000) */
52 #define DRA 0x50 /* DRAM Row 0-3 Attribute (0x7777) */
53 #define DRT 0x60 /* DRAM Timing (0x18004425) */
54 #define PWRMG 0x68 /* DRAM Controller Power Management Control (0x00000000) */
55 #define DRC 0x70 /* DRAM Controller Mode (0x00000081) */
56 #define DTC 0xA0 /* DRAM Throttling Control (0x00000000) */
58 #define DRT_CAS_MASK (3 << 5)
59 #define DRT_CAS_2_0 (1 << 5)
60 #define DRT_CAS_2_5 (0 << 5)
62 #define DRT_TRP_MASK 3
67 #define DRT_RCD_MASK (3 << 2)
68 #define DRT_RCD_4 (0 << 2)
69 #define DRT_RCD_3 (1 << 2)
70 #define DRT_RCD_2 (2 << 2)
72 #define DRT_TRAS_MIN_MASK (3 << 9)
73 #define DRT_TRAS_MIN_8 (0 << 9)
74 #define DRT_TRAS_MIN_7 (1 << 9)
75 #define DRT_TRAS_MIN_6 (2 << 9)
76 #define DRT_TRAS_MIN_5 (3 << 9)