Maciej Pijanka tried to get the Biostar M6TLD running, and created a patch for
[coreboot.git] / src / northbridge / intel / i440lx / i440lx.h
1 /*
2  * This file is part of the coreboot project.
3  *
4  * Copyright (C) 2006 Uwe Hermann <uwe@hermann-uwe.de>
5  * Copyright (C) 2009 Maciej Pijanka <maciej.pijanka@gmail.com>
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
20  */
21
22 /*
23  * Datasheet:
24  *   - Name: Intel 440LX AGPset: 82443LX Host Bridge/Controller
25  *   - PDF: 29056402.pdf
26  */
27
28 /*
29  * Host-to-PCI Bridge Registers.
30  * The values in parenthesis are the default values as per datasheet.
31  * Any addresses between 0x00 and 0xff not listed below are either
32  *
33  * i didnt listed every register that IS implemented, just usefull ones
34  *  -- Maciej `agaran` Pijanka
35  *
36  * Reserved or Intel Reserved and should not be touched.
37  */
38 #define APBASE  0x34 /* Aperture Base Address (0x00000008) */
39 #define PACCFG  0x50 /* 440LX PAC Configuration Register (0s00_s000_0000_0s00b) */
40 #define DBC     0x53 /* DRAM Row Type Register (0x83) */
41 #define DRT     0x55 /* DRAM Row Type Register (0x0000) */
42 #define DRAMC   0x57 /* DRAM Control (0x01) */
43 #define DRAMT   0x58 /* DRAM Timing (0x00) */
44 #define PAM     0x59 /* Programmable Attribute Map, 7 registers (0x00). */
45 #define DRB     0x60 /* DRAM Row Boundary, 8 registers (0x01). */
46 #define FDHC    0x68 /* Fixed SDRAM Hole Control (0x00). */
47 #define DRAMXC  0x6A /* Dram Extended Control Register (0x0000) */
48 #define MBSC    0x6C /* Memory Buffer Strength Control: (0x55555555) */
49
50 #define SMRAM   0x72 /* System Management RAM Control (0x02). */
51 #define ERRCMD  0x90 /* Error Command Register (0x80). */
52 #define ERRSTS0 0x91 /* Error Status (0x0000). */
53 #define ERRSTS1 0x92 /* Error Status (0x0000). */
54 // TODO: AGP stuff.
55
56 /* For convenience: */
57 #define DRB0    0x60
58 #define DRB1    0x61
59 #define DRB2    0x62
60 #define DRB3    0x63
61 #define DRB4    0x64
62 #define DRB5    0x65
63 #define DRB6    0x66
64 #define DRB7    0x67
65
66 #define PAM0    0x59
67 #define PAM1    0x5a
68 #define PAM2    0x5b
69 #define PAM3    0x5c
70 #define PAM4    0x5d
71 #define PAM5    0x5e
72 #define PAM6    0x5f
73