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
45 45
46#include "sisusb.h"46#include "sisusb.h"
47#include "sisusb_init.h"47#include "sisusb_init.h"
48#include "sisusb_tables.h"
48 49
49/*********************************************/50/*********************************************/
50/* POINTER INITIALIZATION */51/* POINTER INITIALIZATION */
drivers/usb/misc/sisusbvga/sisusb_init.h+0−631
@@ -147,637 +147,6 @@ · 146 unmodified lines
147#define SIS_VIDEO_PLAYBACK 0x02 - 0x30147#define SIS_VIDEO_PLAYBACK 0x02 - 0x30
148#define SIS_CRT2_PORT_04 0x04 - 0x30148#define SIS_CRT2_PORT_04 0x04 - 0x30
149 149
150static 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
161static 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
172static 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
183static 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
196static 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
201static 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
238static 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
269static 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
348static 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
406static 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
664static 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
781int SiSUSBSetMode(struct SiS_Private *SiS_Pr, unsigned short ModeNo);150int SiSUSBSetMode(struct SiS_Private *SiS_Pr, unsigned short ModeNo);
782int SiSUSBSetVESAMode(struct SiS_Private *SiS_Pr, unsigned short VModeNo);151int SiSUSBSetVESAMode(struct SiS_Private *SiS_Pr, unsigned short VModeNo);
783 152
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
57static 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
68static 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
79static 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
90static 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
103static 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
108static 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
145static 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
176static 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
255static 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
313static 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
571static 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