staging/xgifb: Use structs and defines from the sis headers
[linux-2.6.git] / drivers / staging / xgifb / vb_struct.h
blob76a17c29245c6114e84c38815e146c9b952549e8
1 #ifndef _VB_STRUCT_
2 #define _VB_STRUCT_
4 struct XGI_LCDDataStruct {
5 unsigned short RVBHCMAX;
6 unsigned short RVBHCFACT;
7 unsigned short VGAHT;
8 unsigned short VGAVT;
9 unsigned short LCDHT;
10 unsigned short LCDVT;
13 #include "../../video/sis/vstruct.h"
15 struct XGI_LVDSCRT1HDataStruct {
16 unsigned char Reg[8];
19 struct XGI_LVDSCRT1VDataStruct {
20 unsigned char Reg[7];
23 struct XGI_TVDataStruct {
24 unsigned short RVBHCMAX;
25 unsigned short RVBHCFACT;
26 unsigned short VGAHT;
27 unsigned short VGAVT;
28 unsigned short TVHDE;
29 unsigned short TVVDE;
30 unsigned short RVBHRS;
31 unsigned char FlickerMode;
32 unsigned short HALFRVBHRS;
33 unsigned char RY1COE;
34 unsigned char RY2COE;
35 unsigned char RY3COE;
36 unsigned char RY4COE;
39 struct XGI_StStruct {
40 unsigned char St_ModeID;
41 unsigned short St_ModeFlag;
42 unsigned char St_StTableIndex;
43 unsigned char St_CRT2CRTC;
44 unsigned char St_CRT2CRTC2;
45 unsigned char St_ResInfo;
46 unsigned char VB_StTVFlickerIndex;
47 unsigned char VB_StTVEdgeIndex;
48 unsigned char VB_StTVYFilterIndex;
51 struct XGI_StandTableStruct {
52 unsigned char CRT_COLS;
53 unsigned char ROWS;
54 unsigned char CHAR_HEIGHT;
55 unsigned short CRT_LEN;
56 unsigned char SR[4];
57 unsigned char MISC;
58 unsigned char CRTC[0x19];
59 unsigned char ATTR[0x14];
60 unsigned char GRC[9];
63 struct XGI_ExtStruct {
64 unsigned char Ext_ModeID;
65 unsigned short Ext_ModeFlag;
66 unsigned short Ext_ModeInfo;
67 unsigned short Ext_Point;
68 unsigned short Ext_VESAID;
69 unsigned char Ext_VESAMEMSize;
70 unsigned char Ext_RESINFO;
71 unsigned char VB_ExtTVFlickerIndex;
72 unsigned char VB_ExtTVEdgeIndex;
73 unsigned char VB_ExtTVYFilterIndex;
74 unsigned char REFindex;
77 struct XGI_Ext2Struct {
78 unsigned short Ext_InfoFlag;
79 unsigned char Ext_CRT1CRTC;
80 unsigned char Ext_CRTVCLK;
81 unsigned char Ext_CRT2CRTC;
82 unsigned char Ext_CRT2CRTC2;
83 unsigned char ModeID;
84 unsigned short XRes;
85 unsigned short YRes;
86 /* unsigned short ROM_OFFSET; */
90 struct XGI_MCLKDataStruct {
91 unsigned char SR28, SR29, SR2A;
92 unsigned short CLOCK;
95 struct XGI_ECLKDataStruct {
96 unsigned char SR2E, SR2F, SR30;
97 unsigned short CLOCK;
100 struct XGI_VCLKDataStruct {
101 unsigned char SR2B, SR2C;
102 unsigned short CLOCK;
105 struct XGI_VBVCLKDataStruct {
106 unsigned char Part4_A, Part4_B;
107 unsigned short CLOCK;
110 struct XGI_StResInfoStruct {
111 unsigned short HTotal;
112 unsigned short VTotal;
115 struct XGI_ModeResInfoStruct {
116 unsigned short HTotal;
117 unsigned short VTotal;
118 unsigned char XChar;
119 unsigned char YChar;
122 /*add for new UNIVGABIOS*/
123 struct XGI_LCDDesStruct {
124 unsigned short LCDHDES;
125 unsigned short LCDHRS;
126 unsigned short LCDVDES;
127 unsigned short LCDVRS;
130 struct XGI_LCDDataTablStruct {
131 unsigned char PANELID;
132 unsigned short MASK;
133 unsigned short CAP;
134 unsigned short DATAPTR;
137 struct XGI330_LCDDataDesStruct {
138 unsigned short LCDHDES;
139 unsigned short LCDHRS;
140 unsigned short LCDVDES;
141 unsigned short LCDVRS;
145 struct XGI330_LVDSDataStruct {
146 unsigned short VGAHT;
147 unsigned short VGAVT;
148 unsigned short LCDHT;
149 unsigned short LCDVT;
152 struct XGI330_LCDDataDesStruct2 {
153 unsigned short LCDHDES;
154 unsigned short LCDHRS;
155 unsigned short LCDVDES;
156 unsigned short LCDVRS;
157 unsigned short LCDHSync;
158 unsigned short LCDVSync;
161 struct XGI330_LCDDataStruct {
162 unsigned short RVBHCMAX;
163 unsigned short RVBHCFACT;
164 unsigned short VGAHT;
165 unsigned short VGAVT;
166 unsigned short LCDHT;
167 unsigned short LCDVT;
171 struct XGI330_TVDataStruct {
172 unsigned short RVBHCMAX;
173 unsigned short RVBHCFACT;
174 unsigned short VGAHT;
175 unsigned short VGAVT;
176 unsigned short TVHDE;
177 unsigned short TVVDE;
178 unsigned short RVBHRS;
179 unsigned char FlickerMode;
180 unsigned short HALFRVBHRS;
183 struct XGI330_LCDDataTablStruct {
184 unsigned char PANELID;
185 unsigned short MASK;
186 unsigned short CAP;
187 unsigned short DATAPTR;
190 struct XGI330_TVDataTablStruct {
191 unsigned short MASK;
192 unsigned short CAP;
193 unsigned short DATAPTR;
197 struct XGI330_CHTVDataStruct {
198 unsigned short VGAHT;
199 unsigned short VGAVT;
200 unsigned short LCDHT;
201 unsigned short LCDVT;
204 struct XGI_TimingHStruct {
205 unsigned char data[8];
208 struct XGI_TimingVStruct {
209 unsigned char data[7];
212 struct XGI_XG21CRT1Struct {
213 unsigned char ModeID, CR02, CR03, CR15, CR16;
216 struct XGI330_LCDCapStruct {
217 unsigned char LCD_ID;
218 unsigned short LCD_Capability;
219 unsigned char LCD_SetFlag;
220 unsigned char LCD_DelayCompensation;
221 unsigned char LCD_HSyncWidth;
222 unsigned char LCD_VSyncWidth;
223 unsigned char LCD_VCLK;
224 unsigned char LCDA_VCLKData1;
225 unsigned char LCDA_VCLKData2;
226 unsigned char LCUCHAR_VCLKData1;
227 unsigned char LCUCHAR_VCLKData2;
228 unsigned char PSC_S1;
229 unsigned char PSC_S2;
230 unsigned char PSC_S3;
231 unsigned char PSC_S4;
232 unsigned char PSC_S5;
233 unsigned char PWD_2B;
234 unsigned char PWD_2C;
235 unsigned char PWD_2D;
236 unsigned char PWD_2E;
237 unsigned char PWD_2F;
238 unsigned char Spectrum_31;
239 unsigned char Spectrum_32;
240 unsigned char Spectrum_33;
241 unsigned char Spectrum_34;
244 struct XGI21_LVDSCapStruct {
245 unsigned short LVDS_Capability;
246 unsigned short LVDSHT;
247 unsigned short LVDSVT;
248 unsigned short LVDSHDE;
249 unsigned short LVDSVDE;
250 unsigned short LVDSHFP;
251 unsigned short LVDSVFP;
252 unsigned short LVDSHSYNC;
253 unsigned short LVDSVSYNC;
254 unsigned char VCLKData1;
255 unsigned char VCLKData2;
256 unsigned char PSC_S1;
257 unsigned char PSC_S2;
258 unsigned char PSC_S3;
259 unsigned char PSC_S4;
260 unsigned char PSC_S5;
263 struct XGI_CRT1TableStruct {
264 unsigned char CR[16];
268 struct XGI330_VCLKDataStruct {
269 unsigned char SR2B, SR2C;
270 unsigned short CLOCK;
273 struct XGI301C_Tap4TimingStruct {
274 unsigned short DE;
275 unsigned char Reg[64]; /* C0-FF */
278 struct vb_device_info {
279 unsigned char ISXPDOS;
280 unsigned long P3c4, P3d4, P3c0, P3ce, P3c2, P3cc;
281 unsigned long P3ca, P3c6, P3c7, P3c8, P3c9, P3da;
282 unsigned long Part0Port, Part1Port, Part2Port;
283 unsigned long Part3Port, Part4Port, Part5Port;
284 unsigned short RVBHCFACT, RVBHCMAX, RVBHRS;
285 unsigned short VGAVT, VGAHT, VGAVDE, VGAHDE;
286 unsigned short VT, HT, VDE, HDE;
287 unsigned short LCDHRS, LCDVRS, LCDHDES, LCDVDES;
289 unsigned short ModeType;
290 /* ,IF_DEF_FSTN; add for dstn */
291 unsigned short IF_DEF_LVDS, IF_DEF_TRUMPION, IF_DEF_DSTN;
292 unsigned short IF_DEF_CRT2Monitor;
293 unsigned short IF_DEF_LCDA, IF_DEF_YPbPr;
294 unsigned short IF_DEF_ExpLink;
295 unsigned short IF_DEF_HiVision;
296 unsigned short LCDResInfo, LCDTypeInfo, VBType;/*301b*/
297 unsigned short VBInfo, TVInfo, LCDInfo;
298 unsigned short VBExtInfo;/*301lv*/
299 unsigned short SetFlag;
300 unsigned short NewFlickerMode;
301 unsigned short SelectCRT2Rate;
303 void __iomem *FBAddr;
304 unsigned long BaseAddr;
305 unsigned long RelIO;
307 unsigned char (*CR6B)[4];
308 unsigned char (*CR6E)[4];
309 unsigned char (*CR6F)[32];
310 unsigned char (*CR89)[2];
312 unsigned char (*SR15)[8];
313 unsigned char (*CR40)[8];
315 unsigned char *pSoftSetting;
316 unsigned char *pOutputSelect;
318 unsigned short *pRGBSenseData;
319 unsigned short *pRGBSenseData2; /*301b*/
320 unsigned short *pVideoSenseData;
321 unsigned short *pVideoSenseData2;
322 unsigned short *pYCSenseData;
323 unsigned short *pYCSenseData2;
325 unsigned char *pSR07;
326 unsigned char *CR49;
327 unsigned char *pSR1F;
328 unsigned char *AGPReg;
329 unsigned char *SR16;
330 unsigned char *pSR21;
331 unsigned char *pSR22;
332 unsigned char *pSR23;
333 unsigned char *pSR24;
334 unsigned char *SR25;
335 unsigned char *pSR31;
336 unsigned char *pSR32;
337 unsigned char *pSR33;
338 unsigned char *pSR36; /* alan 12/07/2006 */
339 unsigned char *pCRCF;
340 unsigned char *pCRD0; /* alan 12/07/2006 */
341 unsigned char *pCRDE; /* alan 12/07/2006 */
342 unsigned char *pCR8F; /* alan 12/07/2006 */
343 unsigned char *pSR40; /* alan 12/07/2006 */
344 unsigned char *pSR41; /* alan 12/07/2006 */
345 unsigned char *pDVOSetting;
346 unsigned char *pCR2E;
347 unsigned char *pCR2F;
348 unsigned char *pCR46;
349 unsigned char *pCR47;
350 unsigned char *pCRT2Data_1_2;
351 unsigned char *pCRT2Data_4_D;
352 unsigned char *pCRT2Data_4_E;
353 unsigned char *pCRT2Data_4_10;
354 struct SiS_MCLKData *MCLKData;
355 struct XGI_ECLKDataStruct *ECLKData;
357 unsigned char *XGI_TVDelayList;
358 unsigned char *XGI_TVDelayList2;
359 unsigned char *NTSCTiming;
360 unsigned char *PALTiming;
361 unsigned char *HiTVExtTiming;
362 unsigned char *HiTVSt1Timing;
363 unsigned char *HiTVSt2Timing;
364 unsigned char *HiTVTextTiming;
365 unsigned char *YPbPr750pTiming;
366 unsigned char *YPbPr525pTiming;
367 unsigned char *YPbPr525iTiming;
368 unsigned char *HiTVGroup3Data;
369 unsigned char *HiTVGroup3Simu;
370 unsigned char *HiTVGroup3Text;
371 unsigned char *Ren525pGroup3;
372 unsigned char *Ren750pGroup3;
373 unsigned char *ScreenOffset;
374 unsigned char *pXGINew_DRAMTypeDefinition;
375 unsigned char *pXGINew_I2CDefinition ;
376 unsigned char *pXGINew_CR97 ;
378 struct XGI330_LCDCapStruct *LCDCapList;
380 struct XGI_TimingHStruct *TimingH;
381 struct XGI_TimingVStruct *TimingV;
383 struct XGI_StStruct *SModeIDTable;
384 struct SiS_StandTable_S *StandTable;
385 struct XGI_ExtStruct *EModeIDTable;
386 struct XGI_Ext2Struct *RefIndex;
387 /* XGINew_CRT1TableStruct *CRT1Table; */
388 struct XGI_CRT1TableStruct *XGINEWUB_CRT1Table;
389 struct SiS_VCLKData *VCLKData;
390 struct SiS_VBVCLKData *VBVCLKData;
391 struct SiS_StResInfo_S *StResInfo;
392 struct SiS_ModeResInfo_S *ModeResInfo;
393 struct XGI_XG21CRT1Struct *UpdateCRT1;
395 int ram_type;
396 int ram_channel;
397 int ram_bus;
398 }; /* _struct vb_device_info */
400 #endif /* _VB_STRUCT_ */