annotate drivers/3dfx.h @ 25661:293aeec83153

Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with an almost-trivial implementation. This allows making the builtin codec structs const, and it also makes clearer that this "selected" status is not used outside the init functions.
author reimar
date Sat, 12 Jan 2008 14:05:46 +0000
parents 6ac1ece1f9fe
children a506a6ab14e1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
1 /*
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
2 * 3dfx.h
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
3 *
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
4 * changed by zsteva Aug/Sep 2001, see vo_3dfx.c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
5 *
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
6 * Copyright (C) Colin Cross Apr 2000
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
7 *
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
8 * mpeg2dec is free software; you can redistribute it and/or modify
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
9 * it under the terms of the GNU General Public License as published by
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
10 * the Free Software Foundation; either version 2, or (at your option)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
11 * any later version.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
12 *
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
13 * mpeg2dec is distributed in the hope that it will be useful,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
16 * GNU General Public License for more details.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
17 *
21977
cea0eb833758 Fix FSF address and otherwise broken license headers.
diego
parents: 9566
diff changeset
18 * You should have received a copy of the GNU General Public License along
cea0eb833758 Fix FSF address and otherwise broken license headers.
diego
parents: 9566
diff changeset
19 * with mpeg2dec; if not, write to the Free Software Foundation, Inc.,
cea0eb833758 Fix FSF address and otherwise broken license headers.
diego
parents: 9566
diff changeset
20 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
21 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
22
25553
6ac1ece1f9fe Add multiple inclusion guards to all header files that lack them.
diego
parents: 21977
diff changeset
23 #ifndef MPLAYER_3DFX_H
6ac1ece1f9fe Add multiple inclusion guards to all header files that lack them.
diego
parents: 21977
diff changeset
24 #define MPLAYER_3DFX_H
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
25
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
26 #define VOODOO_IO_REG_OFFSET ((unsigned long int)0x0000000)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
27 #define VOODOO_YUV_REG_OFFSET ((unsigned long int)0x0080100)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
28 #define VOODOO_AGP_REG_OFFSET ((unsigned long int)0x0080000)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
29 #define VOODOO_2D_REG_OFFSET ((unsigned long int)0x0100000)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
30 #define VOODOO_YUV_PLANE_OFFSET ((unsigned long int)0x0C00000)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
31
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
32 #define VOODOO_BLT_FORMAT_YUYV (8<<16)
2346
7d702c3ef0ad updated - by zsteva@ptt.yu
arpi
parents: 1980
diff changeset
33 #define VOODOO_BLT_FORMAT_UYVY (9<<16)
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
34 #define VOODOO_BLT_FORMAT_16 (3<<16)
2346
7d702c3ef0ad updated - by zsteva@ptt.yu
arpi
parents: 1980
diff changeset
35 #define VOODOO_BLT_FORMAT_24 (4<<16)
7d702c3ef0ad updated - by zsteva@ptt.yu
arpi
parents: 1980
diff changeset
36 #define VOODOO_BLT_FORMAT_32 (5<<16)
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
37
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
38 #define VOODOO_YUV_STRIDE (1024>>2)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
39
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
40 struct voodoo_yuv_fb_t {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
41 uint32_t Y[0x0040000];
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
42 uint32_t U[0x0040000];
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
43 uint32_t V[0x0040000];
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
44 };
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
45
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
46 struct voodoo_yuv_reg_t {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
47 uint32_t yuvBaseAddr;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
48 uint32_t yuvStride;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
49 };
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
50
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
51 struct voodoo_2d_reg_t {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
52 uint32_t status;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
53 uint32_t intCtrl;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
54 uint32_t clip0Min;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
55 uint32_t clip0Max;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
56 uint32_t dstBaseAddr;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
57 uint32_t dstFormat;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
58 uint32_t srcColorkeyMin;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
59 uint32_t srcColorkeyMax;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
60 uint32_t dstColorkeyMin;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
61 uint32_t dstColorkeyMax;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
62 signed long bresError0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
63 signed long bresError1;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
64 uint32_t rop;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
65 uint32_t srcBaseAddr;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
66 uint32_t commandExtra;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
67 uint32_t lineStipple;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
68 uint32_t lineStyle;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
69 uint32_t pattern0Alias;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
70 uint32_t pattern1Alias;;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
71 uint32_t clip1Min;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
72 uint32_t clip1Max;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
73 uint32_t srcFormat;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
74 uint32_t srcSize;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
75 uint32_t srcXY;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
76 uint32_t colorBack;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
77 uint32_t colorFore;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
78 uint32_t dstSize;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
79 uint32_t dstXY;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
80 uint32_t command;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
81 uint32_t RESERVED1;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
82 uint32_t RESERVED2;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
83 uint32_t RESERVED3;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
84 uint8_t launchArea[128];
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
85 };
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
86
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
87
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
88 struct voodoo_io_reg_t {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
89 uint32_t status;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
90 uint32_t pciInit0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
91 uint32_t sipMonitor;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
92 uint32_t lfbMemoryConfig;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
93 uint32_t miscInit0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
94 uint32_t miscInit1;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
95 uint32_t dramInit0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
96 uint32_t dramInit1;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
97 uint32_t agpInit;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
98 uint32_t tmuGbeInit;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
99 uint32_t vgaInit0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
100 uint32_t vgaInit1;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
101 uint32_t dramCommand;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
102 uint32_t dramData;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
103 uint32_t RESERVED1;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
104 uint32_t RESERVED2;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
105
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
106 uint32_t pllCtrl0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
107 uint32_t pllCtrl1;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
108 uint32_t pllCtrl2;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
109 uint32_t dacMode;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
110 uint32_t dacAddr;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
111 uint32_t dacData;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
112
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
113 uint32_t rgbMaxDelta;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
114 uint32_t vidProcCfg;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
115 uint32_t hwCurPatAddr;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
116 uint32_t hwCurLoc;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
117 uint32_t hwCurC0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
118 uint32_t hwCurC1;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
119 uint32_t vidInFormat;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
120 uint32_t vidInStatus;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
121 uint32_t vidSerialParallelPort;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
122 uint32_t vidInXDecimDeltas;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
123 uint32_t vidInDecimInitErrs;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
124 uint32_t vidInYDecimDeltas;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
125 uint32_t vidPixelBufThold;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
126 uint32_t vidChromaMin;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
127 uint32_t vidChromaMax;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
128 uint32_t vidCurrentLine;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
129 uint32_t vidScreenSize;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
130 uint32_t vidOverlayStartCoords;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
131 uint32_t vidOverlayEndScreenCoord;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
132 uint32_t vidOverlayDudx;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
133 uint32_t vidOverlayDudxOffsetSrcWidth;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
134 uint32_t vidOverlayDvdy;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
135
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
136 uint32_t vga_registers_not_mem_mapped[12];
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
137 uint32_t vidOverlayDvdyOffset;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
138 uint32_t vidDesktopStartAddr;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
139 uint32_t vidDesktopOverlayStride;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
140 uint32_t vidInAddr0;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
141 uint32_t vidInAddr1;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
142 uint32_t vidInAddr2;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
143 uint32_t vidInStride;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
144 uint32_t vidCurrOverlayStartAddr;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
145 };
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
146
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
147
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
148 struct pioData_t {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
149 short port;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
150 short size;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
151 int device;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
152 void *value;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
153 };
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
154
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
155 typedef struct pioData_t pioData;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
156 typedef struct voodoo_2d_reg_t voodoo_2d_reg;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
157 typedef struct voodoo_io_reg_t voodoo_io_reg;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
158 typedef struct voodoo_yuv_reg_t voodoo_yuv_reg;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
159 typedef struct voodoo_yuv_fb_t voodoo_yuv_fb;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
160
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
161
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
162 /* from linux/driver/video/tdfxfb.c, definition for 3dfx registers.
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
163 *
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
164 * author: Hannu Mallat <hmallat@cc.hut.fi>
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
165 */
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
166
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
167 #ifndef PCI_DEVICE_ID_3DFX_VOODOO5
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
168 #define PCI_DEVICE_ID_3DFX_VOODOO5 0x0009
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
169 #endif
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
170
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
171 /* membase0 register offsets */
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
172 #define STATUS 0x00
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
173 #define PCIINIT0 0x04
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
174 #define SIPMONITOR 0x08
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
175 #define LFBMEMORYCONFIG 0x0c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
176 #define MISCINIT0 0x10
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
177 #define MISCINIT1 0x14
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
178 #define DRAMINIT0 0x18
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
179 #define DRAMINIT1 0x1c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
180 #define AGPINIT 0x20
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
181 #define TMUGBEINIT 0x24
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
182 #define VGAINIT0 0x28
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
183 #define VGAINIT1 0x2c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
184 #define DRAMCOMMAND 0x30
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
185 #define DRAMDATA 0x34
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
186 /* reserved 0x38 */
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
187 /* reserved 0x3c */
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
188 #define PLLCTRL0 0x40
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
189 #define PLLCTRL1 0x44
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
190 #define PLLCTRL2 0x48
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
191 #define DACMODE 0x4c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
192 #define DACADDR 0x50
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
193 #define DACDATA 0x54
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
194 #define RGBMAXDELTA 0x58
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
195 #define VIDPROCCFG 0x5c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
196 #define HWCURPATADDR 0x60
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
197 #define HWCURLOC 0x64
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
198 #define HWCURC0 0x68
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
199 #define HWCURC1 0x6c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
200 #define VIDINFORMAT 0x70
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
201 #define VIDINSTATUS 0x74
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
202 #define VIDSERPARPORT 0x78
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
203 #define VIDINXDELTA 0x7c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
204 #define VIDININITERR 0x80
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
205 #define VIDINYDELTA 0x84
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
206 #define VIDPIXBUFTHOLD 0x88
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
207 #define VIDCHRMIN 0x8c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
208 #define VIDCHRMAX 0x90
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
209 #define VIDCURLIN 0x94
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
210 #define VIDSCREENSIZE 0x98
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
211 #define VIDOVRSTARTCRD 0x9c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
212 #define VIDOVRENDCRD 0xa0
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
213 #define VIDOVRDUDX 0xa4
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
214 #define VIDOVRDUDXOFF 0xa8
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
215 #define VIDOVRDVDY 0xac
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
216 /* ... */
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
217 #define VIDOVRDVDYOFF 0xe0
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
218 #define VIDDESKSTART 0xe4
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
219 #define VIDDESKSTRIDE 0xe8
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
220 #define VIDINADDR0 0xec
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
221 #define VIDINADDR1 0xf0
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
222 #define VIDINADDR2 0xf4
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
223 #define VIDINSTRIDE 0xf8
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
224 #define VIDCUROVRSTART 0xfc
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
225
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
226 #define INTCTRL (0x00100000 + 0x04)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
227 #define CLIP0MIN (0x00100000 + 0x08)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
228 #define CLIP0MAX (0x00100000 + 0x0c)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
229 #define DSTBASE (0x00100000 + 0x10)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
230 #define DSTFORMAT (0x00100000 + 0x14)
9557
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
231 #define SRCCOLORKEYMIN (0x00100000 + 0x18)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
232 #define SRCCOLORKEYMAX (0x00100000 + 0x1c)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
233 #define DSTCOLORKEYMIN (0x00100000 + 0x20)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
234 #define DSTCOLORKEYMAX (0x00100000 + 0x24)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
235 #define ROP123 (0x00100000 + 0x30)
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
236 #define SRCBASE (0x00100000 + 0x34)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
237 #define COMMANDEXTRA_2D (0x00100000 + 0x38)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
238 #define CLIP1MIN (0x00100000 + 0x4c)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
239 #define CLIP1MAX (0x00100000 + 0x50)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
240 #define SRCFORMAT (0x00100000 + 0x54)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
241 #define SRCSIZE (0x00100000 + 0x58)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
242 #define SRCXY (0x00100000 + 0x5c)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
243 #define COLORBACK (0x00100000 + 0x60)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
244 #define COLORFORE (0x00100000 + 0x64)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
245 #define DSTSIZE (0x00100000 + 0x68)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
246 #define DSTXY (0x00100000 + 0x6c)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
247 #define COMMAND_2D (0x00100000 + 0x70)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
248 #define LAUNCH_2D (0x00100000 + 0x80)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
249
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
250 #define COMMAND_3D (0x00200000 + 0x120)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
251
9566
015b404023f5 Overlay support (now vo_xtdfx is possible :) and yet another way to
albeu
parents: 9557
diff changeset
252 #define SWAPBUFCMD (0x00200000 + 0x128)
015b404023f5 Overlay support (now vo_xtdfx is possible :) and yet another way to
albeu
parents: 9557
diff changeset
253 #define SWAPPENDING (0x00200000 + 0x24C)
015b404023f5 Overlay support (now vo_xtdfx is possible :) and yet another way to
albeu
parents: 9557
diff changeset
254 #define LEFTOVBUF (0x00200000 + 0x250)
015b404023f5 Overlay support (now vo_xtdfx is possible :) and yet another way to
albeu
parents: 9557
diff changeset
255 #define RIGHTOVBUF (0x00200000 + 0x254)
015b404023f5 Overlay support (now vo_xtdfx is possible :) and yet another way to
albeu
parents: 9557
diff changeset
256 #define FBISWAPBUFHIST (0x00200000 + 0x258)
015b404023f5 Overlay support (now vo_xtdfx is possible :) and yet another way to
albeu
parents: 9557
diff changeset
257
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
258 /* register bitfields (not all, only as needed) */
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
259
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
260 #define BIT(x) (1UL << (x))
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
261
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
262 /* COMMAND_2D reg. values */
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
263 #define ROP_COPY 0xcc // src
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
264 #define ROP_INVERT 0x55 // NOT dst
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
265 #define ROP_XOR 0x66 // src XOR dst
2346
7d702c3ef0ad updated - by zsteva@ptt.yu
arpi
parents: 1980
diff changeset
266 #define ROP_OR (0xee) /* src | dst */
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
267
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
268 #define AUTOINC_DSTX BIT(10)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
269 #define AUTOINC_DSTY BIT(11)
9557
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
270
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
271
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
272 #define COMMAND_2D_S2S_BITBLT 0x01 // screen to screen
9557
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
273 #define COMMAND_2D_S2S_STRECH_BLT 0x02 // BLT + Strech
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
274 #define COMMAND_2D_H2S_BITBLT 0x03 // host to screen
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
275 #define COMMAND_2D_FILLRECT 0x05
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
276
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
277 #define COMMAND_2D_DO_IMMED BIT(8) // Do it immediatly
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
278
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
279
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
280
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
281 #define COMMAND_3D_NOP 0x00
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
282 #define STATUS_RETRACE BIT(6)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
283 #define STATUS_BUSY BIT(9)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
284 #define MISCINIT1_CLUT_INV BIT(0)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
285 #define MISCINIT1_2DBLOCK_DIS BIT(15)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
286 #define DRAMINIT0_SGRAM_NUM BIT(26)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
287 #define DRAMINIT0_SGRAM_TYPE BIT(27)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
288 #define DRAMINIT1_MEM_SDRAM BIT(30)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
289 #define VGAINIT0_VGA_DISABLE BIT(0)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
290 #define VGAINIT0_EXT_TIMING BIT(1)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
291 #define VGAINIT0_8BIT_DAC BIT(2)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
292 #define VGAINIT0_EXT_ENABLE BIT(6)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
293 #define VGAINIT0_WAKEUP_3C3 BIT(8)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
294 #define VGAINIT0_LEGACY_DISABLE BIT(9)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
295 #define VGAINIT0_ALT_READBACK BIT(10)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
296 #define VGAINIT0_FAST_BLINK BIT(11)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
297 #define VGAINIT0_EXTSHIFTOUT BIT(12)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
298 #define VGAINIT0_DECODE_3C6 BIT(13)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
299 #define VGAINIT0_SGRAM_HBLANK_DISABLE BIT(22)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
300 #define VGAINIT1_MASK 0x1fffff
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
301 #define VIDCFG_VIDPROC_ENABLE BIT(0)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
302 #define VIDCFG_CURS_X11 BIT(1)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
303 #define VIDCFG_HALF_MODE BIT(4)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
304 #define VIDCFG_DESK_ENABLE BIT(7)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
305 #define VIDCFG_CLUT_BYPASS BIT(10)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
306 #define VIDCFG_2X BIT(26)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
307 #define VIDCFG_HWCURSOR_ENABLE BIT(27)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
308 #define VIDCFG_PIXFMT_SHIFT 18
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
309 #define DACMODE_2X BIT(0)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
310
9557
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
311 /* AGP registers */
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
312 #define AGPREQSIZE (0x0080000 + 0x00)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
313 #define AGPHOSTADDRESSLOW (0x0080000 + 0x04)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
314 #define AGPHOSTADDRESSHIGH (0x0080000 + 0x08)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
315 #define AGPGRAPHICSADDRESS (0x0080000 + 0x0C)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
316 #define AGPGRAPHICSSTRIDE (0x0080000 + 0x10)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
317 #define AGPMOVECMD (0x0080000 + 0x14)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
318
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
319 /* FIFO registers */
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
320 #define CMDBASEADDR0 (0x0080000 + 0x20)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
321 #define CMDBASESIZE0 (0x0080000 + 0x24)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
322 #define CMDBUMP0 (0x0080000 + 0x28)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
323 #define CMDRDPTRL0 (0x0080000 + 0x2C)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
324 #define CMDRDPTRH0 (0x0080000 + 0x30)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
325 #define CMDAMIN0 (0x0080000 + 0x34)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
326 #define CMDAMAX0 (0x0080000 + 0x38)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
327 #define CMDFIFODEPTH0 (0x0080000 + 0x44)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
328 #define CMDHOLECNT0 (0x0080000 + 0x48)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
329
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
330
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
331 /* YUV reisters */
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
332 #define YUVBASEADDRESS (0x0080000 + 0x100)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
333 #define YUVSTRIDE (0x0080000 + 0x104)
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
334
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
335 /* VGA rubbish, need to change this for multihead support */
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
336 #define MISC_W 0x3c2
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
337 #define MISC_R 0x3cc
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
338 #define SEQ_I 0x3c4
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
339 #define SEQ_D 0x3c5
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
340 #define CRT_I 0x3d4
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
341 #define CRT_D 0x3d5
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
342 #define ATT_IW 0x3c0
9557
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
343 #define RAMDAC_R 0x3c7
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
344 #define RAMDAC_W 0x3c8
261209467b41 I forgot to commit this file
albeu
parents: 9210
diff changeset
345 #define RAMDAC_D 0x3c9
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
346 #define IS1_R 0x3da
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
347 #define GRA_I 0x3ce
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
348 #define GRA_D 0x3cf
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
349
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
350 #ifndef FB_ACCEL_3DFX_BANSHEE
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
351 #define FB_ACCEL_3DFX_BANSHEE 31
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
352 #endif
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
353
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
354 #define TDFXF_HSYNC_ACT_HIGH 0x01
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
355 #define TDFXF_HSYNC_ACT_LOW 0x02
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
356 #define TDFXF_VSYNC_ACT_HIGH 0x04
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
357 #define TDFXF_VSYNC_ACT_LOW 0x08
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
358 #define TDFXF_LINE_DOUBLE 0x10
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
359 #define TDFXF_VIDEO_ENABLE 0x20
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
360
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
361 #define TDFXF_HSYNC_MASK 0x03
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
362 #define TDFXF_VSYNC_MASK 0x0c
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
363
9210
fc78c4942484 keep reserved bits zeroed, test & bug report by andee (at irc.freenode.net)
iive
parents: 7137
diff changeset
364 #define XYREG(x,y) (((((unsigned long)y) & 0x1FFF) << 16) | (((unsigned long)x) & 0x1FFF))
1980
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
365
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
366 //#define TDFXFB_DEBUG
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
367 #ifdef TDFXFB_DEBUG
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
368 #define DPRINTK(a,b...) printk(KERN_DEBUG "fb: %s: " a, __FUNCTION__ , ## b)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
369 #else
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
370 #define DPRINTK(a,b...)
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
371 #endif
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
372
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
373 /* ------------------------------------------------------------------------- */
4a08e7ac3f59 tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents: 1
diff changeset
374
25553
6ac1ece1f9fe Add multiple inclusion guards to all header files that lack them.
diego
parents: 21977
diff changeset
375 #endif /* MPLAYER_3DFX_H */