i810_regs.h 8.7 KB

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