4 * General structure definitions for universal mode switching modules
6 * Copyright (C) 2001-2004 by Thomas Winischhofer, Vienna, Austria
8 * If distributed as part of the Linux kernel, the following license terms
11 * * This program is free software; you can redistribute it and/or modify
12 * * it under the terms of the GNU General Public License as published by
13 * * the Free Software Foundation; either version 2 of the named License,
14 * * or any later version.
16 * * This program is distributed in the hope that it will be useful,
17 * * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * * GNU General Public License for more details.
21 * * You should have received a copy of the GNU General Public License
22 * * along with this program; if not, write to the Free Software
23 * * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
25 * Otherwise, the following license terms apply:
27 * * Redistribution and use in source and binary forms, with or without
28 * * modification, are permitted provided that the following conditions
30 * * 1) Redistributions of source code must retain the above copyright
31 * * notice, this list of conditions and the following disclaimer.
32 * * 2) Redistributions in binary form must reproduce the above copyright
33 * * notice, this list of conditions and the following disclaimer in the
34 * * documentation and/or other materials provided with the distribution.
35 * * 3) The name of the author may not be used to endorse or promote products
36 * * derived from this software without specific prior written permission.
38 * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESSED OR
39 * * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
40 * * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
41 * * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
42 * * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
43 * * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
44 * * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
45 * * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
46 * * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
47 * * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
49 * Author: Thomas Winischhofer <thomas@winischhofer.net>
62 typedef struct _SiS_PanelDelayTblStruct
65 } SiS_PanelDelayTblStruct
;
67 typedef struct _SiS_LCDDataStruct
77 typedef struct _SiS_TVDataStruct
94 typedef struct _SiS_LVDSDataStruct
100 } SiS_LVDSDataStruct
;
102 typedef struct _SiS_LVDSDesStruct
108 typedef struct _SiS_LVDSCRT1DataStruct
111 } SiS_LVDSCRT1DataStruct
;
113 typedef struct _SiS_LCDACRT1DataStruct
116 } SiS_LCDACRT1DataStruct
;
118 typedef struct _SiS_CHTVRegDataStruct
121 } SiS_CHTVRegDataStruct
;
123 typedef struct _SiS_StStruct
127 UCHAR St_StTableIndex
;
130 UCHAR VB_StTVFlickerIndex
;
131 UCHAR VB_StTVEdgeIndex
;
132 UCHAR VB_StTVYFilterIndex
;
136 typedef struct _SiS_VBModeStruct
139 UCHAR VB_TVDelayIndex
;
140 UCHAR VB_TVFlickerIndex
;
141 UCHAR VB_TVPhaseIndex
;
142 UCHAR VB_TVYFilterIndex
;
143 UCHAR VB_LCDDelayIndex
;
148 typedef struct _SiS_StandTableStruct
159 } SiS_StandTableStruct
;
161 typedef struct _SiS_ExtStruct
167 UCHAR VB_ExtTVFlickerIndex
;
168 UCHAR VB_ExtTVEdgeIndex
;
169 UCHAR VB_ExtTVYFilterIndex
;
170 UCHAR VB_ExtTVYFilterIndexROM661
;
175 typedef struct _SiS_Ext2Struct
181 UCHAR Ext_CRT2CRTC_NS
;
188 typedef struct _SiS_Part2PortTblStruct
191 } SiS_Part2PortTblStruct
;
193 typedef struct _SiS_CRT1TableStruct
196 } SiS_CRT1TableStruct
;
198 typedef struct _SiS_MCLKDataStruct
200 UCHAR SR28
,SR29
,SR2A
;
202 } SiS_MCLKDataStruct
;
204 typedef struct _SiS_VCLKDataStruct
208 } SiS_VCLKDataStruct
;
210 typedef struct _SiS_VBVCLKDataStruct
212 UCHAR Part4_A
,Part4_B
;
214 } SiS_VBVCLKDataStruct
;
216 typedef struct _SiS_StResInfoStruct
220 } SiS_StResInfoStruct
;
222 typedef struct _SiS_ModeResInfoStruct
228 } SiS_ModeResInfoStruct
;
232 typedef UCHAR DRAM4Type
[4];
234 /* Defines for SiS_CustomT */
235 /* Never change these for sisfb compatibility */
237 #define CUT_FORCENONE 1
238 #define CUT_BARCO1366 2
239 #define CUT_BARCO1024 3
240 #define CUT_COMPAQ1280 4
241 #define CUT_COMPAQ12802 5
242 #define CUT_PANEL848 6
243 #define CUT_CLEVO1024 7
244 #define CUT_CLEVO10242 8
245 #define CUT_CLEVO1400 9
246 #define CUT_CLEVO14002 10
247 #define CUT_UNIWILL1024 11
248 #define CUT_ASUSL3000D 12
249 #define CUT_UNIWILL10242 13
250 #define CUT_ACER1280 14
251 #define CUT_COMPAL1400_1 15
252 #define CUT_COMPAL1400_2 16
253 #define CUT_ASUSA2H_1 17
254 #define CUT_ASUSA2H_2 18
256 typedef struct _SiS_Private
261 SISIOADDRESS SiS_P3c4
;
262 SISIOADDRESS SiS_P3d4
;
263 SISIOADDRESS SiS_P3c0
;
264 SISIOADDRESS SiS_P3ce
;
265 SISIOADDRESS SiS_P3c2
;
266 SISIOADDRESS SiS_P3ca
;
267 SISIOADDRESS SiS_P3c6
;
268 SISIOADDRESS SiS_P3c7
;
269 SISIOADDRESS SiS_P3c8
;
270 SISIOADDRESS SiS_P3c9
;
271 SISIOADDRESS SiS_P3cb
;
272 SISIOADDRESS SiS_P3cd
;
273 SISIOADDRESS SiS_P3da
;
274 SISIOADDRESS SiS_Part1Port
;
275 SISIOADDRESS SiS_Part2Port
;
276 SISIOADDRESS SiS_Part3Port
;
277 SISIOADDRESS SiS_Part4Port
;
278 SISIOADDRESS SiS_Part5Port
;
279 SISIOADDRESS SiS_VidCapt
;
280 SISIOADDRESS SiS_VidPlay
;
281 USHORT SiS_IF_DEF_LVDS
;
282 USHORT SiS_IF_DEF_CH70xx
;
283 USHORT SiS_IF_DEF_CONEX
;
284 USHORT SiS_IF_DEF_TRUMPION
;
285 USHORT SiS_IF_DEF_DSTN
;
286 USHORT SiS_IF_DEF_FSTN
;
290 USHORT SiS_CP1
, SiS_CP2
, SiS_CP3
, SiS_CP4
;
294 BOOLEAN SiS_NeedRomModeData
;
295 BOOLEAN PanelSelfDetected
;
297 BOOLEAN SiS_CHSOverScan
;
302 USHORT SiS_Backup70xx
;
306 UCHAR EMI_30
,EMI_31
,EMI_32
,EMI_33
;
310 USHORT SiS_flag_clearbuffer
;
313 UCHAR SiS_DataBusWidth
;
317 USHORT SiS_LCDResInfo
;
318 USHORT SiS_LCDTypeInfo
;
320 USHORT SiS_LCDInfo661
;
322 USHORT SiS_VBExtInfo
;
324 USHORT SiS_SelectCRT2Rate
;
326 USHORT SiS_RVBHCFACT
;
337 USHORT SiS_NewFlickerMode
;
345 USHORT SiS_DDC_Index
;
347 USHORT SiS_DDC_NData
;
350 USHORT SiS_DDC_DeviceAddr
;
351 USHORT SiS_DDC_ReadAddr
;
352 USHORT SiS_DDC_SecAddr
;
353 USHORT SiS_ChrontelInit
;
354 BOOLEAN SiS_SensibleSR11
;
355 USHORT SiS661LCD2TableSize
;
357 USHORT SiS_PanelMinLVDS
;
358 USHORT SiS_PanelMin301
;
360 const SiS_StStruct
*SiS_SModeIDTable
;
361 SiS_StandTableStruct
*SiS_StandTable
;
362 const SiS_ExtStruct
*SiS_EModeIDTable
;
363 const SiS_Ext2Struct
*SiS_RefIndex
;
364 const SiS_VBModeStruct
*SiS_VBModeIDTable
;
365 const SiS_CRT1TableStruct
*SiS_CRT1Table
;
366 const SiS_MCLKDataStruct
*SiS_MCLKData_0
;
367 const SiS_MCLKDataStruct
*SiS_MCLKData_1
;
368 SiS_VCLKDataStruct
*SiS_VCLKData
;
369 SiS_VBVCLKDataStruct
*SiS_VBVCLKData
;
370 const SiS_StResInfoStruct
*SiS_StResInfo
;
371 const SiS_ModeResInfoStruct
*SiS_ModeResInfo
;
373 const UCHAR
*pSiS_OutputSelect
;
374 const UCHAR
*pSiS_SoftSetting
;
376 const DRAM4Type
*SiS_SR15
; /* pointer : point to array */
379 const DRAM4Type
*SiS_CR40
; /* pointer : point to array */
390 UCHAR
*pSiS_CRT2Data_1_2
;
391 UCHAR
*pSiS_CRT2Data_4_D
;
392 UCHAR
*pSiS_CRT2Data_4_E
;
393 UCHAR
*pSiS_CRT2Data_4_10
;
394 const USHORT
*pSiS_RGBSenseData
;
395 const USHORT
*pSiS_VideoSenseData
;
396 const USHORT
*pSiS_YCSenseData
;
397 const USHORT
*pSiS_RGBSenseData2
;
398 const USHORT
*pSiS_VideoSenseData2
;
399 const USHORT
*pSiS_YCSenseData2
;
402 const SiS_PanelDelayTblStruct
*SiS_PanelDelayTbl
;
403 const SiS_PanelDelayTblStruct
*SiS_PanelDelayTblLVDS
;
407 const UCHAR
*SiS_NTSCPhase
;
408 const UCHAR
*SiS_PALPhase
;
409 const UCHAR
*SiS_NTSCPhase2
;
410 const UCHAR
*SiS_PALPhase2
;
411 const UCHAR
*SiS_PALMPhase
;
412 const UCHAR
*SiS_PALNPhase
;
413 const UCHAR
*SiS_PALMPhase2
;
414 const UCHAR
*SiS_PALNPhase2
;
415 const UCHAR
*SiS_SpecialPhase
;
416 const UCHAR
*SiS_SpecialPhaseM
;
417 const UCHAR
*SiS_SpecialPhaseJ
;
418 const SiS_LCDDataStruct
*SiS_ExtLCD1024x768Data
;
419 const SiS_LCDDataStruct
*SiS_St2LCD1024x768Data
;
420 const SiS_LCDDataStruct
*SiS_LCD1280x720Data
;
421 const SiS_LCDDataStruct
*SiS_StLCD1280x768_2Data
;
422 const SiS_LCDDataStruct
*SiS_ExtLCD1280x768_2Data
;
423 const SiS_LCDDataStruct
*SiS_LCD1280x768_3Data
;
424 const SiS_LCDDataStruct
*SiS_LCD1280x800Data
;
425 const SiS_LCDDataStruct
*SiS_LCD1280x960Data
;
426 const SiS_LCDDataStruct
*SiS_ExtLCD1280x1024Data
;
427 const SiS_LCDDataStruct
*SiS_St2LCD1280x1024Data
;
428 const SiS_LCDDataStruct
*SiS_StLCD1400x1050Data
;
429 const SiS_LCDDataStruct
*SiS_ExtLCD1400x1050Data
;
430 const SiS_LCDDataStruct
*SiS_StLCD1600x1200Data
;
431 const SiS_LCDDataStruct
*SiS_ExtLCD1600x1200Data
;
432 const SiS_LCDDataStruct
*SiS_LCD1680x1050Data
;
433 const SiS_LCDDataStruct
*SiS_NoScaleData
;
434 const SiS_TVDataStruct
*SiS_StPALData
;
435 const SiS_TVDataStruct
*SiS_ExtPALData
;
436 const SiS_TVDataStruct
*SiS_StNTSCData
;
437 const SiS_TVDataStruct
*SiS_ExtNTSCData
;
438 const SiS_TVDataStruct
*SiS_St1HiTVData
;
439 const SiS_TVDataStruct
*SiS_St2HiTVData
;
440 const SiS_TVDataStruct
*SiS_ExtHiTVData
;
441 const SiS_TVDataStruct
*SiS_St525iData
;
442 const SiS_TVDataStruct
*SiS_St525pData
;
443 const SiS_TVDataStruct
*SiS_St750pData
;
444 const SiS_TVDataStruct
*SiS_Ext525iData
;
445 const SiS_TVDataStruct
*SiS_Ext525pData
;
446 const SiS_TVDataStruct
*SiS_Ext750pData
;
447 const UCHAR
*SiS_NTSCTiming
;
448 const UCHAR
*SiS_PALTiming
;
449 const UCHAR
*SiS_HiTVExtTiming
;
450 const UCHAR
*SiS_HiTVSt1Timing
;
451 const UCHAR
*SiS_HiTVSt2Timing
;
452 const UCHAR
*SiS_HiTVGroup3Data
;
453 const UCHAR
*SiS_HiTVGroup3Simu
;
455 const UCHAR
*SiS_HiTVTextTiming
;
456 const UCHAR
*SiS_HiTVGroup3Text
;
459 const SiS_Part2PortTblStruct
*SiS_CRT2Part2_1024x768_1
;
460 const SiS_Part2PortTblStruct
*SiS_CRT2Part2_1280x1024_1
;
461 const SiS_Part2PortTblStruct
*SiS_CRT2Part2_1024x768_2
;
462 const SiS_Part2PortTblStruct
*SiS_CRT2Part2_1280x1024_2
;
463 const SiS_Part2PortTblStruct
*SiS_CRT2Part2_1024x768_3
;
464 const SiS_Part2PortTblStruct
*SiS_CRT2Part2_1280x1024_3
;
468 const SiS_LVDSDataStruct
*SiS_LVDS800x600Data_1
;
469 const SiS_LVDSDataStruct
*SiS_LVDS800x600Data_2
;
470 const SiS_LVDSDataStruct
*SiS_LVDS1024x768Data_1
;
471 const SiS_LVDSDataStruct
*SiS_LVDS1024x768Data_2
;
472 const SiS_LVDSDataStruct
*SiS_LVDS1280x1024Data_1
;
473 const SiS_LVDSDataStruct
*SiS_LVDS1280x1024Data_2
;
474 const SiS_LVDSDataStruct
*SiS_LVDS1280x960Data_1
;
475 const SiS_LVDSDataStruct
*SiS_LVDS1280x960Data_2
;
476 const SiS_LVDSDataStruct
*SiS_LVDS1400x1050Data_1
;
477 const SiS_LVDSDataStruct
*SiS_LVDS1400x1050Data_2
;
478 const SiS_LVDSDataStruct
*SiS_LVDS1600x1200Data_1
;
479 const SiS_LVDSDataStruct
*SiS_LVDS1600x1200Data_2
;
480 const SiS_LVDSDataStruct
*SiS_LVDS1280x768Data_1
;
481 const SiS_LVDSDataStruct
*SiS_LVDS1280x768Data_2
;
482 const SiS_LVDSDataStruct
*SiS_LVDS1024x600Data_1
;
483 const SiS_LVDSDataStruct
*SiS_LVDS1024x600Data_2
;
484 const SiS_LVDSDataStruct
*SiS_LVDS1152x768Data_1
;
485 const SiS_LVDSDataStruct
*SiS_LVDS1152x768Data_2
;
486 const SiS_LVDSDataStruct
*SiS_LVDS640x480Data_1
;
487 const SiS_LVDSDataStruct
*SiS_LVDS640x480Data_2
;
488 const SiS_LVDSDataStruct
*SiS_LVDS320x480Data_1
;
489 const SiS_LVDSDataStruct
*SiS_LVDSXXXxXXXData_1
;
490 const SiS_LVDSDataStruct
*SiS_LVDSBARCO1366Data_1
;
491 const SiS_LVDSDataStruct
*SiS_LVDSBARCO1366Data_2
;
492 const SiS_LVDSDataStruct
*SiS_LVDSBARCO1024Data_1
;
493 const SiS_LVDSDataStruct
*SiS_LVDSBARCO1024Data_2
;
494 const SiS_LVDSDataStruct
*SiS_LVDS848x480Data_1
;
495 const SiS_LVDSDataStruct
*SiS_LVDS848x480Data_2
;
496 const SiS_LVDSDataStruct
*SiS_CHTVUNTSCData
;
497 const SiS_LVDSDataStruct
*SiS_CHTVONTSCData
;
498 const SiS_LVDSDataStruct
*SiS_CHTVUPALData
;
499 const SiS_LVDSDataStruct
*SiS_CHTVOPALData
;
500 const SiS_LVDSDataStruct
*SiS_CHTVUPALMData
;
501 const SiS_LVDSDataStruct
*SiS_CHTVOPALMData
;
502 const SiS_LVDSDataStruct
*SiS_CHTVUPALNData
;
503 const SiS_LVDSDataStruct
*SiS_CHTVOPALNData
;
504 const SiS_LVDSDataStruct
*SiS_CHTVSOPALData
;
506 const SiS_LVDSDesStruct
*SiS_PanelType00_1
;
507 const SiS_LVDSDesStruct
*SiS_PanelType01_1
;
508 const SiS_LVDSDesStruct
*SiS_PanelType02_1
;
509 const SiS_LVDSDesStruct
*SiS_PanelType03_1
;
510 const SiS_LVDSDesStruct
*SiS_PanelType04_1
;
511 const SiS_LVDSDesStruct
*SiS_PanelType05_1
;
512 const SiS_LVDSDesStruct
*SiS_PanelType06_1
;
513 const SiS_LVDSDesStruct
*SiS_PanelType07_1
;
514 const SiS_LVDSDesStruct
*SiS_PanelType08_1
;
515 const SiS_LVDSDesStruct
*SiS_PanelType09_1
;
516 const SiS_LVDSDesStruct
*SiS_PanelType0a_1
;
517 const SiS_LVDSDesStruct
*SiS_PanelType0b_1
;
518 const SiS_LVDSDesStruct
*SiS_PanelType0c_1
;
519 const SiS_LVDSDesStruct
*SiS_PanelType0d_1
;
520 const SiS_LVDSDesStruct
*SiS_PanelType0e_1
;
521 const SiS_LVDSDesStruct
*SiS_PanelType0f_1
;
522 const SiS_LVDSDesStruct
*SiS_PanelTypeNS_1
;
523 const SiS_LVDSDesStruct
*SiS_PanelType00_2
;
524 const SiS_LVDSDesStruct
*SiS_PanelType01_2
;
525 const SiS_LVDSDesStruct
*SiS_PanelType02_2
;
526 const SiS_LVDSDesStruct
*SiS_PanelType03_2
;
527 const SiS_LVDSDesStruct
*SiS_PanelType04_2
;
528 const SiS_LVDSDesStruct
*SiS_PanelType05_2
;
529 const SiS_LVDSDesStruct
*SiS_PanelType06_2
;
530 const SiS_LVDSDesStruct
*SiS_PanelType07_2
;
531 const SiS_LVDSDesStruct
*SiS_PanelType08_2
;
532 const SiS_LVDSDesStruct
*SiS_PanelType09_2
;
533 const SiS_LVDSDesStruct
*SiS_PanelType0a_2
;
534 const SiS_LVDSDesStruct
*SiS_PanelType0b_2
;
535 const SiS_LVDSDesStruct
*SiS_PanelType0c_2
;
536 const SiS_LVDSDesStruct
*SiS_PanelType0d_2
;
537 const SiS_LVDSDesStruct
*SiS_PanelType0e_2
;
538 const SiS_LVDSDesStruct
*SiS_PanelType0f_2
;
539 const SiS_LVDSDesStruct
*SiS_PanelTypeNS_2
;
540 const SiS_LVDSDesStruct
*SiS_CHTVUNTSCDesData
;
541 const SiS_LVDSDesStruct
*SiS_CHTVONTSCDesData
;
542 const SiS_LVDSDesStruct
*SiS_CHTVUPALDesData
;
543 const SiS_LVDSDesStruct
*SiS_CHTVOPALDesData
;
545 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1800x600_1
;
546 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11024x768_1
;
547 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11280x1024_1
;
548 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11400x1050_1
;
549 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11280x768_1
;
550 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11024x600_1
;
551 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11152x768_1
;
552 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11600x1200_1
;
553 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1800x600_1_H
;
554 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11024x768_1_H
;
555 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11280x1024_1_H
;
556 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11400x1050_1_H
;
557 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11280x768_1_H
;
558 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11024x600_1_H
;
559 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11152x768_1_H
;
560 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11600x1200_1_H
;
561 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1800x600_2
;
562 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11024x768_2
;
563 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11280x1024_2
;
564 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11400x1050_2
;
565 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11280x768_2
;
566 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11024x600_2
;
567 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11152x768_2
;
568 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11600x1200_2
;
569 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1800x600_2_H
;
570 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11024x768_2_H
;
571 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11280x1024_2_H
;
572 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11400x1050_2_H
;
573 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11280x768_2_H
;
574 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11024x600_2_H
;
575 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11152x768_2_H
;
576 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT11600x1200_2_H
;
577 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1XXXxXXX_1
;
578 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1XXXxXXX_1_H
;
579 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1640x480_1
;
580 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1640x480_1_H
;
581 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1640x480_2
;
582 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1640x480_2_H
;
583 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1640x480_3
;
584 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1640x480_3_H
;
585 const SiS_LVDSCRT1DataStruct
*SiS_LVDSCRT1320x480_1
;
586 const SiS_LVDSCRT1DataStruct
*SiS_CHTVCRT1UNTSC
;
587 const SiS_LVDSCRT1DataStruct
*SiS_CHTVCRT1ONTSC
;
588 const SiS_LVDSCRT1DataStruct
*SiS_CHTVCRT1UPAL
;
589 const SiS_LVDSCRT1DataStruct
*SiS_CHTVCRT1OPAL
;
590 const SiS_LVDSCRT1DataStruct
*SiS_CHTVCRT1SOPAL
;
592 const SiS_CHTVRegDataStruct
*SiS_CHTVReg_UNTSC
;
593 const SiS_CHTVRegDataStruct
*SiS_CHTVReg_ONTSC
;
594 const SiS_CHTVRegDataStruct
*SiS_CHTVReg_UPAL
;
595 const SiS_CHTVRegDataStruct
*SiS_CHTVReg_OPAL
;
596 const SiS_CHTVRegDataStruct
*SiS_CHTVReg_UPALM
;
597 const SiS_CHTVRegDataStruct
*SiS_CHTVReg_OPALM
;
598 const SiS_CHTVRegDataStruct
*SiS_CHTVReg_UPALN
;
599 const SiS_CHTVRegDataStruct
*SiS_CHTVReg_OPALN
;
600 const SiS_CHTVRegDataStruct
*SiS_CHTVReg_SOPAL
;
602 const UCHAR
*SiS_CHTVVCLKUNTSC
;
603 const UCHAR
*SiS_CHTVVCLKONTSC
;
604 const UCHAR
*SiS_CHTVVCLKUPAL
;
605 const UCHAR
*SiS_CHTVVCLKOPAL
;
606 const UCHAR
*SiS_CHTVVCLKUPALM
;
607 const UCHAR
*SiS_CHTVVCLKOPALM
;
608 const UCHAR
*SiS_CHTVVCLKUPALN
;
609 const UCHAR
*SiS_CHTVVCLKOPALN
;
610 const UCHAR
*SiS_CHTVVCLKSOPAL
;
612 USHORT PanelXRes
, PanelHT
;
613 USHORT PanelYRes
, PanelVT
;
614 USHORT PanelHRS
, PanelHRE
;
615 USHORT PanelVRS
, PanelVRE
;
616 USHORT PanelVCLKIdx300
;
617 USHORT PanelVCLKIdx315
;
619 BOOLEAN UseCustomMode
;
620 BOOLEAN CRT1UsesCustomMode
;
639 USHORT CSRClock_CRT1
;
641 USHORT CModeFlag_CRT1
;
662 USHORT CP_Vendor
, CP_Product
;
663 BOOLEAN CP_HaveCustomData
;
664 int CP_PreferredX
, CP_PreferredY
, CP_PreferredIndex
;
665 int CP_MaxX
, CP_MaxY
, CP_MaxClock
;
666 BOOLEAN CP_Supports64048075
;
667 int CP_HDisplay
[7], CP_VDisplay
[7]; /* For Custom LCD panel dimensions */
668 int CP_HTotal
[7], CP_VTotal
[7];
669 int CP_HSyncStart
[7], CP_VSyncStart
[7];
670 int CP_HSyncEnd
[7], CP_VSyncEnd
[7];
671 int CP_HBlankStart
[7], CP_VBlankStart
[7];
672 int CP_HBlankEnd
[7], CP_VBlankEnd
[7];
674 BOOLEAN CP_DataValid
[7];
675 BOOLEAN CP_HSync_P
[7], CP_VSync_P
[7], CP_SyncValid
[7];