staging: xgifb: eliminate pVBInfo->ECLKData
[linux-2.6-block.git] / drivers / staging / xgifb / vb_def.h
CommitLineData
84359ef6
PH
1#ifndef _VB_DEF_
2#define _VB_DEF_
3#include "../../video/sis/initdef.h"
d7636e0b 4
661f659e 5#define VB_XGI301C 0x0020 /* for 301C */
d7636e0b 6
661f659e 7#define SupportCRT2in301C 0x0100 /* for 301C */
661f659e 8#define SetCHTVOverScan 0x8000
d7636e0b 9
255aabd2 10#define Panel_320x480 0x07 /*fstn*/
661f659e 11#define PanelResInfo 0x1F /* CR36 Panel Type/LCDResInfo */
255aabd2
PH
12#define Panel_1024x768x75 0x22
13#define Panel_1280x1024x75 0x23
d7636e0b 14
15#define PanelRef60Hz 0x00
16#define PanelRef75Hz 0x20
d7636e0b 17
d7636e0b 18#define YPbPr525iVCLK 0x03B
19#define YPbPr525iVCLK_2 0x03A
20
661f659e 21#define XGI_CRT2_PORT_00 (0x00 - 0x030)
d7636e0b 22
661f659e 23#define SupportAllCRT2 0x0078
661f659e
KT
24#define NoSupportTV 0x0070
25#define NoSupportHiVisionTV 0x0060
26#define NoSupportLCD 0x0058
d7636e0b 27
28/* -------------- SetMode Stack/Scratch */
a3d675c8 29#define XGI_SetCRT2ToLCDA 0x0100
661f659e 30#define SetCRT2ToDualEdge 0x8000
661f659e 31
661f659e 32#define ReserveTVOption 0x0008
661f659e
KT
33#define GatingCRT 0x0800
34#define DisableChB 0x1000
35#define EnableChB 0x2000
36#define DisableChA 0x4000
37#define EnableChA 0x8000
38
661f659e 39#define SetTVLowResolution 0x0400
661f659e
KT
40#define TVSimuMode 0x0800
41#define RPLLDIV2XO 0x1000
42#define NTSC1024x768 0x2000
43#define SetTVLockMode 0x4000
44
a3d675c8
PH
45#define XGI_LCDVESATiming 0x0001 /* LCD Info/CR37 */
46#define XGI_EnableLVDSDDA 0x0002
661f659e
KT
47#define EnableScalingLCD 0x0008
48#define SetPWDEnable 0x0004
49#define SetLCDtoNonExpanding 0x0010
661f659e
KT
50#define SetLCDDualLink 0x0100
51#define SetLCDLowResolution 0x0200
52#define SetLCDStdMode 0x0400
53
54/* LCD Capability shampoo */
55#define DefaultLCDCap 0x80ea
661f659e
KT
56#define EnableLCD24bpp 0x0004 /* default */
57#define DisableLCD24bpp 0x0000
661f659e 58#define LCDPolarity 0x00c0 /* default: SyncNN */
a3d675c8 59#define XGI_LCDDualLink 0x0100
661f659e 60#define EnableSpectrum 0x0200
661f659e 61#define PWDEnable 0x0400
661f659e 62#define EnableVBCLKDRVLOW 0x4000
661f659e 63#define EnablePLLSPLOW 0x8000
661f659e
KT
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
661f659e 77#define YPbPrSense 0x80 /* NEW SCRATCH */
d7636e0b 78
661f659e
KT
79#define TVSense 0xc7
80
661f659e
KT
81#define YPbPrMode 0xe0
82#define YPbPrMode525i 0x00
83#define YPbPrMode525p 0x20
84#define YPbPrMode750p 0x40
85#define YPbPrMode1080i 0x60
d7636e0b 86
661f659e 87#define ScalingLCD 0x08
d7636e0b 88
661f659e 89#define SetYPbPr 0x04
661f659e 90
d7636e0b 91/* ---------------------- VUMA Information */
661f659e 92#define DisplayDeviceFromCMOS 0x10
d7636e0b 93
94/* ---------------------- HK Evnet Definition */
a3d675c8 95#define XGI_ModeSwitchStatus 0xf0
661f659e
KT
96#define ActiveCRT1 0x10
97#define ActiveLCD 0x0020
98#define ActiveTV 0x40
99#define ActiveCRT2 0x80
100
661f659e
KT
101#define ActiveAVideo 0x01
102#define ActiveSVideo 0x02
103#define ActiveSCART 0x04
104#define ActiveHiTV 0x08
105#define ActiveYPbPr 0x10
106
661f659e 107#define NTSC1024x768HT 1908
661f659e
KT
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
661f659e
KT
116#define VCLK25_175 0x00
117#define VCLK28_322 0x01
118#define VCLK31_5 0x02
119#define VCLK36 0x03
661f659e
KT
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
661f659e
KT
126#define VCLK68_179 0x0D
127#define VCLK72_852 0x0E
128#define VCLK75 0x0F
661f659e
KT
129#define VCLK78_75 0x11
130#define VCLK79_411 0x12
131#define VCLK83_95 0x13
661f659e
KT
132#define VCLK86_6 0x15
133#define VCLK94_5 0x16
661f659e
KT
134#define VCLK113_309 0x1B
135#define VCLK116_406 0x1C
661f659e
KT
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
661f659e
KT
142#define VCLK202_5 0x25
143#define VCLK229_5 0x26
144#define VCLK234 0x27
661f659e 145#define VCLK254_817 0x29
661f659e
KT
146#define VCLK266_952 0x2B
147#define VCLK269_655 0x2C
661f659e 148#define VCLK277_015 0x2E
661f659e
KT
149#define VCLK291_132 0x30
150#define VCLK291_766 0x31
661f659e
KT
151#define VCLK315_195 0x33
152#define VCLK323_586 0x34
153#define VCLK330_615 0x35
661f659e
KT
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
661f659e 159#define VCLK217_325 0x55
a3d675c8 160#define XGI_YPbPr750pVCLK 0x57
661f659e 161
661f659e 162#define VCLK39_77 0x40
c3b3b3f9 163#define YPbPr525pVCLK 0x3A
661f659e 164#define NTSC1024VCLK 0x41
661f659e
KT
165#define VCLK35_2 0x49 /* ; 800x480 */
166#define VCLK122_61 0x4A
167#define VCLK80_350 0x4B
168#define VCLK107_385 0x4C
169
661f659e
KT
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
6d12dae4
PH
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_SR25 0
258#define XGI330_SR31 0xc0
259#define XGI330_SR32 0x11
260#define XGI330_SR33 0
261
b397992e 262extern const struct XGI_ExtStruct XGI330_EModeIDTable[];
a39325d2 263extern const struct XGI_Ext2Struct XGI330_RefIndex[];
7853bced 264extern const struct XGI_CRT1TableStruct XGI_CRT1Table[];
9b047458 265extern const struct XGI_ECLKDataStruct XGI340_ECLKData[];
b397992e 266
d7636e0b 267#endif