Linux-2.6.12-rc2
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / video / i810 / i810_regs.h
blob6e4b9afa4d9805cb050d2bae68643427b324a785
1 /*-*- linux-c -*-
2 * linux/drivers/video/i810_regs.h -- Intel 810/815 Register List
4 * Copyright (C) 2001 Antonino Daplas<adaplas@pol.net>
5 * All Rights Reserved
8 * This file is subject to the terms and conditions of the GNU General Public
9 * License. See the file COPYING in the main directory of this archive for
10 * more details.
15 * Intel 810 Chipset Family PRM 15 3.1
16 * GC Register Memory Address Map
18 * Based on:
19 * Intel (R) 810 Chipset Family
20 * Programmer s Reference Manual
21 * November 1999
22 * Revision 1.0
23 * Order Number: 298026-001 R
25 * All GC registers are memory-mapped. In addition, the VGA and extended VGA registers
26 * are I/O mapped.
29 #ifndef __I810_REGS_H__
30 #define __I810_REGS_H__
32 /* Instruction and Interrupt Control Registers (01000h 02FFFh) */
33 #define FENCE 0x02000
34 #define PGTBL_CTL 0x02020
35 #define PGTBL_ER 0x02024
36 #define LRING 0x02030
37 #define IRING 0x02040
38 #define HWS_PGA 0x02080
39 #define IPEIR 0x02088
40 #define IPEHR 0x0208C
41 #define INSTDONE 0x02090
42 #define NOPID 0x02094
43 #define HWSTAM 0x02098
44 #define IER 0x020A0
45 #define IIR 0x020A4
46 #define IMR 0x020A8
47 #define ISR 0x020AC
48 #define EIR 0x020B0
49 #define EMR 0x020B4
50 #define ESR 0x020B8
51 #define INSTPM 0x020C0
52 #define INSTPS 0x020C4
53 #define BBP_PTR 0x020C8
54 #define ABB_SRT 0x020CC
55 #define ABB_END 0x020D0
56 #define DMA_FADD 0x020D4
57 #define FW_BLC 0x020D8
58 #define MEM_MODE 0x020DC
60 /* Memory Control Registers (03000h 03FFFh) */
61 #define DRT 0x03000
62 #define DRAMCL 0x03001
63 #define DRAMCH 0x03002
66 /* Span Cursor Registers (04000h 04FFFh) */
67 #define UI_SC_CTL 0x04008
69 /* I/O Control Registers (05000h 05FFFh) */
70 #define HVSYNC 0x05000
71 #define GPIOA 0x05010
72 #define GPIOB 0x05014
74 /* Clock Control and Power Management Registers (06000h 06FFFh) */
75 #define DCLK_0D 0x06000
76 #define DCLK_1D 0x06004
77 #define DCLK_2D 0x06008
78 #define LCD_CLKD 0x0600C
79 #define DCLK_0DS 0x06010
80 #define PWR_CLKC 0x06014
82 /* Graphics Translation Table Range Definition (10000h 1FFFFh) */
83 #define GTT 0x10000
85 /* Overlay Registers (30000h 03FFFFh) */
86 #define OVOADDR 0x30000
87 #define DOVOSTA 0x30008
88 #define GAMMA 0x30010
89 #define OBUF_0Y 0x30100
90 #define OBUF_1Y 0x30104
91 #define OBUF_0U 0x30108
92 #define OBUF_0V 0x3010C
93 #define OBUF_1U 0x30110
94 #define OBUF_1V 0x30114
95 #define OVOSTRIDE 0x30118
96 #define YRGB_VPH 0x3011C
97 #define UV_VPH 0x30120
98 #define HORZ_PH 0x30124
99 #define INIT_PH 0x30128
100 #define DWINPOS 0x3012C
101 #define DWINSZ 0x30130
102 #define SWID 0x30134
103 #define SWIDQW 0x30138
104 #define SHEIGHT 0x3013F
105 #define YRGBSCALE 0x30140
106 #define UVSCALE 0x30144
107 #define OVOCLRCO 0x30148
108 #define OVOCLRC1 0x3014C
109 #define DCLRKV 0x30150
110 #define DLCRKM 0x30154
111 #define SCLRKVH 0x30158
112 #define SCLRKVL 0x3015C
113 #define SCLRKM 0x30160
114 #define OVOCONF 0x30164
115 #define OVOCMD 0x30168
116 #define AWINPOS 0x30170
117 #define AWINZ 0x30174
119 /* BLT Engine Status (40000h 4FFFFh) (Software Debug) */
120 #define BR00 0x40000
121 #define BRO1 0x40004
122 #define BR02 0x40008
123 #define BR03 0x4000C
124 #define BR04 0x40010
125 #define BR05 0x40014
126 #define BR06 0x40018
127 #define BR07 0x4001C
128 #define BR08 0x40020
129 #define BR09 0x40024
130 #define BR10 0x40028
131 #define BR11 0x4002C
132 #define BR12 0x40030
133 #define BR13 0x40034
134 #define BR14 0x40038
135 #define BR15 0x4003C
136 #define BR16 0x40040
137 #define BR17 0x40044
138 #define BR18 0x40048
139 #define BR19 0x4004C
140 #define SSLADD 0x40074
141 #define DSLH 0x40078
142 #define DSLRADD 0x4007C
145 /* LCD/TV-Out and HW DVD Registers (60000h 6FFFFh) */
146 /* LCD/TV-Out */
147 #define HTOTAL 0x60000
148 #define HBLANK 0x60004
149 #define HSYNC 0x60008
150 #define VTOTAL 0x6000C
151 #define VBLANK 0x60010
152 #define VSYNC 0x60014
153 #define LCDTV_C 0x60018
154 #define OVRACT 0x6001C
155 #define BCLRPAT 0x60020
157 /* Display and Cursor Control Registers (70000h 7FFFFh) */
158 #define DISP_SL 0x70000
159 #define DISP_SLC 0x70004
160 #define PIXCONF 0x70008
161 #define PIXCONF1 0x70009
162 #define BLTCNTL 0x7000C
163 #define SWF 0x70014
164 #define DPLYBASE 0x70020
165 #define DPLYSTAS 0x70024
166 #define CURCNTR 0x70080
167 #define CURBASE 0x70084
168 #define CURPOS 0x70088
171 /* VGA Registers */
173 /* SMRAM Registers */
174 #define SMRAM 0x10
176 /* Graphics Control Registers */
177 #define GR_INDEX 0x3CE
178 #define GR_DATA 0x3CF
180 #define GR10 0x10
181 #define GR11 0x11
183 /* CRT Controller Registers */
184 #define CR_INDEX_MDA 0x3B4
185 #define CR_INDEX_CGA 0x3D4
186 #define CR_DATA_MDA 0x3B5
187 #define CR_DATA_CGA 0x3D5
189 #define CR30 0x30
190 #define CR31 0x31
191 #define CR32 0x32
192 #define CR33 0x33
193 #define CR35 0x35
194 #define CR39 0x39
195 #define CR40 0x40
196 #define CR41 0x41
197 #define CR42 0x42
198 #define CR70 0x70
199 #define CR80 0x80
200 #define CR81 0x82
202 /* Extended VGA Registers */
204 /* General Control and Status Registers */
205 #define ST00 0x3C2
206 #define ST01_MDA 0x3BA
207 #define ST01_CGA 0x3DA
208 #define FRC_READ 0x3CA
209 #define FRC_WRITE_MDA 0x3BA
210 #define FRC_WRITE_CGA 0x3DA
211 #define MSR_READ 0x3CC
212 #define MSR_WRITE 0x3C2
214 /* Sequencer Registers */
215 #define SR_INDEX 0x3C4
216 #define SR_DATA 0x3C5
218 #define SR01 0x01
219 #define SR02 0x02
220 #define SR03 0x03
221 #define SR04 0x04
222 #define SR07 0x07
224 /* Graphics Controller Registers */
225 #define GR00 0x00
226 #define GR01 0x01
227 #define GR02 0x02
228 #define GR03 0x03
229 #define GR04 0x04
230 #define GR05 0x05
231 #define GR06 0x06
232 #define GR07 0x07
233 #define GR08 0x08
235 /* Attribute Controller Registers */
236 #define ATTR_WRITE 0x3C0
237 #define ATTR_READ 0x3C1
239 /* VGA Color Palette Registers */
241 /* CLUT */
242 #define CLUT_DATA 0x3C9 /* DACDATA */
243 #define CLUT_INDEX_READ 0x3C7 /* DACRX */
244 #define CLUT_INDEX_WRITE 0x3C8 /* DACWX */
245 #define DACMASK 0x3C6
247 /* CRT Controller Registers */
248 #define CR00 0x00
249 #define CR01 0x01
250 #define CR02 0x02
251 #define CR03 0x03
252 #define CR04 0x04
253 #define CR05 0x05
254 #define CR06 0x06
255 #define CR07 0x07
256 #define CR08 0x08
257 #define CR09 0x09
258 #define CR0A 0x0A
259 #define CR0B 0x0B
260 #define CR0C 0x0C
261 #define CR0D 0x0D
262 #define CR0E 0x0E
263 #define CR0F 0x0F
264 #define CR10 0x10
265 #define CR11 0x11
266 #define CR12 0x12
267 #define CR13 0x13
268 #define CR14 0x14
269 #define CR15 0x15
270 #define CR16 0x16
271 #define CR17 0x17
272 #define CR18 0x18
274 #endif /* __I810_REGS_H__ */