History

usb: misc: sisusbvga: Move static const tables out to different include file

sisusb_init.h is included by multiple source files, but the big data tables contained are only referenced by one of them, leaving the tables 'defined but not used' by the remainder. We have a choice to either place them inside the source file, taking up may lines and potentially overwhelming the source file OR tuck them away neatly inside their own headerfile. The latter was chosen. Fixes the following W=1 kernel build warning(s): In file included from drivers/usb/misc/sisusbvga/sisusb.c:54: drivers/usb/misc/sisusbvga/sisusb_init.h:664:34: warning: ‘SiSUSB_VCLKData’ defined but not used [-Wunused-const-variable=] 664 | static const struct SiS_VCLKData SiSUSB_VCLKData[] = { | ^~~~~~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:406:35: warning: ‘SiSUSB_CRT1Table’ defined but not used [-Wunused-const-variable=] 406 | static const struct SiS_CRT1Table SiSUSB_CRT1Table[] = { | ^~~~~~~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:348:30: warning: ‘SiSUSB_RefIndex’ defined but not used [-Wunused-const-variable=] 348 | static const struct SiS_Ext2 SiSUSB_RefIndex[] = { | ^~~~~~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:269:29: warning: ‘SiSUSB_EModeIDTable’ defined but not used [-Wunused-const-variable=] 269 | static const struct SiS_Ext SiSUSB_EModeIDTable[] = { | ^~~~~~~~~~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:238:36: warning: ‘SiSUSB_StandTable’ defined but not used [-Wunused-const-variable=] 238 | static const struct SiS_StandTable SiSUSB_StandTable[] = { | ^~~~~~~~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:201:37: warning: ‘SiSUSB_ModeResInfo’ defined but not used [-Wunused-const-variable=] 201 | static const struct SiS_ModeResInfo SiSUSB_ModeResInfo[] = { | ^~~~~~~~~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:196:28: warning: ‘SiSUSB_SModeIDTable’ defined but not used [-Wunused-const-variable=] 196 | static const struct SiS_St SiSUSB_SModeIDTable[] = { | ^~~~~~~~~~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:183:28: warning: ‘SiS_VGA_DAC’ defined but not used [-Wunused-const-variable=] 183 | static const unsigned char SiS_VGA_DAC[] = { | ^~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:172:28: warning: ‘SiS_EGA_DAC’ defined but not used [-Wunused-const-variable=] 172 | static const unsigned char SiS_EGA_DAC[] = { | ^~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:161:28: warning: ‘SiS_CGA_DAC’ defined but not used [-Wunused-const-variable=] 161 | static const unsigned char SiS_CGA_DAC[] = { | ^~~~~~~~~~~ drivers/usb/misc/sisusbvga/sisusb_init.h:150:28: warning: ‘SiS_MDA_DAC’ defined but not used [-Wunused-const-variable=] 150 | static const unsigned char SiS_MDA_DAC[] = { | ^~~~~~~~~~~

Lee Jones committed 6 years ago

Commit 313da011 parent 4805ad23 files · +689 −631Browse files

Unified · Split

3 files
  1. drivers/usb/misc/sisusbvga/sisusb_init.c +1 −0
  2. drivers/usb/misc/sisusbvga/sisusb_init.h +0 −631
  3. drivers/usb/misc/sisusbvga/sisusb_tables.h +688 −0
drivers/usb/misc/sisusbvga/sisusb_init.c+1−0
@@ -45,6 +45,7 @@ · 44 unmodified lines
4545
4646 #include "sisusb.h"
4747 #include "sisusb_init.h"
48+#include "sisusb_tables.h"
4849
4950 /*********************************************/
5051 /* POINTER INITIALIZATION */
drivers/usb/misc/sisusbvga/sisusb_init.h+0−631
@@ -147,637 +147,6 @@ · 146 unmodified lines
147147 #define SIS_VIDEO_PLAYBACK 0x02 - 0x30
148148 #define SIS_CRT2_PORT_04 0x04 - 0x30
149149
150−static const unsigned char SiS_MDA_DAC[] = {
151− 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
152− 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
153− 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
154− 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
155− 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
156− 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
157− 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
158− 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F
159−};
160−
161−static const unsigned char SiS_CGA_DAC[] = {
162− 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
163− 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
164− 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
165− 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
166− 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
167− 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
168− 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
169− 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F
170−};
171−
172−static const unsigned char SiS_EGA_DAC[] = {
173− 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x05, 0x15,
174− 0x20, 0x30, 0x24, 0x34, 0x21, 0x31, 0x25, 0x35,
175− 0x08, 0x18, 0x0C, 0x1C, 0x09, 0x19, 0x0D, 0x1D,
176− 0x28, 0x38, 0x2C, 0x3C, 0x29, 0x39, 0x2D, 0x3D,
177− 0x02, 0x12, 0x06, 0x16, 0x03, 0x13, 0x07, 0x17,
178− 0x22, 0x32, 0x26, 0x36, 0x23, 0x33, 0x27, 0x37,
179− 0x0A, 0x1A, 0x0E, 0x1E, 0x0B, 0x1B, 0x0F, 0x1F,
180− 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F
181−};
182−
183−static const unsigned char SiS_VGA_DAC[] = {
184− 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
185− 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
186− 0x00, 0x05, 0x08, 0x0B, 0x0E, 0x11, 0x14, 0x18,
187− 0x1C, 0x20, 0x24, 0x28, 0x2D, 0x32, 0x38, 0x3F,
188− 0x00, 0x10, 0x1F, 0x2F, 0x3F, 0x1F, 0x27, 0x2F,
189− 0x37, 0x3F, 0x2D, 0x31, 0x36, 0x3A, 0x3F, 0x00,
190− 0x07, 0x0E, 0x15, 0x1C, 0x0E, 0x11, 0x15, 0x18,
191− 0x1C, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x00, 0x04,
192− 0x08, 0x0C, 0x10, 0x08, 0x0A, 0x0C, 0x0E, 0x10,
193− 0x0B, 0x0C, 0x0D, 0x0F, 0x10
194−};
195−
196−static const struct SiS_St SiSUSB_SModeIDTable[] = {
197− {0x03, 0x0010, 0x18, 0x02, 0x02, 0x00, 0x01, 0x03, 0x40},
198− {0xff, 0x0000, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
199−};
200−
201−static const struct SiS_ModeResInfo SiSUSB_ModeResInfo[] = {
202− {320, 200, 8, 8}, /* 0x00 */
203− {320, 240, 8, 8}, /* 0x01 */
204− {320, 400, 8, 8}, /* 0x02 */
205− {400, 300, 8, 8}, /* 0x03 */
206− {512, 384, 8, 8}, /* 0x04 */
207− {640, 400, 8, 16}, /* 0x05 */
208− {640, 480, 8, 16}, /* 0x06 */
209− {800, 600, 8, 16}, /* 0x07 */
210− {1024, 768, 8, 16}, /* 0x08 */
211− {1280, 1024, 8, 16}, /* 0x09 */
212− {1600, 1200, 8, 16}, /* 0x0a */
213− {1920, 1440, 8, 16}, /* 0x0b */
214− {2048, 1536, 8, 16}, /* 0x0c */
215− {720, 480, 8, 16}, /* 0x0d */
216− {720, 576, 8, 16}, /* 0x0e */
217− {1280, 960, 8, 16}, /* 0x0f */
218− {800, 480, 8, 16}, /* 0x10 */
219− {1024, 576, 8, 16}, /* 0x11 */
220− {1280, 720, 8, 16}, /* 0x12 */
221− {856, 480, 8, 16}, /* 0x13 */
222− {1280, 768, 8, 16}, /* 0x14 */
223− {1400, 1050, 8, 16}, /* 0x15 */
224− {1152, 864, 8, 16}, /* 0x16 */
225− {848, 480, 8, 16}, /* 0x17 */
226− {1360, 768, 8, 16}, /* 0x18 */
227− {1024, 600, 8, 16}, /* 0x19 */
228− {1152, 768, 8, 16}, /* 0x1a */
229− {768, 576, 8, 16}, /* 0x1b */
230− {1360, 1024, 8, 16}, /* 0x1c */
231− {1680, 1050, 8, 16}, /* 0x1d */
232− {1280, 800, 8, 16}, /* 0x1e */
233− {1920, 1080, 8, 16}, /* 0x1f */
234− {960, 540, 8, 16}, /* 0x20 */
235− {960, 600, 8, 16} /* 0x21 */
236−};
237−
238−static const struct SiS_StandTable SiSUSB_StandTable[] = {
239− /* MD_3_400 - mode 0x03 - 400 */
240− {
241− 0x50, 0x18, 0x10, 0x1000,
242− {0x00, 0x03, 0x00, 0x02},
243− 0x67,
244− {0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f,
245− 0x00, 0x4f, 0x0d, 0x0e, 0x00, 0x00, 0x00, 0x00,
246− 0x9c, 0x8e, 0x8f, 0x28, 0x1f, 0x96, 0xb9, 0xa3,
247− 0xff},
248− {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07,
249− 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
250− 0x0c, 0x00, 0x0f, 0x08},
251− {0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff}
252− },
253− /* Generic for VGA and higher */
254− {
255− 0x00, 0x00, 0x00, 0x0000,
256− {0x01, 0x0f, 0x00, 0x0e},
257− 0x23,
258− {0x5f, 0x4f, 0x50, 0x82, 0x54, 0x80, 0x0b, 0x3e,
259− 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
260− 0xea, 0x8c, 0xdf, 0x28, 0x40, 0xe7, 0x04, 0xa3,
261− 0xff},
262− {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
263− 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
264− 0x01, 0x00, 0x00, 0x00},
265− {0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0f, 0xff}
266− }
267−};
268−
269−static const struct SiS_Ext SiSUSB_EModeIDTable[] = {
270− {0x2e, 0x0a1b, 0x0101, SIS_RI_640x480, 0x00, 0x00, 0x05, 0x05, 0x08, 2}, /* 640x480x8 */
271− {0x2f, 0x0a1b, 0x0100, SIS_RI_640x400, 0x00, 0x00, 0x05, 0x05, 0x10, 0}, /* 640x400x8 */
272− {0x30, 0x2a1b, 0x0103, SIS_RI_800x600, 0x00, 0x00, 0x07, 0x06, 0x00, 3}, /* 800x600x8 */
273− {0x31, 0x4a1b, 0x0000, SIS_RI_720x480, 0x00, 0x00, 0x06, 0x06, 0x11, -1}, /* 720x480x8 */
274− {0x32, 0x4a1b, 0x0000, SIS_RI_720x576, 0x00, 0x00, 0x06, 0x06, 0x12, -1}, /* 720x576x8 */
275− {0x33, 0x4a1d, 0x0000, SIS_RI_720x480, 0x00, 0x00, 0x06, 0x06, 0x11, -1}, /* 720x480x16 */
276− {0x34, 0x6a1d, 0x0000, SIS_RI_720x576, 0x00, 0x00, 0x06, 0x06, 0x12, -1}, /* 720x576x16 */
277− {0x35, 0x4a1f, 0x0000, SIS_RI_720x480, 0x00, 0x00, 0x06, 0x06, 0x11, -1}, /* 720x480x32 */
278− {0x36, 0x6a1f, 0x0000, SIS_RI_720x576, 0x00, 0x00, 0x06, 0x06, 0x12, -1}, /* 720x576x32 */
279− {0x38, 0x0a1b, 0x0105, SIS_RI_1024x768, 0x00, 0x00, 0x08, 0x07, 0x13, 4}, /* 1024x768x8 */
280− {0x3a, 0x0e3b, 0x0107, SIS_RI_1280x1024, 0x00, 0x00, 0x00, 0x00, 0x2f, 8}, /* 1280x1024x8 */
281− {0x41, 0x9a1d, 0x010e, SIS_RI_320x200, 0x00, 0x00, 0x04, 0x04, 0x1a, 0}, /* 320x200x16 */
282− {0x44, 0x0a1d, 0x0111, SIS_RI_640x480, 0x00, 0x00, 0x05, 0x05, 0x08, 2}, /* 640x480x16 */
283− {0x47, 0x2a1d, 0x0114, SIS_RI_800x600, 0x00, 0x00, 0x07, 0x06, 0x00, 3}, /* 800x600x16 */
284− {0x4a, 0x0a3d, 0x0117, SIS_RI_1024x768, 0x00, 0x00, 0x08, 0x07, 0x13, 4}, /* 1024x768x16 */
285− {0x4d, 0x0e7d, 0x011a, SIS_RI_1280x1024, 0x00, 0x00, 0x00, 0x00, 0x2f, 8}, /* 1280x1024x16 */
286− {0x50, 0x9a1b, 0x0132, SIS_RI_320x240, 0x00, 0x00, 0x04, 0x04, 0x1b, 2}, /* 320x240x8 */
287− {0x51, 0xba1b, 0x0133, SIS_RI_400x300, 0x00, 0x00, 0x07, 0x07, 0x1c, 3}, /* 400x300x8 */
288− {0x52, 0xba1b, 0x0134, SIS_RI_512x384, 0x00, 0x00, 0x00, 0x00, 0x1d, 4}, /* 512x384x8 */
289− {0x56, 0x9a1d, 0x0135, SIS_RI_320x240, 0x00, 0x00, 0x04, 0x04, 0x1b, 2}, /* 320x240x16 */
290− {0x57, 0xba1d, 0x0136, SIS_RI_400x300, 0x00, 0x00, 0x07, 0x07, 0x1c, 3}, /* 400x300x16 */
291− {0x58, 0xba1d, 0x0137, SIS_RI_512x384, 0x00, 0x00, 0x00, 0x00, 0x1d, 4}, /* 512x384x16 */
292− {0x59, 0x9a1b, 0x0138, SIS_RI_320x200, 0x00, 0x00, 0x04, 0x04, 0x1a, 0}, /* 320x200x8 */
293− {0x5c, 0xba1f, 0x0000, SIS_RI_512x384, 0x00, 0x00, 0x00, 0x00, 0x1d, 4}, /* 512x384x32 */
294− {0x5d, 0x0a1d, 0x0139, SIS_RI_640x400, 0x00, 0x00, 0x05, 0x07, 0x10, 0}, /* 640x400x16 */
295− {0x5e, 0x0a1f, 0x0000, SIS_RI_640x400, 0x00, 0x00, 0x05, 0x07, 0x10, 0}, /* 640x400x32 */
296− {0x62, 0x0a3f, 0x013a, SIS_RI_640x480, 0x00, 0x00, 0x05, 0x05, 0x08, 2}, /* 640x480x32 */
297− {0x63, 0x2a3f, 0x013b, SIS_RI_800x600, 0x00, 0x00, 0x07, 0x06, 0x00, 3}, /* 800x600x32 */
298− {0x64, 0x0a7f, 0x013c, SIS_RI_1024x768, 0x00, 0x00, 0x08, 0x07, 0x13, 4}, /* 1024x768x32 */
299− {0x65, 0x0eff, 0x013d, SIS_RI_1280x1024, 0x00, 0x00, 0x00, 0x00, 0x2f, 8}, /* 1280x1024x32 */
300− {0x70, 0x6a1b, 0x0000, SIS_RI_800x480, 0x00, 0x00, 0x07, 0x07, 0x1e, -1}, /* 800x480x8 */
301− {0x71, 0x4a1b, 0x0000, SIS_RI_1024x576, 0x00, 0x00, 0x00, 0x00, 0x21, -1}, /* 1024x576x8 */
302− {0x74, 0x4a1d, 0x0000, SIS_RI_1024x576, 0x00, 0x00, 0x00, 0x00, 0x21, -1}, /* 1024x576x16 */
303− {0x75, 0x0a3d, 0x0000, SIS_RI_1280x720, 0x00, 0x00, 0x00, 0x00, 0x24, 5}, /* 1280x720x16 */
304− {0x76, 0x6a1f, 0x0000, SIS_RI_800x480, 0x00, 0x00, 0x07, 0x07, 0x1e, -1}, /* 800x480x32 */
305− {0x77, 0x4a1f, 0x0000, SIS_RI_1024x576, 0x00, 0x00, 0x00, 0x00, 0x21, -1}, /* 1024x576x32 */
306− {0x78, 0x0a3f, 0x0000, SIS_RI_1280x720, 0x00, 0x00, 0x00, 0x00, 0x24, 5}, /* 1280x720x32 */
307− {0x79, 0x0a3b, 0x0000, SIS_RI_1280x720, 0x00, 0x00, 0x00, 0x00, 0x24, 5}, /* 1280x720x8 */
308− {0x7a, 0x6a1d, 0x0000, SIS_RI_800x480, 0x00, 0x00, 0x07, 0x07, 0x1e, -1}, /* 800x480x16 */
309− {0x23, 0x0e3b, 0x0000, SIS_RI_1280x768, 0x00, 0x00, 0x00, 0x00, 0x27, 6}, /* 1280x768x8 */
310− {0x24, 0x0e7d, 0x0000, SIS_RI_1280x768, 0x00, 0x00, 0x00, 0x00, 0x27, 6}, /* 1280x768x16 */
311− {0x25, 0x0eff, 0x0000, SIS_RI_1280x768, 0x00, 0x00, 0x00, 0x00, 0x27, 6}, /* 1280x768x32 */
312− {0x39, 0x6a1b, 0x0000, SIS_RI_848x480, 0x00, 0x00, 0x00, 0x00, 0x28, -1}, /* 848x480 */
313− {0x3b, 0x6a3d, 0x0000, SIS_RI_848x480, 0x00, 0x00, 0x00, 0x00, 0x28,
314− -1},
315− {0x3e, 0x6a7f, 0x0000, SIS_RI_848x480, 0x00, 0x00, 0x00, 0x00, 0x28,
316− -1},
317− {0x3f, 0x6a1b, 0x0000, SIS_RI_856x480, 0x00, 0x00, 0x00, 0x00, 0x2a, -1}, /* 856x480 */
318− {0x42, 0x6a3d, 0x0000, SIS_RI_856x480, 0x00, 0x00, 0x00, 0x00, 0x2a,
319− -1},
320− {0x45, 0x6a7f, 0x0000, SIS_RI_856x480, 0x00, 0x00, 0x00, 0x00, 0x2a,
321− -1},
322− {0x4f, 0x9a1f, 0x0000, SIS_RI_320x200, 0x00, 0x00, 0x04, 0x04, 0x1a, 0}, /* 320x200x32 */
323− {0x53, 0x9a1f, 0x0000, SIS_RI_320x240, 0x00, 0x00, 0x04, 0x04, 0x1b, 2}, /* 320x240x32 */
324− {0x54, 0xba1f, 0x0000, SIS_RI_400x300, 0x00, 0x00, 0x07, 0x07, 0x1c, 3}, /* 400x300x32 */
325− {0x5f, 0x6a1b, 0x0000, SIS_RI_768x576, 0x00, 0x00, 0x06, 0x06, 0x2c, -1}, /* 768x576 */
326− {0x60, 0x6a1d, 0x0000, SIS_RI_768x576, 0x00, 0x00, 0x06, 0x06, 0x2c,
327− -1},
328− {0x61, 0x6a3f, 0x0000, SIS_RI_768x576, 0x00, 0x00, 0x06, 0x06, 0x2c,
329− -1},
330− {0x1d, 0x6a1b, 0x0000, SIS_RI_960x540, 0x00, 0x00, 0x00, 0x00, 0x2d, -1}, /* 960x540 */
331− {0x1e, 0x6a3d, 0x0000, SIS_RI_960x540, 0x00, 0x00, 0x00, 0x00, 0x2d,
332− -1},
333− {0x1f, 0x6a7f, 0x0000, SIS_RI_960x540, 0x00, 0x00, 0x00, 0x00, 0x2d,
334− -1},
335− {0x20, 0x6a1b, 0x0000, SIS_RI_960x600, 0x00, 0x00, 0x00, 0x00, 0x2e, -1}, /* 960x600 */
336− {0x21, 0x6a3d, 0x0000, SIS_RI_960x600, 0x00, 0x00, 0x00, 0x00, 0x2e,
337− -1},
338− {0x22, 0x6a7f, 0x0000, SIS_RI_960x600, 0x00, 0x00, 0x00, 0x00, 0x2e,
339− -1},
340− {0x29, 0x4e1b, 0x0000, SIS_RI_1152x864, 0x00, 0x00, 0x00, 0x00, 0x33, -1}, /* 1152x864 */
341− {0x2a, 0x4e3d, 0x0000, SIS_RI_1152x864, 0x00, 0x00, 0x00, 0x00, 0x33,
342− -1},
343− {0x2b, 0x4e7f, 0x0000, SIS_RI_1152x864, 0x00, 0x00, 0x00, 0x00, 0x33,
344− -1},
345− {0xff, 0x0000, 0x0000, 0, 0x00, 0x00, 0x00, 0x00, 0x00, -1}
346−};
347−
348−static const struct SiS_Ext2 SiSUSB_RefIndex[] = {
349− {0x085f, 0x0d, 0x03, 0x05, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x0 */
350− {0x0067, 0x0e, 0x04, 0x05, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x1 */
351− {0x0067, 0x0f, 0x08, 0x48, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x2 */
352− {0x0067, 0x10, 0x07, 0x8b, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x3 */
353− {0x0047, 0x11, 0x0a, 0x00, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x4 */
354− {0x0047, 0x12, 0x0d, 0x00, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x5 */
355− {0x0047, 0x13, 0x13, 0x00, 0x05, 0x30, 800, 600, 0x20, 0x00, 0x00}, /* 0x6 */
356− {0x0107, 0x14, 0x1c, 0x00, 0x05, 0x30, 800, 600, 0x20, 0x00, 0x00}, /* 0x7 */
357− {0xc85f, 0x05, 0x00, 0x04, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0x8 */
358− {0xc067, 0x06, 0x02, 0x04, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0x9 */
359− {0xc067, 0x07, 0x02, 0x47, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xa */
360− {0xc067, 0x08, 0x03, 0x8a, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xb */
361− {0xc047, 0x09, 0x05, 0x00, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xc */
362− {0xc047, 0x0a, 0x09, 0x00, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xd */
363− {0xc047, 0x0b, 0x0e, 0x00, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xe */
364− {0xc047, 0x0c, 0x15, 0x00, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xf */
365− {0x487f, 0x04, 0x00, 0x00, 0x00, 0x2f, 640, 400, 0x30, 0x55, 0x6e}, /* 0x10 */
366− {0xc06f, 0x3c, 0x01, 0x06, 0x13, 0x31, 720, 480, 0x30, 0x00, 0x00}, /* 0x11 */
367− {0x006f, 0x3d, 0x6f, 0x06, 0x14, 0x32, 720, 576, 0x30, 0x00, 0x00}, /* 0x12 (6f was 03) */
368− {0x0087, 0x15, 0x06, 0x00, 0x06, 0x38, 1024, 768, 0x30, 0x00, 0x00}, /* 0x13 */
369− {0xc877, 0x16, 0x0b, 0x06, 0x06, 0x38, 1024, 768, 0x20, 0x00, 0x00}, /* 0x14 */
370− {0xc067, 0x17, 0x0f, 0x49, 0x06, 0x38, 1024, 768, 0x20, 0x00, 0x00}, /* 0x15 */
371− {0x0067, 0x18, 0x11, 0x00, 0x06, 0x38, 1024, 768, 0x20, 0x00, 0x00}, /* 0x16 */
372− {0x0047, 0x19, 0x16, 0x8c, 0x06, 0x38, 1024, 768, 0x20, 0x00, 0x00}, /* 0x17 */
373− {0x0107, 0x1a, 0x1b, 0x00, 0x06, 0x38, 1024, 768, 0x10, 0x00, 0x00}, /* 0x18 */
374− {0x0107, 0x1b, 0x1f, 0x00, 0x06, 0x38, 1024, 768, 0x10, 0x00, 0x00}, /* 0x19 */
375− {0x407f, 0x00, 0x00, 0x00, 0x00, 0x41, 320, 200, 0x30, 0x56, 0x4e}, /* 0x1a */
376− {0xc07f, 0x01, 0x00, 0x04, 0x04, 0x50, 320, 240, 0x30, 0x00, 0x00}, /* 0x1b */
377− {0x007f, 0x02, 0x04, 0x05, 0x05, 0x51, 400, 300, 0x30, 0x00, 0x00}, /* 0x1c */
378− {0xc077, 0x03, 0x0b, 0x06, 0x06, 0x52, 512, 384, 0x30, 0x00, 0x00}, /* 0x1d */
379− {0x0077, 0x32, 0x40, 0x08, 0x18, 0x70, 800, 480, 0x30, 0x00, 0x00}, /* 0x1e */
380− {0x0047, 0x33, 0x07, 0x08, 0x18, 0x70, 800, 480, 0x30, 0x00, 0x00}, /* 0x1f */
381− {0x0047, 0x34, 0x0a, 0x08, 0x18, 0x70, 800, 480, 0x30, 0x00, 0x00}, /* 0x20 */
382− {0x0077, 0x35, 0x0b, 0x09, 0x19, 0x71, 1024, 576, 0x30, 0x00, 0x00}, /* 0x21 */
383− {0x0047, 0x36, 0x11, 0x09, 0x19, 0x71, 1024, 576, 0x30, 0x00, 0x00}, /* 0x22 */
384− {0x0047, 0x37, 0x16, 0x09, 0x19, 0x71, 1024, 576, 0x30, 0x00, 0x00}, /* 0x23 */
385− {0x1137, 0x38, 0x19, 0x0a, 0x0c, 0x75, 1280, 720, 0x30, 0x00, 0x00}, /* 0x24 */
386− {0x1107, 0x39, 0x1e, 0x0a, 0x0c, 0x75, 1280, 720, 0x30, 0x00, 0x00}, /* 0x25 */
387− {0x1307, 0x3a, 0x20, 0x0a, 0x0c, 0x75, 1280, 720, 0x30, 0x00, 0x00}, /* 0x26 */
388− {0x0077, 0x42, 0x5b, 0x08, 0x11, 0x23, 1280, 768, 0x30, 0x00, 0x00}, /* 0x27 */
389− {0x0087, 0x45, 0x57, 0x00, 0x16, 0x39, 848, 480, 0x30, 0x00, 0x00}, /* 0x28 38Hzi */
390− {0xc067, 0x46, 0x55, 0x0b, 0x16, 0x39, 848, 480, 0x30, 0x00, 0x00}, /* 0x29 848x480-60Hz */
391− {0x0087, 0x47, 0x57, 0x00, 0x17, 0x3f, 856, 480, 0x30, 0x00, 0x00}, /* 0x2a 856x480-38Hzi */
392− {0xc067, 0x48, 0x57, 0x00, 0x17, 0x3f, 856, 480, 0x30, 0x00, 0x00}, /* 0x2b 856x480-60Hz */
393− {0x006f, 0x4d, 0x71, 0x06, 0x15, 0x5f, 768, 576, 0x30, 0x00, 0x00}, /* 0x2c 768x576-56Hz */
394− {0x0067, 0x52, 0x6a, 0x00, 0x1c, 0x1d, 960, 540, 0x30, 0x00, 0x00}, /* 0x2d 960x540 60Hz */
395− {0x0077, 0x53, 0x6b, 0x0b, 0x1d, 0x20, 960, 600, 0x30, 0x00, 0x00}, /* 0x2e 960x600 60Hz */
396− {0x0087, 0x1c, 0x11, 0x00, 0x07, 0x3a, 1280, 1024, 0x30, 0x00, 0x00}, /* 0x2f */
397− {0x0137, 0x1d, 0x19, 0x07, 0x07, 0x3a, 1280, 1024, 0x00, 0x00, 0x00}, /* 0x30 */
398− {0x0107, 0x1e, 0x1e, 0x00, 0x07, 0x3a, 1280, 1024, 0x00, 0x00, 0x00}, /* 0x31 */
399− {0x0207, 0x1f, 0x20, 0x00, 0x07, 0x3a, 1280, 1024, 0x00, 0x00, 0x00}, /* 0x32 */
400− {0x0127, 0x54, 0x6d, 0x00, 0x1a, 0x29, 1152, 864, 0x30, 0x00, 0x00}, /* 0x33 1152x864-60Hz */
401− {0x0127, 0x44, 0x19, 0x00, 0x1a, 0x29, 1152, 864, 0x30, 0x00, 0x00}, /* 0x34 1152x864-75Hz */
402− {0x0127, 0x4a, 0x1e, 0x00, 0x1a, 0x29, 1152, 864, 0x30, 0x00, 0x00}, /* 0x35 1152x864-85Hz */
403− {0xffff, 0x00, 0x00, 0x00, 0x00, 0x00, 0, 0, 0, 0x00, 0x00}
404−};
405−
406−static const struct SiS_CRT1Table SiSUSB_CRT1Table[] = {
407− {{0x2d, 0x27, 0x28, 0x90, 0x2c, 0x80, 0xbf, 0x1f,
408− 0x9c, 0x8e, 0x8f, 0x96, 0xb9, 0x30, 0x00, 0x00,
409− 0x00}}, /* 0x0 */
410− {{0x2d, 0x27, 0x28, 0x90, 0x2c, 0x80, 0x0b, 0x3e,
411− 0xe9, 0x8b, 0xdf, 0xe7, 0x04, 0x00, 0x00, 0x00,
412− 0x00}}, /* 0x1 */
413− {{0x3d, 0x31, 0x31, 0x81, 0x37, 0x1f, 0x72, 0xf0,
414− 0x58, 0x8c, 0x57, 0x57, 0x73, 0x20, 0x00, 0x05,
415− 0x01}}, /* 0x2 */
416− {{0x4f, 0x3f, 0x3f, 0x93, 0x45, 0x0d, 0x24, 0xf5,
417− 0x02, 0x88, 0xff, 0xff, 0x25, 0x10, 0x00, 0x01,
418− 0x01}}, /* 0x3 */
419− {{0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f,
420− 0x9c, 0x8e, 0x8f, 0x96, 0xb9, 0x30, 0x00, 0x05,
421− 0x00}}, /* 0x4 */
422− {{0x5f, 0x4f, 0x4f, 0x83, 0x55, 0x81, 0x0b, 0x3e,
423− 0xe9, 0x8b, 0xdf, 0xe8, 0x0c, 0x00, 0x00, 0x05,
424− 0x00}}, /* 0x5 */
425− {{0x63, 0x4f, 0x4f, 0x87, 0x56, 0x9b, 0x06, 0x3e,
426− 0xe8, 0x8a, 0xdf, 0xe7, 0x07, 0x00, 0x00, 0x01,
427− 0x00}}, /* 0x6 */
428− {{0x64, 0x4f, 0x4f, 0x88, 0x55, 0x9d, 0xf2, 0x1f,
429− 0xe0, 0x83, 0xdf, 0xdf, 0xf3, 0x10, 0x00, 0x01,
430− 0x00}}, /* 0x7 */
431− {{0x63, 0x4f, 0x4f, 0x87, 0x5a, 0x81, 0xfb, 0x1f,
432− 0xe0, 0x83, 0xdf, 0xdf, 0xfc, 0x10, 0x00, 0x05,
433− 0x00}}, /* 0x8 */
434− {{0x65, 0x4f, 0x4f, 0x89, 0x58, 0x80, 0xfb, 0x1f,
435− 0xe0, 0x83, 0xdf, 0xdf, 0xfc, 0x10, 0x00, 0x05,
436− 0x61}}, /* 0x9 */
437− {{0x65, 0x4f, 0x4f, 0x89, 0x58, 0x80, 0x01, 0x3e,
438− 0xe0, 0x83, 0xdf, 0xdf, 0x02, 0x00, 0x00, 0x05,
439− 0x61}}, /* 0xa */
440− {{0x67, 0x4f, 0x4f, 0x8b, 0x58, 0x81, 0x0d, 0x3e,
441− 0xe0, 0x83, 0xdf, 0xdf, 0x0e, 0x00, 0x00, 0x05,
442− 0x61}}, /* 0xb */
443− {{0x65, 0x4f, 0x4f, 0x89, 0x57, 0x9f, 0xfb, 0x1f,
444− 0xe6, 0x8a, 0xdf, 0xdf, 0xfc, 0x10, 0x00, 0x01,
445− 0x00}}, /* 0xc */
446− {{0x7b, 0x63, 0x63, 0x9f, 0x6a, 0x93, 0x6f, 0xf0,
447− 0x58, 0x8a, 0x57, 0x57, 0x70, 0x20, 0x00, 0x05,
448− 0x01}}, /* 0xd */
449− {{0x7f, 0x63, 0x63, 0x83, 0x6c, 0x1c, 0x72, 0xf0,
450− 0x58, 0x8c, 0x57, 0x57, 0x73, 0x20, 0x00, 0x06,
451− 0x01}}, /* 0xe */
452− {{0x7d, 0x63, 0x63, 0x81, 0x6e, 0x1d, 0x98, 0xf0,
453− 0x7c, 0x82, 0x57, 0x57, 0x99, 0x00, 0x00, 0x06,
454− 0x01}}, /* 0xf */
455− {{0x7f, 0x63, 0x63, 0x83, 0x69, 0x13, 0x6f, 0xf0,
456− 0x58, 0x8b, 0x57, 0x57, 0x70, 0x20, 0x00, 0x06,
457− 0x01}}, /* 0x10 */
458− {{0x7e, 0x63, 0x63, 0x82, 0x6b, 0x13, 0x75, 0xf0,
459− 0x58, 0x8b, 0x57, 0x57, 0x76, 0x20, 0x00, 0x06,
460− 0x01}}, /* 0x11 */
461− {{0x81, 0x63, 0x63, 0x85, 0x6d, 0x18, 0x7a, 0xf0,
462− 0x58, 0x8b, 0x57, 0x57, 0x7b, 0x20, 0x00, 0x06,
463− 0x61}}, /* 0x12 */
464− {{0x83, 0x63, 0x63, 0x87, 0x6e, 0x19, 0x81, 0xf0,
465− 0x58, 0x8b, 0x57, 0x57, 0x82, 0x20, 0x00, 0x06,
466− 0x61}}, /* 0x13 */
467− {{0x85, 0x63, 0x63, 0x89, 0x6f, 0x1a, 0x91, 0xf0,
468− 0x58, 0x8b, 0x57, 0x57, 0x92, 0x20, 0x00, 0x06,
469− 0x61}}, /* 0x14 */
470− {{0x99, 0x7f, 0x7f, 0x9d, 0x84, 0x1a, 0x96, 0x1f,
471− 0x7f, 0x83, 0x7f, 0x7f, 0x97, 0x10, 0x00, 0x02,
472− 0x00}}, /* 0x15 */
473− {{0xa3, 0x7f, 0x7f, 0x87, 0x86, 0x97, 0x24, 0xf5,
474− 0x02, 0x88, 0xff, 0xff, 0x25, 0x10, 0x00, 0x02,
475− 0x01}}, /* 0x16 */
476− {{0xa1, 0x7f, 0x7f, 0x85, 0x86, 0x97, 0x24, 0xf5,
477− 0x02, 0x88, 0xff, 0xff, 0x25, 0x10, 0x00, 0x02,
478− 0x01}}, /* 0x17 */
479− {{0x9f, 0x7f, 0x7f, 0x83, 0x85, 0x91, 0x1e, 0xf5,
480− 0x00, 0x83, 0xff, 0xff, 0x1f, 0x10, 0x00, 0x02,
481− 0x01}}, /* 0x18 */
482− {{0xa7, 0x7f, 0x7f, 0x8b, 0x89, 0x95, 0x26, 0xf5,
483− 0x00, 0x83, 0xff, 0xff, 0x27, 0x10, 0x00, 0x02,
484− 0x01}}, /* 0x19 */
485− {{0xa9, 0x7f, 0x7f, 0x8d, 0x8c, 0x9a, 0x2c, 0xf5,
486− 0x00, 0x83, 0xff, 0xff, 0x2d, 0x14, 0x00, 0x02,
487− 0x62}}, /* 0x1a */
488− {{0xab, 0x7f, 0x7f, 0x8f, 0x8d, 0x9b, 0x35, 0xf5,
489− 0x00, 0x83, 0xff, 0xff, 0x36, 0x14, 0x00, 0x02,
490− 0x62}}, /* 0x1b */
491− {{0xcf, 0x9f, 0x9f, 0x93, 0xb2, 0x01, 0x14, 0xba,
492− 0x00, 0x83, 0xff, 0xff, 0x15, 0x00, 0x00, 0x03,
493− 0x00}}, /* 0x1c */
494− {{0xce, 0x9f, 0x9f, 0x92, 0xa9, 0x17, 0x28, 0x5a,
495− 0x00, 0x83, 0xff, 0xff, 0x29, 0x09, 0x00, 0x07,
496− 0x01}}, /* 0x1d */
497− {{0xce, 0x9f, 0x9f, 0x92, 0xa5, 0x17, 0x28, 0x5a,
498− 0x00, 0x83, 0xff, 0xff, 0x29, 0x09, 0x00, 0x07,
499− 0x01}}, /* 0x1e */
500− {{0xd3, 0x9f, 0x9f, 0x97, 0xab, 0x1f, 0x2e, 0x5a,
501− 0x00, 0x83, 0xff, 0xff, 0x2f, 0x09, 0x00, 0x07,
502− 0x01}}, /* 0x1f */
503− {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
504− 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
505− 0x00}}, /* 0x20 */
506− {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
507− 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
508− 0x00}}, /* 0x21 */
509− {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
510− 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
511− 0x00}}, /* 0x22 */
512− {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
513− 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
514− 0x00}}, /* 0x23 */
515− {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
516− 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
517− 0x00}}, /* 0x24 */
518− {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
519− 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
520− 0x00}}, /* 0x25 */
521− {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
522− 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
523− 0x00}}, /* 0x26 */
524− {{0x40, 0xef, 0xef, 0x84, 0x03, 0x1d, 0xda, 0x1f,
525− 0xa0, 0x83, 0x9f, 0x9f, 0xdb, 0x1f, 0x41, 0x01,
526− 0x00}}, /* 0x27 */
527− {{0x43, 0xef, 0xef, 0x87, 0x06, 0x00, 0xd4, 0x1f,
528− 0xa0, 0x83, 0x9f, 0x9f, 0xd5, 0x1f, 0x41, 0x05,
529− 0x63}}, /* 0x28 */
530− {{0x45, 0xef, 0xef, 0x89, 0x07, 0x01, 0xd9, 0x1f,
531− 0xa0, 0x83, 0x9f, 0x9f, 0xda, 0x1f, 0x41, 0x05,
532− 0x63}}, /* 0x29 */
533− {{0x40, 0xef, 0xef, 0x84, 0x03, 0x1d, 0xda, 0x1f,
534− 0xa0, 0x83, 0x9f, 0x9f, 0xdb, 0x1f, 0x41, 0x01,
535− 0x00}}, /* 0x2a */
536− {{0x40, 0xef, 0xef, 0x84, 0x03, 0x1d, 0xda, 0x1f,
537− 0xa0, 0x83, 0x9f, 0x9f, 0xdb, 0x1f, 0x41, 0x01,
538− 0x00}}, /* 0x2b */
539− {{0x40, 0xef, 0xef, 0x84, 0x03, 0x1d, 0xda, 0x1f,
540− 0xa0, 0x83, 0x9f, 0x9f, 0xdb, 0x1f, 0x41, 0x01,
541− 0x00}}, /* 0x2c */
542− {{0x59, 0xff, 0xff, 0x9d, 0x17, 0x13, 0x33, 0xba,
543− 0x00, 0x83, 0xff, 0xff, 0x34, 0x0f, 0x41, 0x05,
544− 0x44}}, /* 0x2d */
545− {{0x5b, 0xff, 0xff, 0x9f, 0x18, 0x14, 0x38, 0xba,
546− 0x00, 0x83, 0xff, 0xff, 0x39, 0x0f, 0x41, 0x05,
547− 0x44}}, /* 0x2e */
548− {{0x5b, 0xff, 0xff, 0x9f, 0x18, 0x14, 0x3d, 0xba,
549− 0x00, 0x83, 0xff, 0xff, 0x3e, 0x0f, 0x41, 0x05,
550− 0x44}}, /* 0x2f */
551− {{0x5d, 0xff, 0xff, 0x81, 0x19, 0x95, 0x41, 0xba,
552− 0x00, 0x84, 0xff, 0xff, 0x42, 0x0f, 0x41, 0x05,
553− 0x44}}, /* 0x30 */
554− {{0x55, 0xff, 0xff, 0x99, 0x0d, 0x0c, 0x3e, 0xba,
555− 0x00, 0x84, 0xff, 0xff, 0x3f, 0x0f, 0x41, 0x05,
556− 0x00}}, /* 0x31 */
557− {{0x7f, 0x63, 0x63, 0x83, 0x6c, 0x1c, 0x72, 0xba,
558− 0x27, 0x8b, 0xdf, 0xdf, 0x73, 0x00, 0x00, 0x06,
559− 0x01}}, /* 0x32 */
560− {{0x7f, 0x63, 0x63, 0x83, 0x69, 0x13, 0x6f, 0xba,
561− 0x26, 0x89, 0xdf, 0xdf, 0x6f, 0x00, 0x00, 0x06,
562− 0x01}}, /* 0x33 */
563− {{0x7f, 0x63, 0x63, 0x82, 0x6b, 0x13, 0x75, 0xba,
564− 0x29, 0x8c, 0xdf, 0xdf, 0x75, 0x00, 0x00, 0x06,
565− 0x01}}, /* 0x34 */
566− {{0xa3, 0x7f, 0x7f, 0x87, 0x86, 0x97, 0x24, 0xf1,
567− 0xaf, 0x85, 0x3f, 0x3f, 0x25, 0x30, 0x00, 0x02,
568− 0x01}}, /* 0x35 */
569− {{0x9f, 0x7f, 0x7f, 0x83, 0x85, 0x91, 0x1e, 0xf1,
570− 0xad, 0x81, 0x3f, 0x3f, 0x1f, 0x30, 0x00, 0x02,
571− 0x01}}, /* 0x36 */
572− {{0xa7, 0x7f, 0x7f, 0x88, 0x89, 0x95, 0x26, 0xf1,
573− 0xb1, 0x85, 0x3f, 0x3f, 0x27, 0x30, 0x00, 0x02,
574− 0x01}}, /* 0x37 */
575− {{0xce, 0x9f, 0x9f, 0x92, 0xa9, 0x17, 0x28, 0xc4,
576− 0x7a, 0x8e, 0xcf, 0xcf, 0x29, 0x21, 0x00, 0x07,
577− 0x01}}, /* 0x38 */
578− {{0xce, 0x9f, 0x9f, 0x92, 0xa5, 0x17, 0x28, 0xd4,
579− 0x7a, 0x8e, 0xcf, 0xcf, 0x29, 0x21, 0x00, 0x07,
580− 0x01}}, /* 0x39 */
581− {{0xd3, 0x9f, 0x9f, 0x97, 0xab, 0x1f, 0x2e, 0xd4,
582− 0x7d, 0x81, 0xcf, 0xcf, 0x2f, 0x21, 0x00, 0x07,
583− 0x01}}, /* 0x3a */
584− {{0xdc, 0x9f, 0x9f, 0x80, 0xaf, 0x9d, 0xe6, 0xff,
585− 0xc0, 0x83, 0xbf, 0xbf, 0xe7, 0x10, 0x00, 0x07,
586− 0x01}}, /* 0x3b */
587− {{0x6b, 0x59, 0x59, 0x8f, 0x5e, 0x8c, 0x0b, 0x3e,
588− 0xe9, 0x8b, 0xdf, 0xe7, 0x04, 0x00, 0x00, 0x05,
589− 0x00}}, /* 0x3c */
590− {{0x6d, 0x59, 0x59, 0x91, 0x60, 0x89, 0x53, 0xf0,
591− 0x41, 0x84, 0x3f, 0x3f, 0x54, 0x00, 0x00, 0x05,
592− 0x41}}, /* 0x3d */
593− {{0x86, 0x6a, 0x6a, 0x8a, 0x74, 0x06, 0x8c, 0x15,
594− 0x4f, 0x83, 0xef, 0xef, 0x8d, 0x30, 0x00, 0x02,
595− 0x00}}, /* 0x3e */
596− {{0x81, 0x6a, 0x6a, 0x85, 0x70, 0x00, 0x0f, 0x3e,
597− 0xeb, 0x8e, 0xdf, 0xdf, 0x10, 0x00, 0x00, 0x02,
598− 0x00}}, /* 0x3f */
599− {{0xa3, 0x7f, 0x7f, 0x87, 0x86, 0x97, 0x1e, 0xf1,
600− 0xae, 0x85, 0x57, 0x57, 0x1f, 0x30, 0x00, 0x02,
601− 0x01}}, /* 0x40 */
602− {{0xa3, 0x7f, 0x7f, 0x87, 0x86, 0x97, 0x24, 0xf5,
603− 0x02, 0x88, 0xff, 0xff, 0x25, 0x10, 0x00, 0x02,
604− 0x01}}, /* 0x41 */
605− {{0xce, 0x9f, 0x9f, 0x92, 0xa9, 0x17, 0x20, 0xf5,
606− 0x03, 0x88, 0xff, 0xff, 0x21, 0x10, 0x00, 0x07,
607− 0x01}}, /* 0x42 */
608− {{0xe6, 0xae, 0xae, 0x8a, 0xbd, 0x90, 0x3d, 0x10,
609− 0x1a, 0x8d, 0x19, 0x19, 0x3e, 0x2f, 0x00, 0x03,
610− 0x00}}, /* 0x43 */
611− {{0xc3, 0x8f, 0x8f, 0x87, 0x9b, 0x0b, 0x82, 0xef,
612− 0x60, 0x83, 0x5f, 0x5f, 0x83, 0x10, 0x00, 0x07,
613− 0x01}}, /* 0x44 */
614− {{0x86, 0x69, 0x69, 0x8A, 0x74, 0x06, 0x8C, 0x15,
615− 0x4F, 0x83, 0xEF, 0xEF, 0x8D, 0x30, 0x00, 0x02,
616− 0x00}}, /* 0x45 */
617− {{0x83, 0x69, 0x69, 0x87, 0x6f, 0x1d, 0x03, 0x3E,
618− 0xE5, 0x8d, 0xDF, 0xe4, 0x04, 0x00, 0x00, 0x06,
619− 0x00}}, /* 0x46 */
620− {{0x86, 0x6A, 0x6A, 0x8A, 0x74, 0x06, 0x8C, 0x15,
621− 0x4F, 0x83, 0xEF, 0xEF, 0x8D, 0x30, 0x00, 0x02,
622− 0x00}}, /* 0x47 */
623− {{0x81, 0x6A, 0x6A, 0x85, 0x70, 0x00, 0x0F, 0x3E,
624− 0xEB, 0x8E, 0xDF, 0xDF, 0x10, 0x00, 0x00, 0x02,
625− 0x00}}, /* 0x48 */
626− {{0xdd, 0xa9, 0xa9, 0x81, 0xb4, 0x97, 0x26, 0xfd,
627− 0x01, 0x8d, 0xff, 0x00, 0x27, 0x10, 0x00, 0x03,
628− 0x01}}, /* 0x49 */
629− {{0xd9, 0x8f, 0x8f, 0x9d, 0xba, 0x0a, 0x8a, 0xff,
630− 0x60, 0x8b, 0x5f, 0x5f, 0x8b, 0x10, 0x00, 0x03,
631− 0x01}}, /* 0x4a */
632− {{0xea, 0xae, 0xae, 0x8e, 0xba, 0x82, 0x40, 0x10,
633− 0x1b, 0x87, 0x19, 0x1a, 0x41, 0x0f, 0x00, 0x03,
634− 0x00}}, /* 0x4b */
635− {{0xd3, 0x9f, 0x9f, 0x97, 0xab, 0x1f, 0xf1, 0xff,
636− 0xc0, 0x83, 0xbf, 0xbf, 0xf2, 0x10, 0x00, 0x07,
637− 0x01}}, /* 0x4c */
638− {{0x75, 0x5f, 0x5f, 0x99, 0x66, 0x90, 0x53, 0xf0,
639− 0x41, 0x84, 0x3f, 0x3f, 0x54, 0x00, 0x00, 0x05,
640− 0x41}},
641− {{0x2d, 0x27, 0x28, 0x90, 0x2c, 0x80, 0x0b, 0x3e,
642− 0xe9, 0x8b, 0xdf, 0xe7, 0x04, 0x00, 0x00, 0x00,
643− 0x00}}, /* 0x4e */
644− {{0xcd, 0x9f, 0x9f, 0x91, 0xab, 0x1c, 0x3a, 0xff,
645− 0x20, 0x83, 0x1f, 0x1f, 0x3b, 0x10, 0x00, 0x07,
646− 0x21}}, /* 0x4f */
647− {{0x15, 0xd1, 0xd1, 0x99, 0xe2, 0x19, 0x3d, 0x10,
648− 0x1a, 0x8d, 0x19, 0x19, 0x3e, 0x2f, 0x01, 0x0c,
649− 0x20}}, /* 0x50 */
650− {{0x0e, 0xef, 0xef, 0x92, 0xfe, 0x03, 0x30, 0xf0,
651− 0x1e, 0x83, 0x1b, 0x1c, 0x31, 0x00, 0x01, 0x00,
652− 0x61}}, /* 0x51 */
653− {{0x85, 0x77, 0x77, 0x89, 0x7d, 0x01, 0x31, 0xf0,
654− 0x1e, 0x84, 0x1b, 0x1c, 0x32, 0x00, 0x00, 0x02,
655− 0x41}}, /* 0x52 */
656− {{0x87, 0x77, 0x77, 0x8b, 0x81, 0x0b, 0x68, 0xf0,
657− 0x5a, 0x80, 0x57, 0x57, 0x69, 0x00, 0x00, 0x02,
658− 0x01}}, /* 0x53 */
659− {{0xcd, 0x8f, 0x8f, 0x91, 0x9b, 0x1b, 0x7a, 0xff,
660− 0x64, 0x8c, 0x5f, 0x62, 0x7b, 0x10, 0x00, 0x07,
661− 0x41}} /* 0x54 */
662−};
663−
664−static const struct SiS_VCLKData SiSUSB_VCLKData[] = {
665− {0x1b, 0xe1, 25}, /* 0x00 */
666− {0x4e, 0xe4, 28}, /* 0x01 */
667− {0x57, 0xe4, 31}, /* 0x02 */
668− {0xc3, 0xc8, 36}, /* 0x03 */
669− {0x42, 0xe2, 40}, /* 0x04 */
670− {0xfe, 0xcd, 43}, /* 0x05 */
671− {0x5d, 0xc4, 44}, /* 0x06 */
672− {0x52, 0xe2, 49}, /* 0x07 */
673− {0x53, 0xe2, 50}, /* 0x08 */
674− {0x74, 0x67, 52}, /* 0x09 */
675− {0x6d, 0x66, 56}, /* 0x0a */
676− {0x5a, 0x64, 65}, /* 0x0b */
677− {0x46, 0x44, 67}, /* 0x0c */
678− {0xb1, 0x46, 68}, /* 0x0d */
679− {0xd3, 0x4a, 72}, /* 0x0e */
680− {0x29, 0x61, 75}, /* 0x0f */
681− {0x6e, 0x46, 76}, /* 0x10 */
682− {0x2b, 0x61, 78}, /* 0x11 */
683− {0x31, 0x42, 79}, /* 0x12 */
684− {0xab, 0x44, 83}, /* 0x13 */
685− {0x46, 0x25, 84}, /* 0x14 */
686− {0x78, 0x29, 86}, /* 0x15 */
687− {0x62, 0x44, 94}, /* 0x16 */
688− {0x2b, 0x41, 104}, /* 0x17 */
689− {0x3a, 0x23, 105}, /* 0x18 */
690− {0x70, 0x44, 108}, /* 0x19 */
691− {0x3c, 0x23, 109}, /* 0x1a */
692− {0x5e, 0x43, 113}, /* 0x1b */
693− {0xbc, 0x44, 116}, /* 0x1c */
694− {0xe0, 0x46, 132}, /* 0x1d */
695− {0x54, 0x42, 135}, /* 0x1e */
696− {0xea, 0x2a, 139}, /* 0x1f */
697− {0x41, 0x22, 157}, /* 0x20 */
698− {0x70, 0x24, 162}, /* 0x21 */
699− {0x30, 0x21, 175}, /* 0x22 */
700− {0x4e, 0x22, 189}, /* 0x23 */
701− {0xde, 0x26, 194}, /* 0x24 */
702− {0x62, 0x06, 202}, /* 0x25 */
703− {0x3f, 0x03, 229}, /* 0x26 */
704− {0xb8, 0x06, 234}, /* 0x27 */
705− {0x34, 0x02, 253}, /* 0x28 */
706− {0x58, 0x04, 255}, /* 0x29 */
707− {0x24, 0x01, 265}, /* 0x2a */
708− {0x9b, 0x02, 267}, /* 0x2b */
709− {0x70, 0x05, 270}, /* 0x2c */
710− {0x25, 0x01, 272}, /* 0x2d */
711− {0x9c, 0x02, 277}, /* 0x2e */
712− {0x27, 0x01, 286}, /* 0x2f */
713− {0x3c, 0x02, 291}, /* 0x30 */
714− {0xef, 0x0a, 292}, /* 0x31 */
715− {0xf6, 0x0a, 310}, /* 0x32 */
716− {0x95, 0x01, 315}, /* 0x33 */
717− {0xf0, 0x09, 324}, /* 0x34 */
718− {0xfe, 0x0a, 331}, /* 0x35 */
719− {0xf3, 0x09, 332}, /* 0x36 */
720− {0xea, 0x08, 340}, /* 0x37 */
721− {0xe8, 0x07, 376}, /* 0x38 */
722− {0xde, 0x06, 389}, /* 0x39 */
723− {0x52, 0x2a, 54}, /* 0x3a 301 TV */
724− {0x52, 0x6a, 27}, /* 0x3b 301 TV */
725− {0x62, 0x24, 70}, /* 0x3c 301 TV */
726− {0x62, 0x64, 70}, /* 0x3d 301 TV */
727− {0xa8, 0x4c, 30}, /* 0x3e 301 TV */
728− {0x20, 0x26, 33}, /* 0x3f 301 TV */
729− {0x31, 0xc2, 39}, /* 0x40 */
730− {0x60, 0x36, 30}, /* 0x41 Chrontel */
731− {0x40, 0x4a, 28}, /* 0x42 Chrontel */
732− {0x9f, 0x46, 44}, /* 0x43 Chrontel */
733− {0x97, 0x2c, 26}, /* 0x44 */
734− {0x44, 0xe4, 25}, /* 0x45 Chrontel */
735− {0x7e, 0x32, 47}, /* 0x46 Chrontel */
736− {0x8a, 0x24, 31}, /* 0x47 Chrontel */
737− {0x97, 0x2c, 26}, /* 0x48 Chrontel */
738− {0xce, 0x3c, 39}, /* 0x49 */
739− {0x52, 0x4a, 36}, /* 0x4a Chrontel */
740− {0x34, 0x61, 95}, /* 0x4b */
741− {0x78, 0x27, 108}, /* 0x4c - was 102 */
742− {0x66, 0x43, 123}, /* 0x4d Modes 0x26-0x28 (1400x1050) */
743− {0x41, 0x4e, 21}, /* 0x4e */
744− {0xa1, 0x4a, 29}, /* 0x4f Chrontel */
745− {0x19, 0x42, 42}, /* 0x50 */
746− {0x54, 0x46, 58}, /* 0x51 Chrontel */
747− {0x25, 0x42, 61}, /* 0x52 */
748− {0x44, 0x44, 66}, /* 0x53 Chrontel */
749− {0x3a, 0x62, 70}, /* 0x54 Chrontel */
750− {0x62, 0xc6, 34}, /* 0x55 848x480-60 */
751− {0x6a, 0xc6, 37}, /* 0x56 848x480-75 - TEMP */
752− {0xbf, 0xc8, 35}, /* 0x57 856x480-38i,60 */
753− {0x30, 0x23, 88}, /* 0x58 1360x768-62 (is 60Hz!) */
754− {0x52, 0x07, 149}, /* 0x59 1280x960-85 */
755− {0x56, 0x07, 156}, /* 0x5a 1400x1050-75 */
756− {0x70, 0x29, 81}, /* 0x5b 1280x768 LCD */
757− {0x45, 0x25, 83}, /* 0x5c 1280x800 */
758− {0x70, 0x0a, 147}, /* 0x5d 1680x1050 */
759− {0x70, 0x24, 162}, /* 0x5e 1600x1200 */
760− {0x5a, 0x64, 65}, /* 0x5f 1280x720 - temp */
761− {0x63, 0x46, 68}, /* 0x60 1280x768_2 */
762− {0x31, 0x42, 79}, /* 0x61 1280x768_3 - temp */
763− {0, 0, 0}, /* 0x62 - custom (will be filled out at run-time) */
764− {0x5a, 0x64, 65}, /* 0x63 1280x720 (LCD LVDS) */
765− {0x70, 0x28, 90}, /* 0x64 1152x864@60 */
766− {0x41, 0xc4, 32}, /* 0x65 848x480@60 */
767− {0x5c, 0xc6, 32}, /* 0x66 856x480@60 */
768− {0x76, 0xe7, 27}, /* 0x67 720x480@60 */
769− {0x5f, 0xc6, 33}, /* 0x68 720/768x576@60 */
770− {0x52, 0x27, 75}, /* 0x69 1920x1080i 60Hz interlaced */
771− {0x7c, 0x6b, 38}, /* 0x6a 960x540@60 */
772− {0xe3, 0x56, 41}, /* 0x6b 960x600@60 */
773− {0x45, 0x25, 83}, /* 0x6c 1280x800 */
774− {0x70, 0x28, 90}, /* 0x6d 1152x864@60 */
775− {0x15, 0xe1, 20}, /* 0x6e 640x400@60 (fake, not actually used) */
776− {0x5f, 0xc6, 33}, /* 0x6f 720x576@60 */
777− {0x37, 0x5a, 10}, /* 0x70 320x200@60 (fake, not actually used) */
778− {0x2b, 0xc2, 35} /* 0x71 768@576@60 */
779−};
780−
781150 int SiSUSBSetMode(struct SiS_Private *SiS_Pr, unsigned short ModeNo);
782151 int SiSUSBSetVESAMode(struct SiS_Private *SiS_Pr, unsigned short VModeNo);
783152
drivers/usb/misc/sisusbvga/sisusb_tables.h+688−0
@@ -0,0 +1,688 @@
1+/* SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) */
2+/* $XFree86$ */
3+/* $XdotOrg$ */
4+/*
5+ * Data tables for init.c
6+ *
7+ * Copyright (C) 2001-2005 by Thomas Winischhofer, Vienna, Austria
8+ *
9+ * If distributed as part of the Linux kernel, the following license terms
10+ * apply:
11+ *
12+ * * This program is free software; you can redistribute it and/or modify
13+ * * it under the terms of the GNU General Public License as published by
14+ * * the Free Software Foundation; either version 2 of the named License,
15+ * * or any later version.
16+ * *
17+ * * This program is distributed in the hope that it will be useful,
18+ * * but WITHOUT ANY WARRANTY; without even the implied warranty of
19+ * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20+ * * GNU General Public License for more details.
21+ * *
22+ * * You should have received a copy of the GNU General Public License
23+ * * along with this program; if not, write to the Free Software
24+ * * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
25+ *
26+ * Otherwise, the following license terms apply:
27+ *
28+ * * Redistribution and use in source and binary forms, with or without
29+ * * modification, are permitted provided that the following conditions
30+ * * are met:
31+ * * 1) Redistributions of source code must retain the above copyright
32+ * * notice, this list of conditions and the following disclaimer.
33+ * * 2) Redistributions in binary form must reproduce the above copyright
34+ * * notice, this list of conditions and the following disclaimer in the
35+ * * documentation and/or other materials provided with the distribution.
36+ * * 3) The name of the author may not be used to endorse or promote products
37+ * * derived from this software without specific prior written permission.
38+ * *
39+ * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
40+ * * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
41+ * * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
42+ * * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
43+ * * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
44+ * * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
45+ * * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
46+ * * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
47+ * * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
48+ * * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
49+ *
50+ * Author: Thomas Winischhofer <thomas@winischhofer.net>
51+ *
52+ */
53+
54+#ifndef _SISUSB_TABLES_H_
55+#define _SISUSB_TABLES_H_
56+
57+static const unsigned char SiS_MDA_DAC[] = {
58+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
59+ 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
60+ 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
61+ 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
62+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
63+ 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
64+ 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
65+ 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F
66+};
67+
68+static const unsigned char SiS_CGA_DAC[] = {
69+ 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
70+ 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
71+ 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
72+ 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
73+ 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
74+ 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
75+ 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
76+ 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F
77+};
78+
79+static const unsigned char SiS_EGA_DAC[] = {
80+ 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x05, 0x15,
81+ 0x20, 0x30, 0x24, 0x34, 0x21, 0x31, 0x25, 0x35,
82+ 0x08, 0x18, 0x0C, 0x1C, 0x09, 0x19, 0x0D, 0x1D,
83+ 0x28, 0x38, 0x2C, 0x3C, 0x29, 0x39, 0x2D, 0x3D,
84+ 0x02, 0x12, 0x06, 0x16, 0x03, 0x13, 0x07, 0x17,
85+ 0x22, 0x32, 0x26, 0x36, 0x23, 0x33, 0x27, 0x37,
86+ 0x0A, 0x1A, 0x0E, 0x1E, 0x0B, 0x1B, 0x0F, 0x1F,
87+ 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F
88+};
89+
90+static const unsigned char SiS_VGA_DAC[] = {
91+ 0x00, 0x10, 0x04, 0x14, 0x01, 0x11, 0x09, 0x15,
92+ 0x2A, 0x3A, 0x2E, 0x3E, 0x2B, 0x3B, 0x2F, 0x3F,
93+ 0x00, 0x05, 0x08, 0x0B, 0x0E, 0x11, 0x14, 0x18,
94+ 0x1C, 0x20, 0x24, 0x28, 0x2D, 0x32, 0x38, 0x3F,
95+ 0x00, 0x10, 0x1F, 0x2F, 0x3F, 0x1F, 0x27, 0x2F,
96+ 0x37, 0x3F, 0x2D, 0x31, 0x36, 0x3A, 0x3F, 0x00,
97+ 0x07, 0x0E, 0x15, 0x1C, 0x0E, 0x11, 0x15, 0x18,
98+ 0x1C, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x00, 0x04,
99+ 0x08, 0x0C, 0x10, 0x08, 0x0A, 0x0C, 0x0E, 0x10,
100+ 0x0B, 0x0C, 0x0D, 0x0F, 0x10
101+};
102+
103+static const struct SiS_St SiSUSB_SModeIDTable[] = {
104+ {0x03, 0x0010, 0x18, 0x02, 0x02, 0x00, 0x01, 0x03, 0x40},
105+ {0xff, 0x0000, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
106+};
107+
108+static const struct SiS_ModeResInfo SiSUSB_ModeResInfo[] = {
109+ {320, 200, 8, 8}, /* 0x00 */
110+ {320, 240, 8, 8}, /* 0x01 */
111+ {320, 400, 8, 8}, /* 0x02 */
112+ {400, 300, 8, 8}, /* 0x03 */
113+ {512, 384, 8, 8}, /* 0x04 */
114+ {640, 400, 8, 16}, /* 0x05 */
115+ {640, 480, 8, 16}, /* 0x06 */
116+ {800, 600, 8, 16}, /* 0x07 */
117+ {1024, 768, 8, 16}, /* 0x08 */
118+ {1280, 1024, 8, 16}, /* 0x09 */
119+ {1600, 1200, 8, 16}, /* 0x0a */
120+ {1920, 1440, 8, 16}, /* 0x0b */
121+ {2048, 1536, 8, 16}, /* 0x0c */
122+ {720, 480, 8, 16}, /* 0x0d */
123+ {720, 576, 8, 16}, /* 0x0e */
124+ {1280, 960, 8, 16}, /* 0x0f */
125+ {800, 480, 8, 16}, /* 0x10 */
126+ {1024, 576, 8, 16}, /* 0x11 */
127+ {1280, 720, 8, 16}, /* 0x12 */
128+ {856, 480, 8, 16}, /* 0x13 */
129+ {1280, 768, 8, 16}, /* 0x14 */
130+ {1400, 1050, 8, 16}, /* 0x15 */
131+ {1152, 864, 8, 16}, /* 0x16 */
132+ {848, 480, 8, 16}, /* 0x17 */
133+ {1360, 768, 8, 16}, /* 0x18 */
134+ {1024, 600, 8, 16}, /* 0x19 */
135+ {1152, 768, 8, 16}, /* 0x1a */
136+ {768, 576, 8, 16}, /* 0x1b */
137+ {1360, 1024, 8, 16}, /* 0x1c */
138+ {1680, 1050, 8, 16}, /* 0x1d */
139+ {1280, 800, 8, 16}, /* 0x1e */
140+ {1920, 1080, 8, 16}, /* 0x1f */
141+ {960, 540, 8, 16}, /* 0x20 */
142+ {960, 600, 8, 16} /* 0x21 */
143+};
144+
145+static const struct SiS_StandTable SiSUSB_StandTable[] = {
146+ /* MD_3_400 - mode 0x03 - 400 */
147+ {
148+ 0x50, 0x18, 0x10, 0x1000,
149+ {0x00, 0x03, 0x00, 0x02},
150+ 0x67,
151+ {0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f,
152+ 0x00, 0x4f, 0x0d, 0x0e, 0x00, 0x00, 0x00, 0x00,
153+ 0x9c, 0x8e, 0x8f, 0x28, 0x1f, 0x96, 0xb9, 0xa3,
154+ 0xff},
155+ {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x14, 0x07,
156+ 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
157+ 0x0c, 0x00, 0x0f, 0x08},
158+ {0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0e, 0x00, 0xff}
159+ },
160+ /* Generic for VGA and higher */
161+ {
162+ 0x00, 0x00, 0x00, 0x0000,
163+ {0x01, 0x0f, 0x00, 0x0e},
164+ 0x23,
165+ {0x5f, 0x4f, 0x50, 0x82, 0x54, 0x80, 0x0b, 0x3e,
166+ 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
167+ 0xea, 0x8c, 0xdf, 0x28, 0x40, 0xe7, 0x04, 0xa3,
168+ 0xff},
169+ {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
170+ 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
171+ 0x01, 0x00, 0x00, 0x00},
172+ {0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0f, 0xff}
173+ }
174+};
175+
176+static const struct SiS_Ext SiSUSB_EModeIDTable[] = {
177+ {0x2e, 0x0a1b, 0x0101, SIS_RI_640x480, 0x00, 0x00, 0x05, 0x05, 0x08, 2}, /* 640x480x8 */
178+ {0x2f, 0x0a1b, 0x0100, SIS_RI_640x400, 0x00, 0x00, 0x05, 0x05, 0x10, 0}, /* 640x400x8 */
179+ {0x30, 0x2a1b, 0x0103, SIS_RI_800x600, 0x00, 0x00, 0x07, 0x06, 0x00, 3}, /* 800x600x8 */
180+ {0x31, 0x4a1b, 0x0000, SIS_RI_720x480, 0x00, 0x00, 0x06, 0x06, 0x11, -1}, /* 720x480x8 */
181+ {0x32, 0x4a1b, 0x0000, SIS_RI_720x576, 0x00, 0x00, 0x06, 0x06, 0x12, -1}, /* 720x576x8 */
182+ {0x33, 0x4a1d, 0x0000, SIS_RI_720x480, 0x00, 0x00, 0x06, 0x06, 0x11, -1}, /* 720x480x16 */
183+ {0x34, 0x6a1d, 0x0000, SIS_RI_720x576, 0x00, 0x00, 0x06, 0x06, 0x12, -1}, /* 720x576x16 */
184+ {0x35, 0x4a1f, 0x0000, SIS_RI_720x480, 0x00, 0x00, 0x06, 0x06, 0x11, -1}, /* 720x480x32 */
185+ {0x36, 0x6a1f, 0x0000, SIS_RI_720x576, 0x00, 0x00, 0x06, 0x06, 0x12, -1}, /* 720x576x32 */
186+ {0x38, 0x0a1b, 0x0105, SIS_RI_1024x768, 0x00, 0x00, 0x08, 0x07, 0x13, 4}, /* 1024x768x8 */
187+ {0x3a, 0x0e3b, 0x0107, SIS_RI_1280x1024, 0x00, 0x00, 0x00, 0x00, 0x2f, 8}, /* 1280x1024x8 */
188+ {0x41, 0x9a1d, 0x010e, SIS_RI_320x200, 0x00, 0x00, 0x04, 0x04, 0x1a, 0}, /* 320x200x16 */
189+ {0x44, 0x0a1d, 0x0111, SIS_RI_640x480, 0x00, 0x00, 0x05, 0x05, 0x08, 2}, /* 640x480x16 */
190+ {0x47, 0x2a1d, 0x0114, SIS_RI_800x600, 0x00, 0x00, 0x07, 0x06, 0x00, 3}, /* 800x600x16 */
191+ {0x4a, 0x0a3d, 0x0117, SIS_RI_1024x768, 0x00, 0x00, 0x08, 0x07, 0x13, 4}, /* 1024x768x16 */
192+ {0x4d, 0x0e7d, 0x011a, SIS_RI_1280x1024, 0x00, 0x00, 0x00, 0x00, 0x2f, 8}, /* 1280x1024x16 */
193+ {0x50, 0x9a1b, 0x0132, SIS_RI_320x240, 0x00, 0x00, 0x04, 0x04, 0x1b, 2}, /* 320x240x8 */
194+ {0x51, 0xba1b, 0x0133, SIS_RI_400x300, 0x00, 0x00, 0x07, 0x07, 0x1c, 3}, /* 400x300x8 */
195+ {0x52, 0xba1b, 0x0134, SIS_RI_512x384, 0x00, 0x00, 0x00, 0x00, 0x1d, 4}, /* 512x384x8 */
196+ {0x56, 0x9a1d, 0x0135, SIS_RI_320x240, 0x00, 0x00, 0x04, 0x04, 0x1b, 2}, /* 320x240x16 */
197+ {0x57, 0xba1d, 0x0136, SIS_RI_400x300, 0x00, 0x00, 0x07, 0x07, 0x1c, 3}, /* 400x300x16 */
198+ {0x58, 0xba1d, 0x0137, SIS_RI_512x384, 0x00, 0x00, 0x00, 0x00, 0x1d, 4}, /* 512x384x16 */
199+ {0x59, 0x9a1b, 0x0138, SIS_RI_320x200, 0x00, 0x00, 0x04, 0x04, 0x1a, 0}, /* 320x200x8 */
200+ {0x5c, 0xba1f, 0x0000, SIS_RI_512x384, 0x00, 0x00, 0x00, 0x00, 0x1d, 4}, /* 512x384x32 */
201+ {0x5d, 0x0a1d, 0x0139, SIS_RI_640x400, 0x00, 0x00, 0x05, 0x07, 0x10, 0}, /* 640x400x16 */
202+ {0x5e, 0x0a1f, 0x0000, SIS_RI_640x400, 0x00, 0x00, 0x05, 0x07, 0x10, 0}, /* 640x400x32 */
203+ {0x62, 0x0a3f, 0x013a, SIS_RI_640x480, 0x00, 0x00, 0x05, 0x05, 0x08, 2}, /* 640x480x32 */
204+ {0x63, 0x2a3f, 0x013b, SIS_RI_800x600, 0x00, 0x00, 0x07, 0x06, 0x00, 3}, /* 800x600x32 */
205+ {0x64, 0x0a7f, 0x013c, SIS_RI_1024x768, 0x00, 0x00, 0x08, 0x07, 0x13, 4}, /* 1024x768x32 */
206+ {0x65, 0x0eff, 0x013d, SIS_RI_1280x1024, 0x00, 0x00, 0x00, 0x00, 0x2f, 8}, /* 1280x1024x32 */
207+ {0x70, 0x6a1b, 0x0000, SIS_RI_800x480, 0x00, 0x00, 0x07, 0x07, 0x1e, -1}, /* 800x480x8 */
208+ {0x71, 0x4a1b, 0x0000, SIS_RI_1024x576, 0x00, 0x00, 0x00, 0x00, 0x21, -1}, /* 1024x576x8 */
209+ {0x74, 0x4a1d, 0x0000, SIS_RI_1024x576, 0x00, 0x00, 0x00, 0x00, 0x21, -1}, /* 1024x576x16 */
210+ {0x75, 0x0a3d, 0x0000, SIS_RI_1280x720, 0x00, 0x00, 0x00, 0x00, 0x24, 5}, /* 1280x720x16 */
211+ {0x76, 0x6a1f, 0x0000, SIS_RI_800x480, 0x00, 0x00, 0x07, 0x07, 0x1e, -1}, /* 800x480x32 */
212+ {0x77, 0x4a1f, 0x0000, SIS_RI_1024x576, 0x00, 0x00, 0x00, 0x00, 0x21, -1}, /* 1024x576x32 */
213+ {0x78, 0x0a3f, 0x0000, SIS_RI_1280x720, 0x00, 0x00, 0x00, 0x00, 0x24, 5}, /* 1280x720x32 */
214+ {0x79, 0x0a3b, 0x0000, SIS_RI_1280x720, 0x00, 0x00, 0x00, 0x00, 0x24, 5}, /* 1280x720x8 */
215+ {0x7a, 0x6a1d, 0x0000, SIS_RI_800x480, 0x00, 0x00, 0x07, 0x07, 0x1e, -1}, /* 800x480x16 */
216+ {0x23, 0x0e3b, 0x0000, SIS_RI_1280x768, 0x00, 0x00, 0x00, 0x00, 0x27, 6}, /* 1280x768x8 */
217+ {0x24, 0x0e7d, 0x0000, SIS_RI_1280x768, 0x00, 0x00, 0x00, 0x00, 0x27, 6}, /* 1280x768x16 */
218+ {0x25, 0x0eff, 0x0000, SIS_RI_1280x768, 0x00, 0x00, 0x00, 0x00, 0x27, 6}, /* 1280x768x32 */
219+ {0x39, 0x6a1b, 0x0000, SIS_RI_848x480, 0x00, 0x00, 0x00, 0x00, 0x28, -1}, /* 848x480 */
220+ {0x3b, 0x6a3d, 0x0000, SIS_RI_848x480, 0x00, 0x00, 0x00, 0x00, 0x28,
221+ -1},
222+ {0x3e, 0x6a7f, 0x0000, SIS_RI_848x480, 0x00, 0x00, 0x00, 0x00, 0x28,
223+ -1},
224+ {0x3f, 0x6a1b, 0x0000, SIS_RI_856x480, 0x00, 0x00, 0x00, 0x00, 0x2a, -1}, /* 856x480 */
225+ {0x42, 0x6a3d, 0x0000, SIS_RI_856x480, 0x00, 0x00, 0x00, 0x00, 0x2a,
226+ -1},
227+ {0x45, 0x6a7f, 0x0000, SIS_RI_856x480, 0x00, 0x00, 0x00, 0x00, 0x2a,
228+ -1},
229+ {0x4f, 0x9a1f, 0x0000, SIS_RI_320x200, 0x00, 0x00, 0x04, 0x04, 0x1a, 0}, /* 320x200x32 */
230+ {0x53, 0x9a1f, 0x0000, SIS_RI_320x240, 0x00, 0x00, 0x04, 0x04, 0x1b, 2}, /* 320x240x32 */
231+ {0x54, 0xba1f, 0x0000, SIS_RI_400x300, 0x00, 0x00, 0x07, 0x07, 0x1c, 3}, /* 400x300x32 */
232+ {0x5f, 0x6a1b, 0x0000, SIS_RI_768x576, 0x00, 0x00, 0x06, 0x06, 0x2c, -1}, /* 768x576 */
233+ {0x60, 0x6a1d, 0x0000, SIS_RI_768x576, 0x00, 0x00, 0x06, 0x06, 0x2c,
234+ -1},
235+ {0x61, 0x6a3f, 0x0000, SIS_RI_768x576, 0x00, 0x00, 0x06, 0x06, 0x2c,
236+ -1},
237+ {0x1d, 0x6a1b, 0x0000, SIS_RI_960x540, 0x00, 0x00, 0x00, 0x00, 0x2d, -1}, /* 960x540 */
238+ {0x1e, 0x6a3d, 0x0000, SIS_RI_960x540, 0x00, 0x00, 0x00, 0x00, 0x2d,
239+ -1},
240+ {0x1f, 0x6a7f, 0x0000, SIS_RI_960x540, 0x00, 0x00, 0x00, 0x00, 0x2d,
241+ -1},
242+ {0x20, 0x6a1b, 0x0000, SIS_RI_960x600, 0x00, 0x00, 0x00, 0x00, 0x2e, -1}, /* 960x600 */
243+ {0x21, 0x6a3d, 0x0000, SIS_RI_960x600, 0x00, 0x00, 0x00, 0x00, 0x2e,
244+ -1},
245+ {0x22, 0x6a7f, 0x0000, SIS_RI_960x600, 0x00, 0x00, 0x00, 0x00, 0x2e,
246+ -1},
247+ {0x29, 0x4e1b, 0x0000, SIS_RI_1152x864, 0x00, 0x00, 0x00, 0x00, 0x33, -1}, /* 1152x864 */
248+ {0x2a, 0x4e3d, 0x0000, SIS_RI_1152x864, 0x00, 0x00, 0x00, 0x00, 0x33,
249+ -1},
250+ {0x2b, 0x4e7f, 0x0000, SIS_RI_1152x864, 0x00, 0x00, 0x00, 0x00, 0x33,
251+ -1},
252+ {0xff, 0x0000, 0x0000, 0, 0x00, 0x00, 0x00, 0x00, 0x00, -1}
253+};
254+
255+static const struct SiS_Ext2 SiSUSB_RefIndex[] = {
256+ {0x085f, 0x0d, 0x03, 0x05, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x0 */
257+ {0x0067, 0x0e, 0x04, 0x05, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x1 */
258+ {0x0067, 0x0f, 0x08, 0x48, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x2 */
259+ {0x0067, 0x10, 0x07, 0x8b, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x3 */
260+ {0x0047, 0x11, 0x0a, 0x00, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x4 */
261+ {0x0047, 0x12, 0x0d, 0x00, 0x05, 0x30, 800, 600, 0x40, 0x00, 0x00}, /* 0x5 */
262+ {0x0047, 0x13, 0x13, 0x00, 0x05, 0x30, 800, 600, 0x20, 0x00, 0x00}, /* 0x6 */
263+ {0x0107, 0x14, 0x1c, 0x00, 0x05, 0x30, 800, 600, 0x20, 0x00, 0x00}, /* 0x7 */
264+ {0xc85f, 0x05, 0x00, 0x04, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0x8 */
265+ {0xc067, 0x06, 0x02, 0x04, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0x9 */
266+ {0xc067, 0x07, 0x02, 0x47, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xa */
267+ {0xc067, 0x08, 0x03, 0x8a, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xb */
268+ {0xc047, 0x09, 0x05, 0x00, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xc */
269+ {0xc047, 0x0a, 0x09, 0x00, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xd */
270+ {0xc047, 0x0b, 0x0e, 0x00, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xe */
271+ {0xc047, 0x0c, 0x15, 0x00, 0x04, 0x2e, 640, 480, 0x40, 0x00, 0x00}, /* 0xf */
272+ {0x487f, 0x04, 0x00, 0x00, 0x00, 0x2f, 640, 400, 0x30, 0x55, 0x6e}, /* 0x10 */
273+ {0xc06f, 0x3c, 0x01, 0x06, 0x13, 0x31, 720, 480, 0x30, 0x00, 0x00}, /* 0x11 */
274+ {0x006f, 0x3d, 0x6f, 0x06, 0x14, 0x32, 720, 576, 0x30, 0x00, 0x00}, /* 0x12 (6f was 03) */
275+ {0x0087, 0x15, 0x06, 0x00, 0x06, 0x38, 1024, 768, 0x30, 0x00, 0x00}, /* 0x13 */
276+ {0xc877, 0x16, 0x0b, 0x06, 0x06, 0x38, 1024, 768, 0x20, 0x00, 0x00}, /* 0x14 */
277+ {0xc067, 0x17, 0x0f, 0x49, 0x06, 0x38, 1024, 768, 0x20, 0x00, 0x00}, /* 0x15 */
278+ {0x0067, 0x18, 0x11, 0x00, 0x06, 0x38, 1024, 768, 0x20, 0x00, 0x00}, /* 0x16 */
279+ {0x0047, 0x19, 0x16, 0x8c, 0x06, 0x38, 1024, 768, 0x20, 0x00, 0x00}, /* 0x17 */
280+ {0x0107, 0x1a, 0x1b, 0x00, 0x06, 0x38, 1024, 768, 0x10, 0x00, 0x00}, /* 0x18 */
281+ {0x0107, 0x1b, 0x1f, 0x00, 0x06, 0x38, 1024, 768, 0x10, 0x00, 0x00}, /* 0x19 */
282+ {0x407f, 0x00, 0x00, 0x00, 0x00, 0x41, 320, 200, 0x30, 0x56, 0x4e}, /* 0x1a */
283+ {0xc07f, 0x01, 0x00, 0x04, 0x04, 0x50, 320, 240, 0x30, 0x00, 0x00}, /* 0x1b */
284+ {0x007f, 0x02, 0x04, 0x05, 0x05, 0x51, 400, 300, 0x30, 0x00, 0x00}, /* 0x1c */
285+ {0xc077, 0x03, 0x0b, 0x06, 0x06, 0x52, 512, 384, 0x30, 0x00, 0x00}, /* 0x1d */
286+ {0x0077, 0x32, 0x40, 0x08, 0x18, 0x70, 800, 480, 0x30, 0x00, 0x00}, /* 0x1e */
287+ {0x0047, 0x33, 0x07, 0x08, 0x18, 0x70, 800, 480, 0x30, 0x00, 0x00}, /* 0x1f */
288+ {0x0047, 0x34, 0x0a, 0x08, 0x18, 0x70, 800, 480, 0x30, 0x00, 0x00}, /* 0x20 */
289+ {0x0077, 0x35, 0x0b, 0x09, 0x19, 0x71, 1024, 576, 0x30, 0x00, 0x00}, /* 0x21 */
290+ {0x0047, 0x36, 0x11, 0x09, 0x19, 0x71, 1024, 576, 0x30, 0x00, 0x00}, /* 0x22 */
291+ {0x0047, 0x37, 0x16, 0x09, 0x19, 0x71, 1024, 576, 0x30, 0x00, 0x00}, /* 0x23 */
292+ {0x1137, 0x38, 0x19, 0x0a, 0x0c, 0x75, 1280, 720, 0x30, 0x00, 0x00}, /* 0x24 */
293+ {0x1107, 0x39, 0x1e, 0x0a, 0x0c, 0x75, 1280, 720, 0x30, 0x00, 0x00}, /* 0x25 */
294+ {0x1307, 0x3a, 0x20, 0x0a, 0x0c, 0x75, 1280, 720, 0x30, 0x00, 0x00}, /* 0x26 */
295+ {0x0077, 0x42, 0x5b, 0x08, 0x11, 0x23, 1280, 768, 0x30, 0x00, 0x00}, /* 0x27 */
296+ {0x0087, 0x45, 0x57, 0x00, 0x16, 0x39, 848, 480, 0x30, 0x00, 0x00}, /* 0x28 38Hzi */
297+ {0xc067, 0x46, 0x55, 0x0b, 0x16, 0x39, 848, 480, 0x30, 0x00, 0x00}, /* 0x29 848x480-60Hz */
298+ {0x0087, 0x47, 0x57, 0x00, 0x17, 0x3f, 856, 480, 0x30, 0x00, 0x00}, /* 0x2a 856x480-38Hzi */
299+ {0xc067, 0x48, 0x57, 0x00, 0x17, 0x3f, 856, 480, 0x30, 0x00, 0x00}, /* 0x2b 856x480-60Hz */
300+ {0x006f, 0x4d, 0x71, 0x06, 0x15, 0x5f, 768, 576, 0x30, 0x00, 0x00}, /* 0x2c 768x576-56Hz */
301+ {0x0067, 0x52, 0x6a, 0x00, 0x1c, 0x1d, 960, 540, 0x30, 0x00, 0x00}, /* 0x2d 960x540 60Hz */
302+ {0x0077, 0x53, 0x6b, 0x0b, 0x1d, 0x20, 960, 600, 0x30, 0x00, 0x00}, /* 0x2e 960x600 60Hz */
303+ {0x0087, 0x1c, 0x11, 0x00, 0x07, 0x3a, 1280, 1024, 0x30, 0x00, 0x00}, /* 0x2f */
304+ {0x0137, 0x1d, 0x19, 0x07, 0x07, 0x3a, 1280, 1024, 0x00, 0x00, 0x00}, /* 0x30 */
305+ {0x0107, 0x1e, 0x1e, 0x00, 0x07, 0x3a, 1280, 1024, 0x00, 0x00, 0x00}, /* 0x31 */
306+ {0x0207, 0x1f, 0x20, 0x00, 0x07, 0x3a, 1280, 1024, 0x00, 0x00, 0x00}, /* 0x32 */
307+ {0x0127, 0x54, 0x6d, 0x00, 0x1a, 0x29, 1152, 864, 0x30, 0x00, 0x00}, /* 0x33 1152x864-60Hz */
308+ {0x0127, 0x44, 0x19, 0x00, 0x1a, 0x29, 1152, 864, 0x30, 0x00, 0x00}, /* 0x34 1152x864-75Hz */
309+ {0x0127, 0x4a, 0x1e, 0x00, 0x1a, 0x29, 1152, 864, 0x30, 0x00, 0x00}, /* 0x35 1152x864-85Hz */
310+ {0xffff, 0x00, 0x00, 0x00, 0x00, 0x00, 0, 0, 0, 0x00, 0x00}
311+};
312+
313+static const struct SiS_CRT1Table SiSUSB_CRT1Table[] = {
314+ {{0x2d, 0x27, 0x28, 0x90, 0x2c, 0x80, 0xbf, 0x1f,
315+ 0x9c, 0x8e, 0x8f, 0x96, 0xb9, 0x30, 0x00, 0x00,
316+ 0x00}}, /* 0x0 */
317+ {{0x2d, 0x27, 0x28, 0x90, 0x2c, 0x80, 0x0b, 0x3e,
318+ 0xe9, 0x8b, 0xdf, 0xe7, 0x04, 0x00, 0x00, 0x00,
319+ 0x00}}, /* 0x1 */
320+ {{0x3d, 0x31, 0x31, 0x81, 0x37, 0x1f, 0x72, 0xf0,
321+ 0x58, 0x8c, 0x57, 0x57, 0x73, 0x20, 0x00, 0x05,
322+ 0x01}}, /* 0x2 */
323+ {{0x4f, 0x3f, 0x3f, 0x93, 0x45, 0x0d, 0x24, 0xf5,
324+ 0x02, 0x88, 0xff, 0xff, 0x25, 0x10, 0x00, 0x01,
325+ 0x01}}, /* 0x3 */
326+ {{0x5f, 0x4f, 0x50, 0x82, 0x55, 0x81, 0xbf, 0x1f,
327+ 0x9c, 0x8e, 0x8f, 0x96, 0xb9, 0x30, 0x00, 0x05,
328+ 0x00}}, /* 0x4 */
329+ {{0x5f, 0x4f, 0x4f, 0x83, 0x55, 0x81, 0x0b, 0x3e,
330+ 0xe9, 0x8b, 0xdf, 0xe8, 0x0c, 0x00, 0x00, 0x05,
331+ 0x00}}, /* 0x5 */
332+ {{0x63, 0x4f, 0x4f, 0x87, 0x56, 0x9b, 0x06, 0x3e,
333+ 0xe8, 0x8a, 0xdf, 0xe7, 0x07, 0x00, 0x00, 0x01,
334+ 0x00}}, /* 0x6 */
335+ {{0x64, 0x4f, 0x4f, 0x88, 0x55, 0x9d, 0xf2, 0x1f,
336+ 0xe0, 0x83, 0xdf, 0xdf, 0xf3, 0x10, 0x00, 0x01,
337+ 0x00}}, /* 0x7 */
338+ {{0x63, 0x4f, 0x4f, 0x87, 0x5a, 0x81, 0xfb, 0x1f,
339+ 0xe0, 0x83, 0xdf, 0xdf, 0xfc, 0x10, 0x00, 0x05,
340+ 0x00}}, /* 0x8 */
341+ {{0x65, 0x4f, 0x4f, 0x89, 0x58, 0x80, 0xfb, 0x1f,
342+ 0xe0, 0x83, 0xdf, 0xdf, 0xfc, 0x10, 0x00, 0x05,
343+ 0x61}}, /* 0x9 */
344+ {{0x65, 0x4f, 0x4f, 0x89, 0x58, 0x80, 0x01, 0x3e,
345+ 0xe0, 0x83, 0xdf, 0xdf, 0x02, 0x00, 0x00, 0x05,
346+ 0x61}}, /* 0xa */
347+ {{0x67, 0x4f, 0x4f, 0x8b, 0x58, 0x81, 0x0d, 0x3e,
348+ 0xe0, 0x83, 0xdf, 0xdf, 0x0e, 0x00, 0x00, 0x05,
349+ 0x61}}, /* 0xb */
350+ {{0x65, 0x4f, 0x4f, 0x89, 0x57, 0x9f, 0xfb, 0x1f,
351+ 0xe6, 0x8a, 0xdf, 0xdf, 0xfc, 0x10, 0x00, 0x01,
352+ 0x00}}, /* 0xc */
353+ {{0x7b, 0x63, 0x63, 0x9f, 0x6a, 0x93, 0x6f, 0xf0,
354+ 0x58, 0x8a, 0x57, 0x57, 0x70, 0x20, 0x00, 0x05,
355+ 0x01}}, /* 0xd */
356+ {{0x7f, 0x63, 0x63, 0x83, 0x6c, 0x1c, 0x72, 0xf0,
357+ 0x58, 0x8c, 0x57, 0x57, 0x73, 0x20, 0x00, 0x06,
358+ 0x01}}, /* 0xe */
359+ {{0x7d, 0x63, 0x63, 0x81, 0x6e, 0x1d, 0x98, 0xf0,
360+ 0x7c, 0x82, 0x57, 0x57, 0x99, 0x00, 0x00, 0x06,
361+ 0x01}}, /* 0xf */
362+ {{0x7f, 0x63, 0x63, 0x83, 0x69, 0x13, 0x6f, 0xf0,
363+ 0x58, 0x8b, 0x57, 0x57, 0x70, 0x20, 0x00, 0x06,
364+ 0x01}}, /* 0x10 */
365+ {{0x7e, 0x63, 0x63, 0x82, 0x6b, 0x13, 0x75, 0xf0,
366+ 0x58, 0x8b, 0x57, 0x57, 0x76, 0x20, 0x00, 0x06,
367+ 0x01}}, /* 0x11 */
368+ {{0x81, 0x63, 0x63, 0x85, 0x6d, 0x18, 0x7a, 0xf0,
369+ 0x58, 0x8b, 0x57, 0x57, 0x7b, 0x20, 0x00, 0x06,
370+ 0x61}}, /* 0x12 */
371+ {{0x83, 0x63, 0x63, 0x87, 0x6e, 0x19, 0x81, 0xf0,
372+ 0x58, 0x8b, 0x57, 0x57, 0x82, 0x20, 0x00, 0x06,
373+ 0x61}}, /* 0x13 */
374+ {{0x85, 0x63, 0x63, 0x89, 0x6f, 0x1a, 0x91, 0xf0,
375+ 0x58, 0x8b, 0x57, 0x57, 0x92, 0x20, 0x00, 0x06,
376+ 0x61}}, /* 0x14 */
377+ {{0x99, 0x7f, 0x7f, 0x9d, 0x84, 0x1a, 0x96, 0x1f,
378+ 0x7f, 0x83, 0x7f, 0x7f, 0x97, 0x10, 0x00, 0x02,
379+ 0x00}}, /* 0x15 */
380+ {{0xa3, 0x7f, 0x7f, 0x87, 0x86, 0x97, 0x24, 0xf5,
381+ 0x02, 0x88, 0xff, 0xff, 0x25, 0x10, 0x00, 0x02,
382+ 0x01}}, /* 0x16 */
383+ {{0xa1, 0x7f, 0x7f, 0x85, 0x86, 0x97, 0x24, 0xf5,
384+ 0x02, 0x88, 0xff, 0xff, 0x25, 0x10, 0x00, 0x02,
385+ 0x01}}, /* 0x17 */
386+ {{0x9f, 0x7f, 0x7f, 0x83, 0x85, 0x91, 0x1e, 0xf5,
387+ 0x00, 0x83, 0xff, 0xff, 0x1f, 0x10, 0x00, 0x02,
388+ 0x01}}, /* 0x18 */
389+ {{0xa7, 0x7f, 0x7f, 0x8b, 0x89, 0x95, 0x26, 0xf5,
390+ 0x00, 0x83, 0xff, 0xff, 0x27, 0x10, 0x00, 0x02,
391+ 0x01}}, /* 0x19 */
392+ {{0xa9, 0x7f, 0x7f, 0x8d, 0x8c, 0x9a, 0x2c, 0xf5,
393+ 0x00, 0x83, 0xff, 0xff, 0x2d, 0x14, 0x00, 0x02,
394+ 0x62}}, /* 0x1a */
395+ {{0xab, 0x7f, 0x7f, 0x8f, 0x8d, 0x9b, 0x35, 0xf5,
396+ 0x00, 0x83, 0xff, 0xff, 0x36, 0x14, 0x00, 0x02,
397+ 0x62}}, /* 0x1b */
398+ {{0xcf, 0x9f, 0x9f, 0x93, 0xb2, 0x01, 0x14, 0xba,
399+ 0x00, 0x83, 0xff, 0xff, 0x15, 0x00, 0x00, 0x03,
400+ 0x00}}, /* 0x1c */
401+ {{0xce, 0x9f, 0x9f, 0x92, 0xa9, 0x17, 0x28, 0x5a,
402+ 0x00, 0x83, 0xff, 0xff, 0x29, 0x09, 0x00, 0x07,
403+ 0x01}}, /* 0x1d */
404+ {{0xce, 0x9f, 0x9f, 0x92, 0xa5, 0x17, 0x28, 0x5a,
405+ 0x00, 0x83, 0xff, 0xff, 0x29, 0x09, 0x00, 0x07,
406+ 0x01}}, /* 0x1e */
407+ {{0xd3, 0x9f, 0x9f, 0x97, 0xab, 0x1f, 0x2e, 0x5a,
408+ 0x00, 0x83, 0xff, 0xff, 0x2f, 0x09, 0x00, 0x07,
409+ 0x01}}, /* 0x1f */
410+ {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
411+ 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
412+ 0x00}}, /* 0x20 */
413+ {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
414+ 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
415+ 0x00}}, /* 0x21 */
416+ {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
417+ 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
418+ 0x00}}, /* 0x22 */
419+ {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
420+ 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
421+ 0x00}}, /* 0x23 */
422+ {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
423+ 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
424+ 0x00}}, /* 0x24 */
425+ {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
426+ 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
427+ 0x00}}, /* 0x25 */
428+ {{0x09, 0xc7, 0xc7, 0x8d, 0xd3, 0x0b, 0xe0, 0x10,
429+ 0xb0, 0x83, 0xaf, 0xaf, 0xe1, 0x2f, 0x01, 0x04,
430+ 0x00}}, /* 0x26 */
431+ {{0x40, 0xef, 0xef, 0x84, 0x03, 0x1d, 0xda, 0x1f,
432+ 0xa0, 0x83, 0x9f, 0x9f, 0xdb, 0x1f, 0x41, 0x01,
433+ 0x00}}, /* 0x27 */
434+ {{0x43, 0xef, 0xef, 0x87, 0x06, 0x00, 0xd4, 0x1f,
435+ 0xa0, 0x83, 0x9f, 0x9f, 0xd5, 0x1f, 0x41, 0x05,
436+ 0x63}}, /* 0x28 */
437+ {{0x45, 0xef, 0xef, 0x89, 0x07, 0x01, 0xd9, 0x1f,
438+ 0xa0, 0x83, 0x9f, 0x9f, 0xda, 0x1f, 0x41, 0x05,
439+ 0x63}}, /* 0x29 */
440+ {{0x40, 0xef, 0xef, 0x84, 0x03, 0x1d, 0xda, 0x1f,
441+ 0xa0, 0x83, 0x9f, 0x9f, 0xdb, 0x1f, 0x41, 0x01,
442+ 0x00}}, /* 0x2a */
443+ {{0x40, 0xef, 0xef, 0x84, 0x03, 0x1d, 0xda, 0x1f,
444+ 0xa0, 0x83, 0x9f, 0x9f, 0xdb, 0x1f, 0x41, 0x01,
445+ 0x00}}, /* 0x2b */
446+ {{0x40, 0xef, 0xef, 0x84, 0x03, 0x1d, 0xda, 0x1f,
447+ 0xa0, 0x83, 0x9f, 0x9f, 0xdb, 0x1f, 0x41, 0x01,
448+ 0x00}}, /* 0x2c */
449+ {{0x59, 0xff, 0xff, 0x9d, 0x17, 0x13, 0x33, 0xba,
450+ 0x00, 0x83, 0xff, 0xff, 0x34, 0x0f, 0x41, 0x05,
451+ 0x44}}, /* 0x2d */
452+ {{0x5b, 0xff, 0xff, 0x9f, 0x18, 0x14, 0x38, 0xba,
453+ 0x00, 0x83, 0xff, 0xff, 0x39, 0x0f, 0x41, 0x05,
454+ 0x44}}, /* 0x2e */
455+ {{0x5b, 0xff, 0xff, 0x9f, 0x18, 0x14, 0x3d, 0xba,
456+ 0x00, 0x83, 0xff, 0xff, 0x3e, 0x0f, 0x41, 0x05,
457+ 0x44}}, /* 0x2f */
458+ {{0x5d, 0xff, 0xff, 0x81, 0x19, 0x95, 0x41, 0xba,
459+ 0x00, 0x84, 0xff, 0xff, 0x42, 0x0f, 0x41, 0x05,
460+ 0x44}}, /* 0x30 */
461+ {{0x55, 0xff, 0xff, 0x99, 0x0d, 0x0c, 0x3e, 0xba,
462+ 0x00, 0x84, 0xff, 0xff, 0x3f, 0x0f, 0x41, 0x05,
463+ 0x00}}, /* 0x31 */
464+ {{0x7f, 0x63, 0x63, 0x83, 0x6c, 0x1c, 0x72, 0xba,
465+ 0x27, 0x8b, 0xdf, 0xdf, 0x73, 0x00, 0x00, 0x06,
466+ 0x01}}, /* 0x32 */
467+ {{0x7f, 0x63, 0x63, 0x83, 0x69, 0x13, 0x6f, 0xba,
468+ 0x26, 0x89, 0xdf, 0xdf, 0x6f, 0x00, 0x00, 0x06,
469+ 0x01}}, /* 0x33 */
470+ {{0x7f, 0x63, 0x63, 0x82, 0x6b, 0x13, 0x75, 0xba,
471+ 0x29, 0x8c, 0xdf, 0xdf, 0x75, 0x00, 0x00, 0x06,
472+ 0x01}}, /* 0x34 */
473+ {{0xa3, 0x7f, 0x7f, 0x87, 0x86, 0x97, 0x24, 0xf1,
474+ 0xaf, 0x85, 0x3f, 0x3f, 0x25, 0x30, 0x00, 0x02,
475+ 0x01}}, /* 0x35 */
476+ {{0x9f, 0x7f, 0x7f, 0x83, 0x85, 0x91, 0x1e, 0xf1,
477+ 0xad, 0x81, 0x3f, 0x3f, 0x1f, 0x30, 0x00, 0x02,
478+ 0x01}}, /* 0x36 */
479+ {{0xa7, 0x7f, 0x7f, 0x88, 0x89, 0x95, 0x26, 0xf1,
480+ 0xb1, 0x85, 0x3f, 0x3f, 0x27, 0x30, 0x00, 0x02,
481+ 0x01}}, /* 0x37 */
482+ {{0xce, 0x9f, 0x9f, 0x92, 0xa9, 0x17, 0x28, 0xc4,
483+ 0x7a, 0x8e, 0xcf, 0xcf, 0x29, 0x21, 0x00, 0x07,
484+ 0x01}}, /* 0x38 */
485+ {{0xce, 0x9f, 0x9f, 0x92, 0xa5, 0x17, 0x28, 0xd4,
486+ 0x7a, 0x8e, 0xcf, 0xcf, 0x29, 0x21, 0x00, 0x07,
487+ 0x01}}, /* 0x39 */
488+ {{0xd3, 0x9f, 0x9f, 0x97, 0xab, 0x1f, 0x2e, 0xd4,
489+ 0x7d, 0x81, 0xcf, 0xcf, 0x2f, 0x21, 0x00, 0x07,
490+ 0x01}}, /* 0x3a */
491+ {{0xdc, 0x9f, 0x9f, 0x80, 0xaf, 0x9d, 0xe6, 0xff,
492+ 0xc0, 0x83, 0xbf, 0xbf, 0xe7, 0x10, 0x00, 0x07,
493+ 0x01}}, /* 0x3b */
494+ {{0x6b, 0x59, 0x59, 0x8f, 0x5e, 0x8c, 0x0b, 0x3e,
495+ 0xe9, 0x8b, 0xdf, 0xe7, 0x04, 0x00, 0x00, 0x05,
496+ 0x00}}, /* 0x3c */
497+ {{0x6d, 0x59, 0x59, 0x91, 0x60, 0x89, 0x53, 0xf0,
498+ 0x41, 0x84, 0x3f, 0x3f, 0x54, 0x00, 0x00, 0x05,
499+ 0x41}}, /* 0x3d */
500+ {{0x86, 0x6a, 0x6a, 0x8a, 0x74, 0x06, 0x8c, 0x15,
501+ 0x4f, 0x83, 0xef, 0xef, 0x8d, 0x30, 0x00, 0x02,
502+ 0x00}}, /* 0x3e */
503+ {{0x81, 0x6a, 0x6a, 0x85, 0x70, 0x00, 0x0f, 0x3e,
504+ 0xeb, 0x8e, 0xdf, 0xdf, 0x10, 0x00, 0x00, 0x02,
505+ 0x00}}, /* 0x3f */
506+ {{0xa3, 0x7f, 0x7f, 0x87, 0x86, 0x97, 0x1e, 0xf1,
507+ 0xae, 0x85, 0x57, 0x57, 0x1f, 0x30, 0x00, 0x02,
508+ 0x01}}, /* 0x40 */
509+ {{0xa3, 0x7f, 0x7f, 0x87, 0x86, 0x97, 0x24, 0xf5,
510+ 0x02, 0x88, 0xff, 0xff, 0x25, 0x10, 0x00, 0x02,
511+ 0x01}}, /* 0x41 */
512+ {{0xce, 0x9f, 0x9f, 0x92, 0xa9, 0x17, 0x20, 0xf5,
513+ 0x03, 0x88, 0xff, 0xff, 0x21, 0x10, 0x00, 0x07,
514+ 0x01}}, /* 0x42 */
515+ {{0xe6, 0xae, 0xae, 0x8a, 0xbd, 0x90, 0x3d, 0x10,
516+ 0x1a, 0x8d, 0x19, 0x19, 0x3e, 0x2f, 0x00, 0x03,
517+ 0x00}}, /* 0x43 */
518+ {{0xc3, 0x8f, 0x8f, 0x87, 0x9b, 0x0b, 0x82, 0xef,
519+ 0x60, 0x83, 0x5f, 0x5f, 0x83, 0x10, 0x00, 0x07,
520+ 0x01}}, /* 0x44 */
521+ {{0x86, 0x69, 0x69, 0x8A, 0x74, 0x06, 0x8C, 0x15,
522+ 0x4F, 0x83, 0xEF, 0xEF, 0x8D, 0x30, 0x00, 0x02,
523+ 0x00}}, /* 0x45 */
524+ {{0x83, 0x69, 0x69, 0x87, 0x6f, 0x1d, 0x03, 0x3E,
525+ 0xE5, 0x8d, 0xDF, 0xe4, 0x04, 0x00, 0x00, 0x06,
526+ 0x00}}, /* 0x46 */
527+ {{0x86, 0x6A, 0x6A, 0x8A, 0x74, 0x06, 0x8C, 0x15,
528+ 0x4F, 0x83, 0xEF, 0xEF, 0x8D, 0x30, 0x00, 0x02,
529+ 0x00}}, /* 0x47 */
530+ {{0x81, 0x6A, 0x6A, 0x85, 0x70, 0x00, 0x0F, 0x3E,
531+ 0xEB, 0x8E, 0xDF, 0xDF, 0x10, 0x00, 0x00, 0x02,
532+ 0x00}}, /* 0x48 */
533+ {{0xdd, 0xa9, 0xa9, 0x81, 0xb4, 0x97, 0x26, 0xfd,
534+ 0x01, 0x8d, 0xff, 0x00, 0x27, 0x10, 0x00, 0x03,
535+ 0x01}}, /* 0x49 */
536+ {{0xd9, 0x8f, 0x8f, 0x9d, 0xba, 0x0a, 0x8a, 0xff,
537+ 0x60, 0x8b, 0x5f, 0x5f, 0x8b, 0x10, 0x00, 0x03,
538+ 0x01}}, /* 0x4a */
539+ {{0xea, 0xae, 0xae, 0x8e, 0xba, 0x82, 0x40, 0x10,
540+ 0x1b, 0x87, 0x19, 0x1a, 0x41, 0x0f, 0x00, 0x03,
541+ 0x00}}, /* 0x4b */
542+ {{0xd3, 0x9f, 0x9f, 0x97, 0xab, 0x1f, 0xf1, 0xff,
543+ 0xc0, 0x83, 0xbf, 0xbf, 0xf2, 0x10, 0x00, 0x07,
544+ 0x01}}, /* 0x4c */
545+ {{0x75, 0x5f, 0x5f, 0x99, 0x66, 0x90, 0x53, 0xf0,
546+ 0x41, 0x84, 0x3f, 0x3f, 0x54, 0x00, 0x00, 0x05,
547+ 0x41}},
548+ {{0x2d, 0x27, 0x28, 0x90, 0x2c, 0x80, 0x0b, 0x3e,
549+ 0xe9, 0x8b, 0xdf, 0xe7, 0x04, 0x00, 0x00, 0x00,
550+ 0x00}}, /* 0x4e */
551+ {{0xcd, 0x9f, 0x9f, 0x91, 0xab, 0x1c, 0x3a, 0xff,
552+ 0x20, 0x83, 0x1f, 0x1f, 0x3b, 0x10, 0x00, 0x07,
553+ 0x21}}, /* 0x4f */
554+ {{0x15, 0xd1, 0xd1, 0x99, 0xe2, 0x19, 0x3d, 0x10,
555+ 0x1a, 0x8d, 0x19, 0x19, 0x3e, 0x2f, 0x01, 0x0c,
556+ 0x20}}, /* 0x50 */
557+ {{0x0e, 0xef, 0xef, 0x92, 0xfe, 0x03, 0x30, 0xf0,
558+ 0x1e, 0x83, 0x1b, 0x1c, 0x31, 0x00, 0x01, 0x00,
559+ 0x61}}, /* 0x51 */
560+ {{0x85, 0x77, 0x77, 0x89, 0x7d, 0x01, 0x31, 0xf0,
561+ 0x1e, 0x84, 0x1b, 0x1c, 0x32, 0x00, 0x00, 0x02,
562+ 0x41}}, /* 0x52 */
563+ {{0x87, 0x77, 0x77, 0x8b, 0x81, 0x0b, 0x68, 0xf0,
564+ 0x5a, 0x80, 0x57, 0x57, 0x69, 0x00, 0x00, 0x02,
565+ 0x01}}, /* 0x53 */
566+ {{0xcd, 0x8f, 0x8f, 0x91, 0x9b, 0x1b, 0x7a, 0xff,
567+ 0x64, 0x8c, 0x5f, 0x62, 0x7b, 0x10, 0x00, 0x07,
568+ 0x41}} /* 0x54 */
569+};
570+
571+static const struct SiS_VCLKData SiSUSB_VCLKData[] = {
572+ {0x1b, 0xe1, 25}, /* 0x00 */
573+ {0x4e, 0xe4, 28}, /* 0x01 */
574+ {0x57, 0xe4, 31}, /* 0x02 */
575+ {0xc3, 0xc8, 36}, /* 0x03 */
576+ {0x42, 0xe2, 40}, /* 0x04 */
577+ {0xfe, 0xcd, 43}, /* 0x05 */
578+ {0x5d, 0xc4, 44}, /* 0x06 */
579+ {0x52, 0xe2, 49}, /* 0x07 */
580+ {0x53, 0xe2, 50}, /* 0x08 */
581+ {0x74, 0x67, 52}, /* 0x09 */
582+ {0x6d, 0x66, 56}, /* 0x0a */
583+ {0x5a, 0x64, 65}, /* 0x0b */
584+ {0x46, 0x44, 67}, /* 0x0c */
585+ {0xb1, 0x46, 68}, /* 0x0d */
586+ {0xd3, 0x4a, 72}, /* 0x0e */
587+ {0x29, 0x61, 75}, /* 0x0f */
588+ {0x6e, 0x46, 76}, /* 0x10 */
589+ {0x2b, 0x61, 78}, /* 0x11 */
590+ {0x31, 0x42, 79}, /* 0x12 */
591+ {0xab, 0x44, 83}, /* 0x13 */
592+ {0x46, 0x25, 84}, /* 0x14 */
593+ {0x78, 0x29, 86}, /* 0x15 */
594+ {0x62, 0x44, 94}, /* 0x16 */
595+ {0x2b, 0x41, 104}, /* 0x17 */
596+ {0x3a, 0x23, 105}, /* 0x18 */
597+ {0x70, 0x44, 108}, /* 0x19 */
598+ {0x3c, 0x23, 109}, /* 0x1a */
599+ {0x5e, 0x43, 113}, /* 0x1b */
600+ {0xbc, 0x44, 116}, /* 0x1c */
601+ {0xe0, 0x46, 132}, /* 0x1d */
602+ {0x54, 0x42, 135}, /* 0x1e */
603+ {0xea, 0x2a, 139}, /* 0x1f */
604+ {0x41, 0x22, 157}, /* 0x20 */
605+ {0x70, 0x24, 162}, /* 0x21 */
606+ {0x30, 0x21, 175}, /* 0x22 */
607+ {0x4e, 0x22, 189}, /* 0x23 */
608+ {0xde, 0x26, 194}, /* 0x24 */
609+ {0x62, 0x06, 202}, /* 0x25 */
610+ {0x3f, 0x03, 229}, /* 0x26 */
611+ {0xb8, 0x06, 234}, /* 0x27 */
612+ {0x34, 0x02, 253}, /* 0x28 */
613+ {0x58, 0x04, 255}, /* 0x29 */
614+ {0x24, 0x01, 265}, /* 0x2a */
615+ {0x9b, 0x02, 267}, /* 0x2b */
616+ {0x70, 0x05, 270}, /* 0x2c */
617+ {0x25, 0x01, 272}, /* 0x2d */
618+ {0x9c, 0x02, 277}, /* 0x2e */
619+ {0x27, 0x01, 286}, /* 0x2f */
620+ {0x3c, 0x02, 291}, /* 0x30 */
621+ {0xef, 0x0a, 292}, /* 0x31 */
622+ {0xf6, 0x0a, 310}, /* 0x32 */
623+ {0x95, 0x01, 315}, /* 0x33 */
624+ {0xf0, 0x09, 324}, /* 0x34 */
625+ {0xfe, 0x0a, 331}, /* 0x35 */
626+ {0xf3, 0x09, 332}, /* 0x36 */
627+ {0xea, 0x08, 340}, /* 0x37 */
628+ {0xe8, 0x07, 376}, /* 0x38 */
629+ {0xde, 0x06, 389}, /* 0x39 */
630+ {0x52, 0x2a, 54}, /* 0x3a 301 TV */
631+ {0x52, 0x6a, 27}, /* 0x3b 301 TV */
632+ {0x62, 0x24, 70}, /* 0x3c 301 TV */
633+ {0x62, 0x64, 70}, /* 0x3d 301 TV */
634+ {0xa8, 0x4c, 30}, /* 0x3e 301 TV */
635+ {0x20, 0x26, 33}, /* 0x3f 301 TV */
636+ {0x31, 0xc2, 39}, /* 0x40 */
637+ {0x60, 0x36, 30}, /* 0x41 Chrontel */
638+ {0x40, 0x4a, 28}, /* 0x42 Chrontel */
639+ {0x9f, 0x46, 44}, /* 0x43 Chrontel */
640+ {0x97, 0x2c, 26}, /* 0x44 */
641+ {0x44, 0xe4, 25}, /* 0x45 Chrontel */
642+ {0x7e, 0x32, 47}, /* 0x46 Chrontel */
643+ {0x8a, 0x24, 31}, /* 0x47 Chrontel */
644+ {0x97, 0x2c, 26}, /* 0x48 Chrontel */
645+ {0xce, 0x3c, 39}, /* 0x49 */
646+ {0x52, 0x4a, 36}, /* 0x4a Chrontel */
647+ {0x34, 0x61, 95}, /* 0x4b */
648+ {0x78, 0x27, 108}, /* 0x4c - was 102 */
649+ {0x66, 0x43, 123}, /* 0x4d Modes 0x26-0x28 (1400x1050) */
650+ {0x41, 0x4e, 21}, /* 0x4e */
651+ {0xa1, 0x4a, 29}, /* 0x4f Chrontel */
652+ {0x19, 0x42, 42}, /* 0x50 */
653+ {0x54, 0x46, 58}, /* 0x51 Chrontel */
654+ {0x25, 0x42, 61}, /* 0x52 */
655+ {0x44, 0x44, 66}, /* 0x53 Chrontel */
656+ {0x3a, 0x62, 70}, /* 0x54 Chrontel */
657+ {0x62, 0xc6, 34}, /* 0x55 848x480-60 */
658+ {0x6a, 0xc6, 37}, /* 0x56 848x480-75 - TEMP */
659+ {0xbf, 0xc8, 35}, /* 0x57 856x480-38i,60 */
660+ {0x30, 0x23, 88}, /* 0x58 1360x768-62 (is 60Hz!) */
661+ {0x52, 0x07, 149}, /* 0x59 1280x960-85 */
662+ {0x56, 0x07, 156}, /* 0x5a 1400x1050-75 */
663+ {0x70, 0x29, 81}, /* 0x5b 1280x768 LCD */
664+ {0x45, 0x25, 83}, /* 0x5c 1280x800 */
665+ {0x70, 0x0a, 147}, /* 0x5d 1680x1050 */
666+ {0x70, 0x24, 162}, /* 0x5e 1600x1200 */
667+ {0x5a, 0x64, 65}, /* 0x5f 1280x720 - temp */
668+ {0x63, 0x46, 68}, /* 0x60 1280x768_2 */
669+ {0x31, 0x42, 79}, /* 0x61 1280x768_3 - temp */
670+ {0, 0, 0}, /* 0x62 - custom (will be filled out at run-time) */
671+ {0x5a, 0x64, 65}, /* 0x63 1280x720 (LCD LVDS) */
672+ {0x70, 0x28, 90}, /* 0x64 1152x864@60 */
673+ {0x41, 0xc4, 32}, /* 0x65 848x480@60 */
674+ {0x5c, 0xc6, 32}, /* 0x66 856x480@60 */
675+ {0x76, 0xe7, 27}, /* 0x67 720x480@60 */
676+ {0x5f, 0xc6, 33}, /* 0x68 720/768x576@60 */
677+ {0x52, 0x27, 75}, /* 0x69 1920x1080i 60Hz interlaced */
678+ {0x7c, 0x6b, 38}, /* 0x6a 960x540@60 */
679+ {0xe3, 0x56, 41}, /* 0x6b 960x600@60 */
680+ {0x45, 0x25, 83}, /* 0x6c 1280x800 */
681+ {0x70, 0x28, 90}, /* 0x6d 1152x864@60 */
682+ {0x15, 0xe1, 20}, /* 0x6e 640x400@60 (fake, not actually used) */
683+ {0x5f, 0xc6, 33}, /* 0x6f 720x576@60 */
684+ {0x37, 0x5a, 10}, /* 0x70 320x200@60 (fake, not actually used) */
685+ {0x2b, 0xc2, 35} /* 0x71 768@576@60 */
686+};
687+
688+#endif