Merge branch 'raid56-experimental' into for-linus-3.9
[cascardo/linux.git] / drivers / staging / xgifb / vb_def.h
1 #ifndef _VB_DEF_
2 #define _VB_DEF_
3 #include "../../video/sis/initdef.h"
4
5 #define VB_XGI301C      0x0020 /* for 301C */
6
7 #define SupportCRT2in301C       0x0100  /* for 301C */
8 #define SetCHTVOverScan         0x8000
9
10 #define Panel_320x480            0x07 /*fstn*/
11 #define PanelResInfo            0x1F /* CR36 Panel Type/LCDResInfo */
12 #define Panel_1024x768x75        0x22
13 #define Panel_1280x1024x75       0x23
14
15 #define PanelRef60Hz            0x00
16 #define PanelRef75Hz            0x20
17
18 #define YPbPr525iVCLK           0x03B
19 #define YPbPr525iVCLK_2         0x03A
20
21 #define XGI_CRT2_PORT_00        (0x00 - 0x030)
22
23 #define SupportAllCRT2      0x0078
24 #define NoSupportTV         0x0070
25 #define NoSupportHiVisionTV 0x0060
26 #define NoSupportLCD        0x0058
27
28 /* -------------- SetMode Stack/Scratch */
29 #define XGI_SetCRT2ToLCDA   0x0100
30 #define SetCRT2ToDualEdge   0x8000
31
32 #define ReserveTVOption     0x0008
33 #define GatingCRT           0x0800
34 #define DisableChB          0x1000
35 #define EnableChB           0x2000
36 #define DisableChA          0x4000
37 #define EnableChA           0x8000
38
39 #define SetTVLowResolution   0x0400
40 #define TVSimuMode           0x0800
41 #define RPLLDIV2XO           0x1000
42 #define NTSC1024x768         0x2000
43 #define SetTVLockMode        0x4000
44
45 #define XGI_LCDVESATiming    0x0001 /* LCD Info/CR37 */
46 #define XGI_EnableLVDSDDA    0x0002
47 #define EnableScalingLCD     0x0008
48 #define SetPWDEnable         0x0004
49 #define SetLCDtoNonExpanding 0x0010
50 #define SetLCDDualLink       0x0100
51 #define SetLCDLowResolution  0x0200
52 #define SetLCDStdMode        0x0400
53
54 /* LCD Capability shampoo */
55 #define DefaultLCDCap        0x80ea
56 #define EnableLCD24bpp       0x0004 /* default */
57 #define DisableLCD24bpp      0x0000
58 #define LCDPolarity          0x00c0 /* default: SyncNN */
59 #define XGI_LCDDualLink      0x0100
60 #define EnableSpectrum       0x0200
61 #define PWDEnable            0x0400
62 #define EnableVBCLKDRVLOW    0x4000
63 #define EnablePLLSPLOW       0x8000
64
65 #define LCDBToA              0x20   /* LCD SetFlag */
66 #define StLCDBToA            0x40
67 #define LockLCDBToA          0x80
68 #define   LCDToFull          0x10
69 #define AVIDEOSense          0x01   /* CR32 */
70 #define SVIDEOSense          0x02
71 #define SCARTSense           0x04
72 #define LCDSense             0x08
73 #define Monitor2Sense        0x10
74 #define Monitor1Sense        0x20
75 #define HiTVSense            0x40
76
77 #define YPbPrSense           0x80   /* NEW SCRATCH */
78
79 #define TVSense              0xc7
80
81 #define YPbPrMode            0xe0
82 #define YPbPrMode525i        0x00
83 #define YPbPrMode525p        0x20
84 #define YPbPrMode750p        0x40
85 #define YPbPrMode1080i       0x60
86
87 #define ScalingLCD           0x08
88
89 #define SetYPbPr             0x04
90
91 /* ---------------------- VUMA Information */
92 #define DisplayDeviceFromCMOS 0x10
93
94 /* ---------------------- HK Evnet Definition */
95 #define XGI_ModeSwitchStatus  0xf0
96 #define ActiveCRT1            0x10
97 #define ActiveLCD             0x0020
98 #define ActiveTV              0x40
99 #define ActiveCRT2            0x80
100
101 #define ActiveAVideo          0x01
102 #define ActiveSVideo          0x02
103 #define ActiveSCART           0x04
104 #define ActiveHiTV            0x08
105 #define ActiveYPbPr           0x10
106
107 #define NTSC1024x768HT       1908
108
109 #define YPbPrTV525iHT        1716 /* YPbPr */
110 #define YPbPrTV525iVT         525
111 #define YPbPrTV525pHT        1716
112 #define YPbPrTV525pVT         525
113 #define YPbPrTV750pHT        1650
114 #define YPbPrTV750pVT         750
115
116 #define VCLK25_175           0x00
117 #define VCLK28_322           0x01
118 #define VCLK31_5             0x02
119 #define VCLK36               0x03
120 #define VCLK43_163           0x05
121 #define VCLK44_9             0x06
122 #define VCLK49_5             0x07
123 #define VCLK50               0x08
124 #define VCLK52_406           0x09
125 #define VCLK56_25            0x0A
126 #define VCLK68_179           0x0D
127 #define VCLK72_852           0x0E
128 #define VCLK75               0x0F
129 #define VCLK78_75            0x11
130 #define VCLK79_411           0x12
131 #define VCLK83_95            0x13
132 #define VCLK86_6             0x15
133 #define VCLK94_5             0x16
134 #define VCLK113_309          0x1B
135 #define VCLK116_406          0x1C
136 #define VCLK135_5            0x1E
137 #define VCLK139_054          0x1F
138 #define VCLK157_5            0x20
139 #define VCLK162              0x21
140 #define VCLK175              0x22
141 #define VCLK189              0x23
142 #define VCLK202_5            0x25
143 #define VCLK229_5            0x26
144 #define VCLK234              0x27
145 #define VCLK254_817          0x29
146 #define VCLK266_952          0x2B
147 #define VCLK269_655          0x2C
148 #define VCLK277_015          0x2E
149 #define VCLK291_132          0x30
150 #define VCLK291_766          0x31
151 #define VCLK315_195          0x33
152 #define VCLK323_586          0x34
153 #define VCLK330_615          0x35
154 #define VCLK340_477          0x37
155 #define VCLK375_847          0x38
156 #define VCLK388_631          0x39
157 #define VCLK125_999          0x51
158 #define VCLK148_5            0x52
159 #define VCLK217_325          0x55
160 #define XGI_YPbPr750pVCLK    0x57
161
162 #define VCLK39_77            0x40
163 #define YPbPr525pVCLK        0x3A
164 #define NTSC1024VCLK         0x41
165 #define VCLK35_2             0x49 /* ; 800x480 */
166 #define VCLK122_61           0x4A
167 #define VCLK80_350           0x4B
168 #define VCLK107_385          0x4C
169
170 #define RES320x200           0x00
171 #define RES320x240           0x01
172 #define RES400x300           0x02
173 #define RES512x384           0x03
174 #define RES640x400           0x04
175 #define RES640x480x60        0x05
176 #define RES640x480x72        0x06
177 #define RES640x480x75        0x07
178 #define RES640x480x85        0x08
179 #define RES640x480x100       0x09
180 #define RES640x480x120       0x0A
181 #define RES640x480x160       0x0B
182 #define RES640x480x200       0x0C
183 #define RES800x600x56        0x0D
184 #define RES800x600x60        0x0E
185 #define RES800x600x72        0x0F
186 #define RES800x600x75        0x10
187 #define RES800x600x85        0x11
188 #define RES800x600x100       0x12
189 #define RES800x600x120       0x13
190 #define RES800x600x160       0x14
191 #define RES1024x768x43       0x15
192 #define RES1024x768x60       0x16
193 #define RES1024x768x70       0x17
194 #define RES1024x768x75       0x18
195 #define RES1024x768x85       0x19
196 #define RES1024x768x100      0x1A
197 #define RES1024x768x120      0x1B
198 #define RES1280x1024x43      0x1C
199 #define RES1280x1024x60      0x1D
200 #define RES1280x1024x75      0x1E
201 #define RES1280x1024x85      0x1F
202 #define RES1600x1200x60      0x20
203 #define RES1600x1200x65      0x21
204 #define RES1600x1200x70      0x22
205 #define RES1600x1200x75      0x23
206 #define RES1600x1200x85      0x24
207 #define RES1600x1200x100     0x25
208 #define RES1600x1200x120     0x26
209 #define RES1920x1440x60      0x27
210 #define RES1920x1440x65      0x28
211 #define RES1920x1440x70      0x29
212 #define RES1920x1440x75      0x2A
213 #define RES1920x1440x85      0x2B
214 #define RES1920x1440x100     0x2C
215 #define RES2048x1536x60      0x2D
216 #define RES2048x1536x65      0x2E
217 #define RES2048x1536x70      0x2F
218 #define RES2048x1536x75      0x30
219 #define RES2048x1536x85      0x31
220 #define RES800x480x60        0x32
221 #define RES800x480x75        0x33
222 #define RES800x480x85        0x34
223 #define RES1024x576x60       0x35
224 #define RES1024x576x75       0x36
225 #define RES1024x576x85       0x37
226 #define RES1280x720x60       0x38
227 #define RES1280x720x75       0x39
228 #define RES1280x720x85       0x3A
229 #define RES1280x960x60       0x3B
230 #define RES720x480x60        0x3C
231 #define RES720x576x56        0x3D
232 #define RES856x480x79I       0x3E
233 #define RES856x480x60        0x3F
234 #define RES1280x768x60       0x40
235 #define RES1400x1050x60      0x41
236 #define RES1152x864x60       0x42
237 #define RES1152x864x75       0x43
238 #define RES1024x768x160      0x44
239 #define RES1280x960x75       0x45
240 #define RES1280x960x85       0x46
241 #define RES1280x960x120      0x47
242
243
244 #define XG27_CR8F 0x0C
245 #define XG27_SR36 0x30
246 #define XG27_SR40 0x04
247 #define XG27_SR41 0x00
248 #define XG40_CRCF 0x13
249 #define XGI330_CRT2Data_1_2 0
250 #define XGI330_CRT2Data_4_D 0
251 #define XGI330_CRT2Data_4_E 0
252 #define XGI330_CRT2Data_4_10 0x80
253 #define XGI330_SR07 0x18
254 #define XGI330_SR1F 0
255 #define XGI330_SR23 0xf6
256 #define XGI330_SR24 0x0d
257 #define XGI330_SR31 0xc0
258 #define XGI330_SR32 0x11
259 #define XGI330_SR33 0
260
261 extern const struct XGI_ExtStruct XGI330_EModeIDTable[];
262 extern const struct XGI_Ext2Struct XGI330_RefIndex[];
263 extern const struct XGI_CRT1TableStruct XGI_CRT1Table[];
264 extern const struct XGI_ECLKDataStruct XGI340_ECLKData[];
265 extern const struct SiS_VCLKData XGI_VCLKData[];
266 extern const unsigned char XGI340_CR6B[][4];
267 extern const unsigned char XGI340_AGPReg[];
268
269 #endif