535 lines
11 KiB
C
535 lines
11 KiB
C
#ifndef _VB_STRUCT_
|
|
#define _VB_STRUCT_
|
|
|
|
#ifdef _INITNEW_
|
|
#define EXTERN
|
|
#else
|
|
#define EXTERN extern
|
|
#endif
|
|
|
|
|
|
|
|
|
|
typedef struct _XGI_PanelDelayTblStruct
|
|
{
|
|
UCHAR timer[2];
|
|
} XGI_PanelDelayTblStruct;
|
|
|
|
typedef struct _XGI_LCDDataStruct
|
|
{
|
|
USHORT RVBHCMAX;
|
|
USHORT RVBHCFACT;
|
|
USHORT VGAHT;
|
|
USHORT VGAVT;
|
|
USHORT LCDHT;
|
|
USHORT LCDVT;
|
|
} XGI_LCDDataStruct;
|
|
|
|
|
|
typedef struct _XGI_LVDSCRT1HDataStruct
|
|
{
|
|
UCHAR Reg[8];
|
|
} XGI_LVDSCRT1HDataStruct;
|
|
typedef struct _XGI_LVDSCRT1VDataStruct
|
|
{
|
|
UCHAR Reg[7];
|
|
} XGI_LVDSCRT1VDataStruct;
|
|
|
|
|
|
typedef struct _XGI_TVDataStruct
|
|
{
|
|
USHORT RVBHCMAX;
|
|
USHORT RVBHCFACT;
|
|
USHORT VGAHT;
|
|
USHORT VGAVT;
|
|
USHORT TVHDE;
|
|
USHORT TVVDE;
|
|
USHORT RVBHRS;
|
|
UCHAR FlickerMode;
|
|
USHORT HALFRVBHRS;
|
|
UCHAR RY1COE;
|
|
UCHAR RY2COE;
|
|
UCHAR RY3COE;
|
|
UCHAR RY4COE;
|
|
} XGI_TVDataStruct;
|
|
|
|
typedef struct _XGI_LVDSDataStruct
|
|
{
|
|
USHORT VGAHT;
|
|
USHORT VGAVT;
|
|
USHORT LCDHT;
|
|
USHORT LCDVT;
|
|
} XGI_LVDSDataStruct;
|
|
|
|
typedef struct _XGI_LVDSDesStruct
|
|
{
|
|
USHORT LCDHDES;
|
|
USHORT LCDVDES;
|
|
} XGI_LVDSDesStruct;
|
|
|
|
typedef struct _XGI_LVDSCRT1DataStruct
|
|
{
|
|
UCHAR CR[15];
|
|
} XGI_LVDSCRT1DataStruct;
|
|
|
|
/*add for LCDA*/
|
|
|
|
|
|
typedef struct _XGI_StStruct
|
|
{
|
|
UCHAR St_ModeID;
|
|
USHORT St_ModeFlag;
|
|
UCHAR St_StTableIndex;
|
|
UCHAR St_CRT2CRTC;
|
|
UCHAR St_CRT2CRTC2;
|
|
UCHAR St_ResInfo;
|
|
UCHAR VB_StTVFlickerIndex;
|
|
UCHAR VB_StTVEdgeIndex;
|
|
UCHAR VB_StTVYFilterIndex;
|
|
} XGI_StStruct;
|
|
|
|
typedef struct _XGI_StandTableStruct
|
|
{
|
|
UCHAR CRT_COLS;
|
|
UCHAR ROWS;
|
|
UCHAR CHAR_HEIGHT;
|
|
USHORT CRT_LEN;
|
|
UCHAR SR[4];
|
|
UCHAR MISC;
|
|
UCHAR CRTC[0x19];
|
|
UCHAR ATTR[0x14];
|
|
UCHAR GRC[9];
|
|
} XGI_StandTableStruct;
|
|
|
|
typedef struct _XGI_ExtStruct
|
|
{
|
|
UCHAR Ext_ModeID;
|
|
USHORT Ext_ModeFlag;
|
|
USHORT Ext_ModeInfo;
|
|
USHORT Ext_Point;
|
|
USHORT Ext_VESAID;
|
|
UCHAR Ext_VESAMEMSize;
|
|
UCHAR Ext_RESINFO;
|
|
UCHAR VB_ExtTVFlickerIndex;
|
|
UCHAR VB_ExtTVEdgeIndex;
|
|
UCHAR VB_ExtTVYFilterIndex;
|
|
UCHAR REFindex;
|
|
} XGI_ExtStruct;
|
|
|
|
typedef struct _XGI_Ext2Struct
|
|
{
|
|
USHORT Ext_InfoFlag;
|
|
UCHAR Ext_CRT1CRTC;
|
|
UCHAR Ext_CRTVCLK;
|
|
UCHAR Ext_CRT2CRTC;
|
|
UCHAR Ext_CRT2CRTC2;
|
|
UCHAR ModeID;
|
|
USHORT XRes;
|
|
USHORT YRes;
|
|
/* USHORT ROM_OFFSET; */
|
|
} XGI_Ext2Struct;
|
|
|
|
|
|
typedef struct _XGI_MCLKDataStruct
|
|
{
|
|
UCHAR SR28,SR29,SR2A;
|
|
USHORT CLOCK;
|
|
} XGI_MCLKDataStruct;
|
|
|
|
typedef struct _XGI_ECLKDataStruct
|
|
{
|
|
UCHAR SR2E,SR2F,SR30;
|
|
USHORT CLOCK;
|
|
} XGI_ECLKDataStruct;
|
|
|
|
typedef struct _XGI_VCLKDataStruct
|
|
{
|
|
UCHAR SR2B,SR2C;
|
|
USHORT CLOCK;
|
|
} XGI_VCLKDataStruct;
|
|
|
|
typedef struct _XGI_VBVCLKDataStruct
|
|
{
|
|
UCHAR Part4_A,Part4_B;
|
|
USHORT CLOCK;
|
|
} XGI_VBVCLKDataStruct;
|
|
|
|
typedef struct _XGI_StResInfoStruct
|
|
{
|
|
USHORT HTotal;
|
|
USHORT VTotal;
|
|
} XGI_StResInfoStruct;
|
|
|
|
typedef struct _XGI_ModeResInfoStruct
|
|
{
|
|
USHORT HTotal;
|
|
USHORT VTotal;
|
|
UCHAR XChar;
|
|
UCHAR YChar;
|
|
} XGI_ModeResInfoStruct;
|
|
|
|
typedef struct _XGI_LCDNBDesStruct
|
|
{
|
|
UCHAR NB[12];
|
|
} XGI_LCDNBDesStruct;
|
|
/*add for new UNIVGABIOS*/
|
|
typedef struct _XGI_LCDDesStruct
|
|
{
|
|
USHORT LCDHDES;
|
|
USHORT LCDHRS;
|
|
USHORT LCDVDES;
|
|
USHORT LCDVRS;
|
|
} XGI_LCDDesStruct;
|
|
|
|
typedef struct _XGI_LCDDataTablStruct
|
|
{
|
|
UCHAR PANELID;
|
|
USHORT MASK;
|
|
USHORT CAP;
|
|
USHORT DATAPTR;
|
|
} XGI_LCDDataTablStruct;
|
|
|
|
typedef struct _XGI_TVTablDataStruct
|
|
{
|
|
USHORT MASK;
|
|
USHORT CAP;
|
|
USHORT DATAPTR;
|
|
} XGI_TVDataTablStruct;
|
|
|
|
typedef struct _XGI330_LCDDesDataStruct
|
|
{
|
|
USHORT LCDHDES;
|
|
USHORT LCDHRS;
|
|
USHORT LCDVDES;
|
|
USHORT LCDVRS;
|
|
} XGI330_LCDDataDesStruct;
|
|
|
|
|
|
typedef struct _XGI330_LVDSDataStruct
|
|
{
|
|
USHORT VGAHT;
|
|
USHORT VGAVT;
|
|
USHORT LCDHT;
|
|
USHORT LCDVT;
|
|
} XGI330_LVDSDataStruct;
|
|
|
|
typedef struct _XGI330_LCDDesDataStruct2
|
|
{
|
|
USHORT LCDHDES;
|
|
USHORT LCDHRS;
|
|
USHORT LCDVDES;
|
|
USHORT LCDVRS;
|
|
USHORT LCDHSync;
|
|
USHORT LCDVSync;
|
|
} XGI330_LCDDataDesStruct2;
|
|
|
|
typedef struct _XGI330_LCDDataStruct
|
|
{
|
|
USHORT RVBHCMAX;
|
|
USHORT RVBHCFACT;
|
|
USHORT VGAHT;
|
|
USHORT VGAVT;
|
|
USHORT LCDHT;
|
|
USHORT LCDVT;
|
|
} XGI330_LCDDataStruct;
|
|
|
|
|
|
typedef struct _XGI330_TVDataStruct
|
|
{
|
|
USHORT RVBHCMAX;
|
|
USHORT RVBHCFACT;
|
|
USHORT VGAHT;
|
|
USHORT VGAVT;
|
|
USHORT TVHDE;
|
|
USHORT TVVDE;
|
|
USHORT RVBHRS;
|
|
UCHAR FlickerMode;
|
|
USHORT HALFRVBHRS;
|
|
} XGI330_TVDataStruct;
|
|
|
|
typedef struct _XGI330_LCDDataTablStruct
|
|
{
|
|
UCHAR PANELID;
|
|
USHORT MASK;
|
|
USHORT CAP;
|
|
USHORT DATAPTR;
|
|
} XGI330_LCDDataTablStruct;
|
|
|
|
typedef struct _XGI330_TVDataTablStruct
|
|
{
|
|
USHORT MASK;
|
|
USHORT CAP;
|
|
USHORT DATAPTR;
|
|
} XGI330_TVDataTablStruct;
|
|
|
|
|
|
typedef struct _XGI330_CHTVDataStruct
|
|
{
|
|
USHORT VGAHT;
|
|
USHORT VGAVT;
|
|
USHORT LCDHT;
|
|
USHORT LCDVT;
|
|
} XGI330_CHTVDataStruct;
|
|
|
|
typedef struct _XGI_TimingHStruct
|
|
{
|
|
UCHAR data[8];
|
|
} XGI_TimingHStruct;
|
|
|
|
typedef struct _XGI_TimingVStruct
|
|
{
|
|
UCHAR data[7];
|
|
} XGI_TimingVStruct;
|
|
|
|
typedef struct _XGI_CH7007TV_TimingHStruct
|
|
{
|
|
UCHAR data[10];
|
|
} XGI_CH7007TV_TimingHStruct;
|
|
|
|
typedef struct _XGI_CH7007TV_TimingVStruct
|
|
{
|
|
UCHAR data[10];
|
|
} XGI_CH7007TV_TimingVStruct;
|
|
|
|
typedef struct _XGI_XG21CRT1Struct
|
|
{
|
|
UCHAR ModeID,CR02,CR03,CR15,CR16;
|
|
} XGI_XG21CRT1Struct;
|
|
|
|
typedef struct _XGI330_CHTVRegDataStruct
|
|
{
|
|
UCHAR Reg[16];
|
|
} XGI330_CHTVRegDataStruct;
|
|
|
|
typedef struct _XGI330_LCDCapStruct
|
|
{
|
|
UCHAR LCD_ID;
|
|
USHORT LCD_Capability;
|
|
UCHAR LCD_SetFlag;
|
|
UCHAR LCD_DelayCompensation;
|
|
UCHAR LCD_HSyncWidth;
|
|
UCHAR LCD_VSyncWidth;
|
|
UCHAR LCD_VCLK;
|
|
UCHAR LCDA_VCLKData1;
|
|
UCHAR LCDA_VCLKData2;
|
|
UCHAR LCUCHAR_VCLKData1;
|
|
UCHAR LCUCHAR_VCLKData2;
|
|
UCHAR PSC_S1;
|
|
UCHAR PSC_S2;
|
|
UCHAR PSC_S3;
|
|
UCHAR PSC_S4;
|
|
UCHAR PSC_S5;
|
|
UCHAR PWD_2B;
|
|
UCHAR PWD_2C;
|
|
UCHAR PWD_2D;
|
|
UCHAR PWD_2E;
|
|
UCHAR PWD_2F;
|
|
UCHAR Spectrum_31;
|
|
UCHAR Spectrum_32;
|
|
UCHAR Spectrum_33;
|
|
UCHAR Spectrum_34;
|
|
} XGI330_LCDCapStruct;
|
|
|
|
typedef struct _XGI21_LVDSCapStruct
|
|
{
|
|
USHORT LVDS_Capability;
|
|
USHORT LVDSHT;
|
|
USHORT LVDSVT;
|
|
USHORT LVDSHDE;
|
|
USHORT LVDSVDE;
|
|
USHORT LVDSHFP;
|
|
USHORT LVDSVFP;
|
|
USHORT LVDSHSYNC;
|
|
USHORT LVDSVSYNC;
|
|
UCHAR VCLKData1;
|
|
UCHAR VCLKData2;
|
|
UCHAR PSC_S1;
|
|
UCHAR PSC_S2;
|
|
UCHAR PSC_S3;
|
|
UCHAR PSC_S4;
|
|
UCHAR PSC_S5;
|
|
} XGI21_LVDSCapStruct;
|
|
|
|
typedef struct _XGI_CRT1TableStruct
|
|
{
|
|
UCHAR CR[16];
|
|
} XGI_CRT1TableStruct;
|
|
|
|
|
|
typedef struct _XGI330_VCLKDataStruct
|
|
{
|
|
UCHAR SR2B,SR2C;
|
|
USHORT CLOCK;
|
|
} XGI330_VCLKDataStruct;
|
|
|
|
typedef struct _XGI301C_Tap4TimingStruct
|
|
{
|
|
USHORT DE;
|
|
UCHAR Reg[64]; /* C0-FF */
|
|
} XGI301C_Tap4TimingStruct;
|
|
|
|
typedef struct _XGI_New_StandTableStruct
|
|
{
|
|
UCHAR CRT_COLS;
|
|
UCHAR ROWS;
|
|
UCHAR CHAR_HEIGHT;
|
|
USHORT CRT_LEN;
|
|
UCHAR SR[4];
|
|
UCHAR MISC;
|
|
UCHAR CRTC[0x19];
|
|
UCHAR ATTR[0x14];
|
|
UCHAR GRC[9];
|
|
} XGI_New_StandTableStruct;
|
|
|
|
typedef UCHAR DRAM8Type[8];
|
|
typedef UCHAR DRAM4Type[4];
|
|
typedef UCHAR DRAM32Type[32];
|
|
typedef UCHAR DRAM2Type[2];
|
|
|
|
typedef struct _VB_DEVICE_INFO VB_DEVICE_INFO;
|
|
typedef VB_DEVICE_INFO * PVB_DEVICE_INFO;
|
|
|
|
struct _VB_DEVICE_INFO
|
|
{
|
|
BOOLEAN ISXPDOS;
|
|
ULONG P3c4,P3d4,P3c0,P3ce,P3c2,P3cc;
|
|
ULONG P3ca,P3c6,P3c7,P3c8,P3c9,P3da;
|
|
ULONG Part0Port,Part1Port,Part2Port;
|
|
ULONG Part3Port,Part4Port,Part5Port;
|
|
USHORT RVBHCFACT,RVBHCMAX,RVBHRS;
|
|
USHORT VGAVT,VGAHT,VGAVDE,VGAHDE;
|
|
USHORT VT,HT,VDE,HDE;
|
|
USHORT LCDHRS,LCDVRS,LCDHDES,LCDVDES;
|
|
|
|
USHORT ModeType;
|
|
USHORT IF_DEF_LVDS,IF_DEF_TRUMPION,IF_DEF_DSTN;/* ,IF_DEF_FSTN; add for dstn */
|
|
USHORT IF_DEF_CRT2Monitor,IF_DEF_VideoCapture;
|
|
USHORT IF_DEF_LCDA,IF_DEF_CH7017,IF_DEF_YPbPr,IF_DEF_ScaleLCD,IF_DEF_OEMUtil,IF_DEF_PWD;
|
|
USHORT IF_DEF_ExpLink;
|
|
USHORT IF_DEF_CH7005,IF_DEF_HiVision;
|
|
USHORT IF_DEF_CH7007; /* Billy 2007/05/03 */
|
|
USHORT LCDResInfo,LCDTypeInfo, VBType;/*301b*/
|
|
USHORT VBInfo,TVInfo,LCDInfo, Set_VGAType;
|
|
USHORT VBExtInfo;/*301lv*/
|
|
USHORT SetFlag;
|
|
USHORT NewFlickerMode;
|
|
USHORT SelectCRT2Rate;
|
|
|
|
PUCHAR ROMAddr;
|
|
PUCHAR FBAddr;
|
|
ULONG BaseAddr;
|
|
ULONG RelIO;
|
|
|
|
DRAM4Type *CR6B;
|
|
DRAM4Type *CR6E;
|
|
DRAM32Type *CR6F;
|
|
DRAM2Type *CR89;
|
|
|
|
DRAM8Type *SR15; /* pointer : point to array */
|
|
DRAM8Type *CR40;
|
|
UCHAR *pSoftSetting;
|
|
UCHAR *pOutputSelect;
|
|
|
|
USHORT *pRGBSenseData;
|
|
USHORT *pRGBSenseData2; /*301b*/
|
|
USHORT *pVideoSenseData;
|
|
USHORT *pVideoSenseData2;
|
|
USHORT *pYCSenseData;
|
|
USHORT *pYCSenseData2;
|
|
|
|
UCHAR *pSR07;
|
|
UCHAR *CR49;
|
|
UCHAR *pSR1F;
|
|
UCHAR *AGPReg;
|
|
UCHAR *SR16;
|
|
UCHAR *pSR21;
|
|
UCHAR *pSR22;
|
|
UCHAR *pSR23;
|
|
UCHAR *pSR24;
|
|
UCHAR *SR25;
|
|
UCHAR *pSR31;
|
|
UCHAR *pSR32;
|
|
UCHAR *pSR33;
|
|
UCHAR *pSR36; /* alan 12/07/2006 */
|
|
UCHAR *pCRCF;
|
|
UCHAR *pCRD0; /* alan 12/07/2006 */
|
|
UCHAR *pCRDE; /* alan 12/07/2006 */
|
|
UCHAR *pCR8F; /* alan 12/07/2006 */
|
|
UCHAR *pSR40; /* alan 12/07/2006 */
|
|
UCHAR *pSR41; /* alan 12/07/2006 */
|
|
UCHAR *pDVOSetting;
|
|
UCHAR *pCR2E;
|
|
UCHAR *pCR2F;
|
|
UCHAR *pCR46;
|
|
UCHAR *pCR47;
|
|
UCHAR *pCRT2Data_1_2;
|
|
UCHAR *pCRT2Data_4_D;
|
|
UCHAR *pCRT2Data_4_E;
|
|
UCHAR *pCRT2Data_4_10;
|
|
XGI_MCLKDataStruct *MCLKData;
|
|
XGI_ECLKDataStruct *ECLKData;
|
|
|
|
UCHAR *XGI_TVDelayList;
|
|
UCHAR *XGI_TVDelayList2;
|
|
UCHAR *CHTVVCLKUNTSC;
|
|
UCHAR *CHTVVCLKONTSC;
|
|
UCHAR *CHTVVCLKUPAL;
|
|
UCHAR *CHTVVCLKOPAL;
|
|
UCHAR *NTSCTiming;
|
|
UCHAR *PALTiming;
|
|
UCHAR *HiTVExtTiming;
|
|
UCHAR *HiTVSt1Timing;
|
|
UCHAR *HiTVSt2Timing;
|
|
UCHAR *HiTVTextTiming;
|
|
UCHAR *YPbPr750pTiming;
|
|
UCHAR *YPbPr525pTiming;
|
|
UCHAR *YPbPr525iTiming;
|
|
UCHAR *HiTVGroup3Data;
|
|
UCHAR *HiTVGroup3Simu;
|
|
UCHAR *HiTVGroup3Text;
|
|
UCHAR *Ren525pGroup3;
|
|
UCHAR *Ren750pGroup3;
|
|
UCHAR *ScreenOffset;
|
|
UCHAR *pXGINew_DRAMTypeDefinition;
|
|
UCHAR *pXGINew_I2CDefinition ;
|
|
UCHAR *pXGINew_CR97 ;
|
|
|
|
XGI330_LCDCapStruct *LCDCapList;
|
|
XGI21_LVDSCapStruct *XG21_LVDSCapList;
|
|
|
|
XGI_TimingHStruct *TimingH;
|
|
XGI_TimingVStruct *TimingV;
|
|
|
|
XGI_StStruct *SModeIDTable;
|
|
XGI_StandTableStruct *StandTable;
|
|
XGI_ExtStruct *EModeIDTable;
|
|
XGI_Ext2Struct *RefIndex;
|
|
/* XGINew_CRT1TableStruct *CRT1Table; */
|
|
XGI_CRT1TableStruct *XGINEWUB_CRT1Table;
|
|
XGI_VCLKDataStruct *VCLKData;
|
|
XGI_VBVCLKDataStruct *VBVCLKData;
|
|
XGI_StResInfoStruct *StResInfo;
|
|
XGI_ModeResInfoStruct *ModeResInfo;
|
|
XGI_XG21CRT1Struct *UpdateCRT1;
|
|
}; /* _VB_DEVICE_INFO */
|
|
|
|
|
|
typedef struct
|
|
{
|
|
USHORT Horizontal_ACTIVE;
|
|
USHORT Horizontal_FP;
|
|
USHORT Horizontal_SYNC;
|
|
USHORT Horizontal_BP;
|
|
USHORT Vertical_ACTIVE;
|
|
USHORT Vertical_FP;
|
|
USHORT Vertical_SYNC;
|
|
USHORT Vertical_BP;
|
|
double DCLK;
|
|
UCHAR FrameRate;
|
|
UCHAR Interlace;
|
|
USHORT Margin;
|
|
} TimingInfo;
|
|
|
|
#define _VB_STRUCT_
|
|
#endif /* _VB_STRUCT_ */
|