]> rtime.felk.cvut.cz Git - linux-imx.git/blob - drivers/staging/xgifb/vb_struct.h
acf6e7fbbaed476493474b83b5ca4c4e79067953
[linux-imx.git] / drivers / staging / xgifb / vb_struct.h
1 #ifndef _VB_STRUCT_
2 #define _VB_STRUCT_
3 #include "../../video/sis/vstruct.h"
4
5 struct XGI_LVDSCRT1HDataStruct {
6         unsigned char Reg[8];
7 };
8
9 struct XGI_LVDSCRT1VDataStruct {
10         unsigned char Reg[7];
11 };
12
13 struct XGI_ExtStruct {
14         unsigned char Ext_ModeID;
15         unsigned short Ext_ModeFlag;
16         unsigned short Ext_ModeInfo;
17         unsigned char Ext_RESINFO;
18         unsigned char VB_ExtTVYFilterIndex;
19         unsigned char REFindex;
20 };
21
22 struct XGI_Ext2Struct {
23         unsigned short Ext_InfoFlag;
24         unsigned char Ext_CRT1CRTC;
25         unsigned char Ext_CRTVCLK;
26         unsigned char Ext_CRT2CRTC;
27         unsigned char Ext_CRT2CRTC2;
28         unsigned char  ModeID;
29         unsigned short XRes;
30         unsigned short YRes;
31 };
32
33 struct XGI_ECLKDataStruct {
34         unsigned char SR2E, SR2F, SR30;
35         unsigned short CLOCK;
36 };
37
38 /*add for new UNIVGABIOS*/
39 struct XGI_LCDDesStruct {
40         unsigned short LCDHDES;
41         unsigned short LCDHRS;
42         unsigned short LCDVDES;
43         unsigned short LCDVRS;
44 };
45
46 struct XGI330_LCDDataDesStruct2 {
47         unsigned short LCDHDES;
48         unsigned short LCDHRS;
49         unsigned short LCDVDES;
50         unsigned short LCDVRS;
51         unsigned short LCDHSync;
52         unsigned short LCDVSync;
53 };
54
55 struct XGI330_LCDDataTablStruct {
56         unsigned char  PANELID;
57         unsigned short MASK;
58         unsigned short CAP;
59         void const *DATAPTR;
60 };
61
62 struct XGI330_TVDataTablStruct {
63         unsigned short MASK;
64         unsigned short CAP;
65         struct SiS_TVData const *DATAPTR;
66 };
67
68
69 struct XGI_TimingHStruct {
70         unsigned char data[8];
71 };
72
73 struct XGI_TimingVStruct {
74         unsigned char data[7];
75 };
76
77 struct XGI_XG21CRT1Struct {
78         unsigned char ModeID, CR02, CR03, CR15, CR16;
79 };
80
81 struct XGI330_LCDCapStruct {
82         unsigned char   LCD_ID;
83         unsigned short  LCD_Capability;
84         unsigned char   LCD_SetFlag;
85         unsigned char   LCD_HSyncWidth;
86         unsigned char   LCD_VSyncWidth;
87         unsigned char   LCD_VCLK;
88         unsigned char   LCDA_VCLKData1;
89         unsigned char   LCDA_VCLKData2;
90         unsigned char   LCUCHAR_VCLKData1;
91         unsigned char   LCUCHAR_VCLKData2;
92         unsigned char   PSC_S1;
93         unsigned char   PSC_S2;
94         unsigned char   PSC_S3;
95         unsigned char   PSC_S4;
96         unsigned char   PSC_S5;
97         unsigned char   PWD_2B;
98         unsigned char   PWD_2C;
99         unsigned char   PWD_2D;
100         unsigned char   PWD_2E;
101         unsigned char   PWD_2F;
102         unsigned char   Spectrum_31;
103         unsigned char   Spectrum_32;
104         unsigned char   Spectrum_33;
105         unsigned char   Spectrum_34;
106 };
107
108 struct XGI21_LVDSCapStruct {
109         unsigned short LVDS_Capability;
110         unsigned short LVDSHT;
111         unsigned short LVDSVT;
112         unsigned short LVDSHDE;
113         unsigned short LVDSVDE;
114         unsigned short LVDSHFP;
115         unsigned short LVDSVFP;
116         unsigned short LVDSHSYNC;
117         unsigned short LVDSVSYNC;
118         unsigned char  VCLKData1;
119         unsigned char  VCLKData2;
120         unsigned char  PSC_S1; /* Duration between CPL on and signal on */
121         unsigned char  PSC_S2; /* Duration signal on and Vdd on */
122         unsigned char  PSC_S3; /* Duration between CPL off and signal off */
123         unsigned char  PSC_S4; /* Duration signal off and Vdd off */
124         unsigned char  PSC_S5;
125 };
126
127 struct XGI_CRT1TableStruct {
128         unsigned char CR[16];
129 };
130
131
132 struct XGI301C_Tap4TimingStruct {
133         unsigned short DE;
134         unsigned char  Reg[64];   /* C0-FF */
135 };
136
137 struct vb_device_info {
138         unsigned long   P3c4, P3d4, P3c0, P3ce, P3c2, P3cc;
139         unsigned long   P3ca, P3c6, P3c7, P3c8, P3c9, P3da;
140         unsigned long   Part0Port, Part1Port, Part2Port;
141         unsigned long   Part3Port, Part4Port, Part5Port;
142         unsigned short   RVBHCFACT, RVBHCMAX, RVBHRS;
143         unsigned short   VGAVT, VGAHT, VGAVDE, VGAHDE;
144         unsigned short   VT, HT, VDE, HDE;
145         unsigned short   LCDHRS, LCDVRS, LCDHDES, LCDVDES;
146
147         unsigned short   ModeType;
148         unsigned short   IF_DEF_LVDS, IF_DEF_TRUMPION, IF_DEF_DSTN;
149         unsigned short   IF_DEF_CRT2Monitor;
150         unsigned short   IF_DEF_YPbPr;
151         unsigned short   IF_DEF_HiVision;
152         unsigned short   LCDResInfo, LCDTypeInfo, VBType;/*301b*/
153         unsigned short   VBInfo, TVInfo, LCDInfo;
154         unsigned short   SetFlag;
155         unsigned short   NewFlickerMode;
156         unsigned short   SelectCRT2Rate;
157
158         void __iomem *FBAddr;
159         unsigned long BaseAddr;
160
161         unsigned char const (*SR15)[8];
162         unsigned char const (*CR40)[8];
163
164         struct SiS_MCLKData const *MCLKData;
165
166         unsigned char   *pXGINew_DRAMTypeDefinition;
167         unsigned char   XGINew_CR97;
168
169         struct XGI330_LCDCapStruct const *LCDCapList;
170
171         struct XGI_TimingHStruct TimingH;
172         struct XGI_TimingVStruct TimingV;
173
174         int ram_type;
175         int ram_channel;
176         int ram_bus;
177 };  /* _struct vb_device_info */
178
179 #endif /* _VB_STRUCT_ */