Merge branch 'stable/xen-swiotlb-0.8.6' of git://git.kernel.org/pub/scm/linux/kernel...
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / staging / xgifb / vb_struct.h
CommitLineData
d7636e0b 1#ifndef _VB_STRUCT_
2#define _VB_STRUCT_
3
4#ifdef _INITNEW_
5#define EXTERN
6#else
7#define EXTERN extern
8#endif
9
10
11
12
80adad85 13struct XGI_PanelDelayTblStruct
d7636e0b 14{
108afbf8 15 unsigned char timer[2];
80adad85 16};
d7636e0b 17
80adad85 18struct XGI_LCDDataStruct
d7636e0b 19{
82d6eb5b
BP
20 unsigned short RVBHCMAX;
21 unsigned short RVBHCFACT;
22 unsigned short VGAHT;
23 unsigned short VGAVT;
24 unsigned short LCDHT;
25 unsigned short LCDVT;
80adad85 26};
d7636e0b 27
28
80adad85 29struct XGI_LVDSCRT1HDataStruct
d7636e0b 30{
108afbf8 31 unsigned char Reg[8];
80adad85
BP
32};
33
34struct XGI_LVDSCRT1VDataStruct
d7636e0b 35{
108afbf8 36 unsigned char Reg[7];
80adad85 37};
d7636e0b 38
39
80adad85 40struct XGI_TVDataStruct
d7636e0b 41{
82d6eb5b
BP
42 unsigned short RVBHCMAX;
43 unsigned short RVBHCFACT;
44 unsigned short VGAHT;
45 unsigned short VGAVT;
46 unsigned short TVHDE;
47 unsigned short TVVDE;
48 unsigned short RVBHRS;
108afbf8 49 unsigned char FlickerMode;
82d6eb5b 50 unsigned short HALFRVBHRS;
108afbf8
BP
51 unsigned char RY1COE;
52 unsigned char RY2COE;
53 unsigned char RY3COE;
54 unsigned char RY4COE;
80adad85 55};
d7636e0b 56
80adad85 57struct XGI_LVDSDataStruct
d7636e0b 58{
82d6eb5b
BP
59 unsigned short VGAHT;
60 unsigned short VGAVT;
61 unsigned short LCDHT;
62 unsigned short LCDVT;
80adad85 63};
d7636e0b 64
80adad85 65struct XGI_LVDSDesStruct
d7636e0b 66{
82d6eb5b
BP
67 unsigned short LCDHDES;
68 unsigned short LCDVDES;
80adad85 69};
d7636e0b 70
80adad85 71struct XGI_LVDSCRT1DataStruct
d7636e0b 72{
108afbf8 73 unsigned char CR[15];
80adad85 74};
d7636e0b 75
76/*add for LCDA*/
77
80adad85 78struct XGI_StStruct
d7636e0b 79{
108afbf8 80 unsigned char St_ModeID;
82d6eb5b 81 unsigned short St_ModeFlag;
108afbf8
BP
82 unsigned char St_StTableIndex;
83 unsigned char St_CRT2CRTC;
84 unsigned char St_CRT2CRTC2;
85 unsigned char St_ResInfo;
86 unsigned char VB_StTVFlickerIndex;
87 unsigned char VB_StTVEdgeIndex;
88 unsigned char VB_StTVYFilterIndex;
80adad85 89};
d7636e0b 90
80adad85 91struct XGI_StandTableStruct
d7636e0b 92{
108afbf8
BP
93 unsigned char CRT_COLS;
94 unsigned char ROWS;
95 unsigned char CHAR_HEIGHT;
82d6eb5b 96 unsigned short CRT_LEN;
108afbf8
BP
97 unsigned char SR[4];
98 unsigned char MISC;
99 unsigned char CRTC[0x19];
100 unsigned char ATTR[0x14];
101 unsigned char GRC[9];
80adad85 102};
d7636e0b 103
80adad85 104struct XGI_ExtStruct
d7636e0b 105{
108afbf8 106 unsigned char Ext_ModeID;
82d6eb5b
BP
107 unsigned short Ext_ModeFlag;
108 unsigned short Ext_ModeInfo;
109 unsigned short Ext_Point;
110 unsigned short Ext_VESAID;
108afbf8
BP
111 unsigned char Ext_VESAMEMSize;
112 unsigned char Ext_RESINFO;
113 unsigned char VB_ExtTVFlickerIndex;
114 unsigned char VB_ExtTVEdgeIndex;
115 unsigned char VB_ExtTVYFilterIndex;
116 unsigned char REFindex;
80adad85 117};
d7636e0b 118
80adad85 119struct XGI_Ext2Struct
d7636e0b 120{
82d6eb5b 121 unsigned short Ext_InfoFlag;
108afbf8
BP
122 unsigned char Ext_CRT1CRTC;
123 unsigned char Ext_CRTVCLK;
124 unsigned char Ext_CRT2CRTC;
125 unsigned char Ext_CRT2CRTC2;
126 unsigned char ModeID;
82d6eb5b
BP
127 unsigned short XRes;
128 unsigned short YRes;
129 /* unsigned short ROM_OFFSET; */
80adad85 130};
d7636e0b 131
132
80adad85 133struct XGI_MCLKDataStruct
d7636e0b 134{
108afbf8 135 unsigned char SR28, SR29, SR2A;
82d6eb5b 136 unsigned short CLOCK;
80adad85 137};
d7636e0b 138
80adad85 139struct XGI_ECLKDataStruct
d7636e0b 140{
108afbf8 141 unsigned char SR2E, SR2F, SR30;
82d6eb5b 142 unsigned short CLOCK;
80adad85 143};
d7636e0b 144
80adad85 145struct XGI_VCLKDataStruct
d7636e0b 146{
108afbf8 147 unsigned char SR2B, SR2C;
82d6eb5b 148 unsigned short CLOCK;
80adad85 149};
d7636e0b 150
80adad85 151struct XGI_VBVCLKDataStruct
d7636e0b 152{
108afbf8 153 unsigned char Part4_A, Part4_B;
82d6eb5b 154 unsigned short CLOCK;
80adad85 155};
d7636e0b 156
80adad85 157struct XGI_StResInfoStruct
d7636e0b 158{
82d6eb5b
BP
159 unsigned short HTotal;
160 unsigned short VTotal;
80adad85 161};
d7636e0b 162
80adad85 163struct XGI_ModeResInfoStruct
d7636e0b 164{
82d6eb5b
BP
165 unsigned short HTotal;
166 unsigned short VTotal;
108afbf8
BP
167 unsigned char XChar;
168 unsigned char YChar;
80adad85 169};
d7636e0b 170
80adad85 171struct XGI_LCDNBDesStruct
d7636e0b 172{
108afbf8 173 unsigned char NB[12];
80adad85 174};
d7636e0b 175 /*add for new UNIVGABIOS*/
80adad85 176struct XGI_LCDDesStruct
d7636e0b 177{
82d6eb5b
BP
178 unsigned short LCDHDES;
179 unsigned short LCDHRS;
180 unsigned short LCDVDES;
181 unsigned short LCDVRS;
80adad85 182};
d7636e0b 183
80adad85 184struct XGI_LCDDataTablStruct
d7636e0b 185{
108afbf8 186 unsigned char PANELID;
82d6eb5b
BP
187 unsigned short MASK;
188 unsigned short CAP;
189 unsigned short DATAPTR;
80adad85 190};
d7636e0b 191
80adad85 192struct XGI_TVTablDataStruct
d7636e0b 193{
82d6eb5b
BP
194 unsigned short MASK;
195 unsigned short CAP;
196 unsigned short DATAPTR;
80adad85 197};
d7636e0b 198
80adad85 199struct XGI330_LCDDataDesStruct
d7636e0b 200{
82d6eb5b
BP
201 unsigned short LCDHDES;
202 unsigned short LCDHRS;
203 unsigned short LCDVDES;
204 unsigned short LCDVRS;
80adad85 205};
d7636e0b 206
207
80adad85 208struct XGI330_LVDSDataStruct
d7636e0b 209{
82d6eb5b
BP
210 unsigned short VGAHT;
211 unsigned short VGAVT;
212 unsigned short LCDHT;
213 unsigned short LCDVT;
80adad85 214};
d7636e0b 215
80adad85 216struct XGI330_LCDDataDesStruct2
d7636e0b 217{
82d6eb5b
BP
218 unsigned short LCDHDES;
219 unsigned short LCDHRS;
220 unsigned short LCDVDES;
221 unsigned short LCDVRS;
222 unsigned short LCDHSync;
223 unsigned short LCDVSync;
80adad85 224};
d7636e0b 225
80adad85 226struct XGI330_LCDDataStruct
d7636e0b 227{
82d6eb5b
BP
228 unsigned short RVBHCMAX;
229 unsigned short RVBHCFACT;
230 unsigned short VGAHT;
231 unsigned short VGAVT;
232 unsigned short LCDHT;
233 unsigned short LCDVT;
80adad85 234};
d7636e0b 235
236
80adad85 237struct XGI330_TVDataStruct
d7636e0b 238{
82d6eb5b
BP
239 unsigned short RVBHCMAX;
240 unsigned short RVBHCFACT;
241 unsigned short VGAHT;
242 unsigned short VGAVT;
243 unsigned short TVHDE;
244 unsigned short TVVDE;
245 unsigned short RVBHRS;
108afbf8 246 unsigned char FlickerMode;
82d6eb5b 247 unsigned short HALFRVBHRS;
80adad85 248};
d7636e0b 249
80adad85 250struct XGI330_LCDDataTablStruct
d7636e0b 251{
108afbf8 252 unsigned char PANELID;
82d6eb5b
BP
253 unsigned short MASK;
254 unsigned short CAP;
255 unsigned short DATAPTR;
80adad85 256};
d7636e0b 257
80adad85 258struct XGI330_TVDataTablStruct
d7636e0b 259{
82d6eb5b
BP
260 unsigned short MASK;
261 unsigned short CAP;
262 unsigned short DATAPTR;
80adad85 263};
d7636e0b 264
265
80adad85 266struct XGI330_CHTVDataStruct
d7636e0b 267{
82d6eb5b
BP
268 unsigned short VGAHT;
269 unsigned short VGAVT;
270 unsigned short LCDHT;
271 unsigned short LCDVT;
80adad85 272};
d7636e0b 273
80adad85 274struct XGI_TimingHStruct
d7636e0b 275{
108afbf8 276 unsigned char data[8];
80adad85 277};
d7636e0b 278
80adad85 279struct XGI_TimingVStruct
d7636e0b 280{
108afbf8 281 unsigned char data[7];
80adad85 282};
d7636e0b 283
80adad85 284struct XGI_CH7007TV_TimingHStruct
d7636e0b 285{
108afbf8 286 unsigned char data[10];
80adad85 287};
d7636e0b 288
80adad85 289struct XGI_CH7007TV_TimingVStruct
d7636e0b 290{
108afbf8 291 unsigned char data[10];
80adad85 292};
d7636e0b 293
80adad85 294struct XGI_XG21CRT1Struct
d7636e0b 295{
108afbf8 296 unsigned char ModeID, CR02, CR03, CR15, CR16;
80adad85 297};
d7636e0b 298
80adad85 299struct XGI330_CHTVRegDataStruct
d7636e0b 300{
108afbf8 301 unsigned char Reg[16];
80adad85 302};
d7636e0b 303
80adad85 304struct XGI330_LCDCapStruct
d7636e0b 305{
108afbf8 306 unsigned char LCD_ID;
82d6eb5b 307 unsigned short LCD_Capability;
108afbf8
BP
308 unsigned char LCD_SetFlag;
309 unsigned char LCD_DelayCompensation;
310 unsigned char LCD_HSyncWidth;
311 unsigned char LCD_VSyncWidth;
312 unsigned char LCD_VCLK;
313 unsigned char LCDA_VCLKData1;
314 unsigned char LCDA_VCLKData2;
315 unsigned char LCUCHAR_VCLKData1;
316 unsigned char LCUCHAR_VCLKData2;
317 unsigned char PSC_S1;
318 unsigned char PSC_S2;
319 unsigned char PSC_S3;
320 unsigned char PSC_S4;
321 unsigned char PSC_S5;
322 unsigned char PWD_2B;
323 unsigned char PWD_2C;
324 unsigned char PWD_2D;
325 unsigned char PWD_2E;
326 unsigned char PWD_2F;
327 unsigned char Spectrum_31;
328 unsigned char Spectrum_32;
329 unsigned char Spectrum_33;
330 unsigned char Spectrum_34;
80adad85 331};
d7636e0b 332
80adad85 333struct XGI21_LVDSCapStruct
d7636e0b 334{
82d6eb5b
BP
335 unsigned short LVDS_Capability;
336 unsigned short LVDSHT;
337 unsigned short LVDSVT;
338 unsigned short LVDSHDE;
339 unsigned short LVDSVDE;
340 unsigned short LVDSHFP;
341 unsigned short LVDSVFP;
342 unsigned short LVDSHSYNC;
343 unsigned short LVDSVSYNC;
108afbf8
BP
344 unsigned char VCLKData1;
345 unsigned char VCLKData2;
346 unsigned char PSC_S1;
347 unsigned char PSC_S2;
348 unsigned char PSC_S3;
349 unsigned char PSC_S4;
350 unsigned char PSC_S5;
80adad85 351};
d7636e0b 352
80adad85 353struct XGI_CRT1TableStruct
d7636e0b 354{
108afbf8 355 unsigned char CR[16];
80adad85 356};
d7636e0b 357
358
80adad85 359struct XGI330_VCLKDataStruct
d7636e0b 360{
108afbf8 361 unsigned char SR2B, SR2C;
82d6eb5b 362 unsigned short CLOCK;
80adad85 363};
d7636e0b 364
80adad85 365struct XGI301C_Tap4TimingStruct
d7636e0b 366{
82d6eb5b 367 unsigned short DE;
108afbf8 368 unsigned char Reg[64]; /* C0-FF */
80adad85 369};
d7636e0b 370
80adad85 371struct XGI_New_StandTableStruct
d7636e0b 372{
108afbf8
BP
373 unsigned char CRT_COLS;
374 unsigned char ROWS;
375 unsigned char CHAR_HEIGHT;
82d6eb5b 376 unsigned short CRT_LEN;
108afbf8
BP
377 unsigned char SR[4];
378 unsigned char MISC;
379 unsigned char CRTC[0x19];
380 unsigned char ATTR[0x14];
381 unsigned char GRC[9];
80adad85 382};
d7636e0b 383
80adad85 384struct vb_device_info
d7636e0b 385{
82d6eb5b
BP
386 unsigned char ISXPDOS;
387 unsigned long P3c4,P3d4,P3c0,P3ce,P3c2,P3cc;
388 unsigned long P3ca,P3c6,P3c7,P3c8,P3c9,P3da;
389 unsigned long Part0Port,Part1Port,Part2Port;
390 unsigned long Part3Port,Part4Port,Part5Port;
391 unsigned short RVBHCFACT,RVBHCMAX,RVBHRS;
392 unsigned short VGAVT,VGAHT,VGAVDE,VGAHDE;
393 unsigned short VT,HT,VDE,HDE;
394 unsigned short LCDHRS,LCDVRS,LCDHDES,LCDVDES;
395
396 unsigned short ModeType;
397 unsigned short IF_DEF_LVDS,IF_DEF_TRUMPION,IF_DEF_DSTN;/* ,IF_DEF_FSTN; add for dstn */
398 unsigned short IF_DEF_CRT2Monitor,IF_DEF_VideoCapture;
399 unsigned short IF_DEF_LCDA,IF_DEF_CH7017,IF_DEF_YPbPr,IF_DEF_ScaleLCD,IF_DEF_OEMUtil,IF_DEF_PWD;
400 unsigned short IF_DEF_ExpLink;
401 unsigned short IF_DEF_CH7005,IF_DEF_HiVision;
402 unsigned short IF_DEF_CH7007; /* Billy 2007/05/03 */
403 unsigned short LCDResInfo,LCDTypeInfo, VBType;/*301b*/
404 unsigned short VBInfo,TVInfo,LCDInfo, Set_VGAType;
405 unsigned short VBExtInfo;/*301lv*/
406 unsigned short SetFlag;
407 unsigned short NewFlickerMode;
408 unsigned short SelectCRT2Rate;
d7636e0b 409
274afb73
BP
410 unsigned char *ROMAddr;
411 unsigned char *FBAddr;
82d6eb5b
BP
412 unsigned long BaseAddr;
413 unsigned long RelIO;
d7636e0b 414
80adad85
BP
415 unsigned char (*CR6B)[4];
416 unsigned char (*CR6E)[4];
417 unsigned char (*CR6F)[32];
418 unsigned char (*CR89)[2];
419
420 unsigned char (*SR15)[8];
421 unsigned char (*CR40)[8];
d7636e0b 422
108afbf8
BP
423 unsigned char *pSoftSetting;
424 unsigned char *pOutputSelect;
d7636e0b 425
82d6eb5b
BP
426 unsigned short *pRGBSenseData;
427 unsigned short *pRGBSenseData2; /*301b*/
428 unsigned short *pVideoSenseData;
429 unsigned short *pVideoSenseData2;
430 unsigned short *pYCSenseData;
431 unsigned short *pYCSenseData2;
d7636e0b 432
108afbf8
BP
433 unsigned char *pSR07;
434 unsigned char *CR49;
435 unsigned char *pSR1F;
436 unsigned char *AGPReg;
437 unsigned char *SR16;
438 unsigned char *pSR21;
439 unsigned char *pSR22;
440 unsigned char *pSR23;
441 unsigned char *pSR24;
442 unsigned char *SR25;
443 unsigned char *pSR31;
444 unsigned char *pSR32;
445 unsigned char *pSR33;
446 unsigned char *pSR36; /* alan 12/07/2006 */
447 unsigned char *pCRCF;
448 unsigned char *pCRD0; /* alan 12/07/2006 */
449 unsigned char *pCRDE; /* alan 12/07/2006 */
450 unsigned char *pCR8F; /* alan 12/07/2006 */
451 unsigned char *pSR40; /* alan 12/07/2006 */
452 unsigned char *pSR41; /* alan 12/07/2006 */
453 unsigned char *pDVOSetting;
454 unsigned char *pCR2E;
455 unsigned char *pCR2F;
456 unsigned char *pCR46;
457 unsigned char *pCR47;
458 unsigned char *pCRT2Data_1_2;
459 unsigned char *pCRT2Data_4_D;
460 unsigned char *pCRT2Data_4_E;
461 unsigned char *pCRT2Data_4_10;
80adad85
BP
462 struct XGI_MCLKDataStruct *MCLKData;
463 struct XGI_ECLKDataStruct *ECLKData;
d7636e0b 464
108afbf8
BP
465 unsigned char *XGI_TVDelayList;
466 unsigned char *XGI_TVDelayList2;
467 unsigned char *CHTVVCLKUNTSC;
468 unsigned char *CHTVVCLKONTSC;
469 unsigned char *CHTVVCLKUPAL;
470 unsigned char *CHTVVCLKOPAL;
471 unsigned char *NTSCTiming;
472 unsigned char *PALTiming;
473 unsigned char *HiTVExtTiming;
474 unsigned char *HiTVSt1Timing;
475 unsigned char *HiTVSt2Timing;
476 unsigned char *HiTVTextTiming;
477 unsigned char *YPbPr750pTiming;
478 unsigned char *YPbPr525pTiming;
479 unsigned char *YPbPr525iTiming;
480 unsigned char *HiTVGroup3Data;
481 unsigned char *HiTVGroup3Simu;
482 unsigned char *HiTVGroup3Text;
483 unsigned char *Ren525pGroup3;
484 unsigned char *Ren750pGroup3;
485 unsigned char *ScreenOffset;
486 unsigned char *pXGINew_DRAMTypeDefinition;
487 unsigned char *pXGINew_I2CDefinition ;
488 unsigned char *pXGINew_CR97 ;
d7636e0b 489
80adad85
BP
490 struct XGI330_LCDCapStruct *LCDCapList;
491 struct XGI21_LVDSCapStruct *XG21_LVDSCapList;
d7636e0b 492
80adad85
BP
493 struct XGI_TimingHStruct *TimingH;
494 struct XGI_TimingVStruct *TimingV;
d7636e0b 495
80adad85
BP
496 struct XGI_StStruct *SModeIDTable;
497 struct XGI_StandTableStruct *StandTable;
498 struct XGI_ExtStruct *EModeIDTable;
499 struct XGI_Ext2Struct *RefIndex;
d7636e0b 500 /* XGINew_CRT1TableStruct *CRT1Table; */
80adad85
BP
501 struct XGI_CRT1TableStruct *XGINEWUB_CRT1Table;
502 struct XGI_VCLKDataStruct *VCLKData;
503 struct XGI_VBVCLKDataStruct *VBVCLKData;
504 struct XGI_StResInfoStruct *StResInfo;
505 struct XGI_ModeResInfoStruct *ModeResInfo;
506 struct XGI_XG21CRT1Struct *UpdateCRT1;
507}; /* _struct vb_device_info */
d7636e0b 508
509
80adad85 510struct TimingInfo
d7636e0b 511{
82d6eb5b
BP
512 unsigned short Horizontal_ACTIVE;
513 unsigned short Horizontal_FP;
514 unsigned short Horizontal_SYNC;
515 unsigned short Horizontal_BP;
516 unsigned short Vertical_ACTIVE;
517 unsigned short Vertical_FP;
518 unsigned short Vertical_SYNC;
519 unsigned short Vertical_BP;
d7636e0b 520 double DCLK;
108afbf8
BP
521 unsigned char FrameRate;
522 unsigned char Interlace;
82d6eb5b 523 unsigned short Margin;
80adad85 524};
d7636e0b 525
526#define _VB_STRUCT_
527#endif /* _VB_STRUCT_ */