]> Pileus Git - ~andy/linux/blobdiff - drivers/staging/xgifb/vb_setmode.c
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
[~andy/linux] / drivers / staging / xgifb / vb_setmode.c
index 67a316c3c1087c844f82ec7201fed06e3d38b580..60d4adf99923a1dcf79fd2870dff084f9f9ef7b1 100644 (file)
@@ -61,20 +61,20 @@ static const unsigned short XGINew_VGA_DAC[] = {
 void InitTo330Pointer(unsigned char ChipType, struct vb_device_info *pVBInfo)
 {
        pVBInfo->SModeIDTable = (struct XGI_StStruct *) XGI330_SModeIDTable;
-       pVBInfo->StandTable = (struct XGI_StandTableStruct *) XGI330_StandTable;
+       pVBInfo->StandTable = (struct SiS_StandTable_S *) XGI330_StandTable;
        pVBInfo->EModeIDTable = (struct XGI_ExtStruct *) XGI330_EModeIDTable;
        pVBInfo->RefIndex = (struct XGI_Ext2Struct *) XGI330_RefIndex;
        pVBInfo->XGINEWUB_CRT1Table
                        = (struct XGI_CRT1TableStruct *) XGI_CRT1Table;
 
-       pVBInfo->MCLKData = (struct XGI_MCLKDataStruct *) XGI340New_MCLKData;
+       pVBInfo->MCLKData = (struct SiS_MCLKData *) XGI340New_MCLKData;
        pVBInfo->ECLKData = (struct XGI_ECLKDataStruct *) XGI340_ECLKData;
-       pVBInfo->VCLKData = (struct XGI_VCLKDataStruct *) XGI_VCLKData;
-       pVBInfo->VBVCLKData = (struct XGI_VBVCLKDataStruct *) XGI_VBVCLKData;
+       pVBInfo->VCLKData = (struct SiS_VCLKData *) XGI_VCLKData;
+       pVBInfo->VBVCLKData = (struct SiS_VBVCLKData *) XGI_VBVCLKData;
        pVBInfo->ScreenOffset = XGI330_ScreenOffset;
-       pVBInfo->StResInfo = (struct XGI_StResInfoStruct *) XGI330_StResInfo;
+       pVBInfo->StResInfo = (struct SiS_StResInfo_S *) XGI330_StResInfo;
        pVBInfo->ModeResInfo
-                       = (struct XGI_ModeResInfoStruct *) XGI330_ModeResInfo;
+                       = (struct SiS_ModeResInfo_S *) XGI330_ModeResInfo;
 
        pVBInfo->pOutputSelect = &XGI330_OutputSelect;
        pVBInfo->pSoftSetting = &XGI330_SoftSetting;
@@ -138,7 +138,7 @@ void InitTo330Pointer(unsigned char ChipType, struct vb_device_info *pVBInfo)
        pVBInfo->UpdateCRT1 = (struct XGI_XG21CRT1Struct *) XGI_UpdateCRT1Table;
 
        /* 310 customization related */
-       if ((pVBInfo->VBType & VB_XGI301LV) || (pVBInfo->VBType & VB_XGI302LV))
+       if ((pVBInfo->VBType & VB_SIS301LV) || (pVBInfo->VBType & VB_SIS302LV))
                pVBInfo->LCDCapList = XGI_LCDDLCapList;
        else
                pVBInfo->LCDCapList = XGI_LCDCapList;
@@ -152,8 +152,9 @@ void InitTo330Pointer(unsigned char ChipType, struct vb_device_info *pVBInfo)
                pVBInfo->pXGINew_CR97 = &XG20_CR97;
 
        if (ChipType == XG27) {
+               unsigned char temp;
                pVBInfo->MCLKData
-                       = (struct XGI_MCLKDataStruct *) XGI27New_MCLKData;
+                       = (struct SiS_MCLKData *) XGI27New_MCLKData;
                pVBInfo->CR40 = XGI27_cr41;
                pVBInfo->pXGINew_CR97 = &XG27_CR97;
                pVBInfo->pSR36 = &XG27_SR36;
@@ -162,7 +163,13 @@ void InitTo330Pointer(unsigned char ChipType, struct vb_device_info *pVBInfo)
                pVBInfo->pCRDE = XG27_CRDE;
                pVBInfo->pSR40 = &XG27_SR40;
                pVBInfo->pSR41 = &XG27_SR41;
+               pVBInfo->SR15 = XG27_SR13;
 
+               /*Z11m DDR*/
+               temp = xgifb_reg_get(pVBInfo->P3c4, 0x3B);
+               /* SR3B[7][3]MAA15 MAA11 (Power on Trapping) */
+               if (((temp & 0x88) == 0x80) || ((temp & 0x88) == 0x08))
+                       pVBInfo->pXGINew_CR97 = &Z11m_CR97;
        }
 
        if (ChipType >= XG20) {
@@ -208,8 +215,8 @@ static void XGI_SetSeqRegs(unsigned short ModeNo,
        xgifb_reg_set(pVBInfo->P3c4, 0x00, 0x03); /* Set SR0 */
        tempah = pVBInfo->StandTable[StandTableIndex].SR[0];
 
-       i = SetCRT2ToLCDA;
-       if (pVBInfo->VBInfo & SetCRT2ToLCDA) {
+       i = XGI_SetCRT2ToLCDA;
+       if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) {
                tempah |= 0x01;
        } else {
                if (pVBInfo->VBInfo & (SetCRT2ToTV | SetCRT2ToLCD)) {
@@ -263,7 +270,7 @@ static void XGI_SetATTRegs(unsigned short ModeNo,
                ARdata = pVBInfo->StandTable[StandTableIndex].ATTR[i];
                if (modeflag & Charx8Dot) { /* ifndef Dot9 */
                        if (i == 0x13) {
-                               if (pVBInfo->VBInfo & SetCRT2ToLCDA) {
+                               if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) {
                                        ARdata = 0;
                                } else {
                                        if (pVBInfo->VBInfo & (SetCRT2ToTV
@@ -356,11 +363,11 @@ static unsigned char XGI_AjustCRT2Rate(unsigned short ModeNo,
                }
 
                /* 301b */
-               if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) {
+               if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
                        tempax |= SupportLCD;
 
-                       if (pVBInfo->LCDResInfo != Panel1280x1024) {
-                               if (pVBInfo->LCDResInfo != Panel1280x960) {
+                       if (pVBInfo->LCDResInfo != Panel_1280x1024) {
+                               if (pVBInfo->LCDResInfo != Panel_1280x960) {
                                        if (pVBInfo->LCDInfo &
                                            LCDNonExpanding) {
                                                if (resinfo >= 9) {
@@ -372,10 +379,10 @@ static unsigned char XGI_AjustCRT2Rate(unsigned short ModeNo,
                        }
                }
 
-               if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) { /* for HiTV */
-                       if ((pVBInfo->VBType & VB_XGI301LV) &&
+               if (pVBInfo->VBInfo & SetCRT2ToHiVision) { /* for HiTV */
+                       if ((pVBInfo->VBType & VB_SIS301LV) &&
                            (pVBInfo->VBExtInfo == VB_YPbPr1080i)) {
-                               tempax |= SupportYPbPr;
+                               tempax |= SupportYPbPr750p;
                                if (pVBInfo->VBInfo & SetInSlaveMode) {
                                        if (resinfo == 4)
                                                return 0;
@@ -387,7 +394,7 @@ static unsigned char XGI_AjustCRT2Rate(unsigned short ModeNo,
                                                return 0;
                                }
                        } else {
-                               tempax |= SupportHiVisionTV;
+                               tempax |= SupportHiVision;
                                if (pVBInfo->VBInfo & SetInSlaveMode) {
                                        if (resinfo == 4)
                                                return 0;
@@ -406,17 +413,17 @@ static unsigned char XGI_AjustCRT2Rate(unsigned short ModeNo,
                        if (pVBInfo->VBInfo & (SetCRT2ToAVIDEO |
                                               SetCRT2ToSVIDEO |
                                               SetCRT2ToSCART |
-                                              SetCRT2ToYPbPr |
-                                              SetCRT2ToHiVisionTV)) {
+                                              SetCRT2ToYPbPr525750 |
+                                              SetCRT2ToHiVision)) {
                                tempax |= SupportTV;
 
-                               if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B
-                                               | VB_XGI301LV | VB_XGI302LV
+                               if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B
+                                               | VB_SIS301LV | VB_SIS302LV
                                                | VB_XGI301C)) {
                                        tempax |= SupportTV1024;
                                }
 
-                               if (!(pVBInfo->VBInfo & SetPALTV)) {
+                               if (!(pVBInfo->VBInfo & TVSetPAL)) {
                                        if (modeflag & NoSupportSimuTV) {
                                                if (pVBInfo->VBInfo &
                                                    SetInSlaveMode) {
@@ -436,7 +443,7 @@ static unsigned char XGI_AjustCRT2Rate(unsigned short ModeNo,
                        if (resinfo > 0x08)
                                return 0; /* 1024x768 */
 
-                       if (pVBInfo->LCDResInfo < Panel1024x768) {
+                       if (pVBInfo->LCDResInfo < Panel_1024x768) {
                                if (resinfo > 0x07)
                                        return 0; /* 800x600 */
 
@@ -1230,23 +1237,23 @@ static unsigned short XGI_GetVCLK2Ptr(unsigned short ModeNo,
                struct xgi_hw_device_info *HwDeviceExtension,
                struct vb_device_info *pVBInfo)
 {
-       unsigned short LCDXlat1VCLK[4] = { VCLK65 + 2,
-                                          VCLK65 + 2,
-                                          VCLK65 + 2,
-                                          VCLK65 + 2 };
-       unsigned short LCDXlat2VCLK[4] = { VCLK108_2 + 5,
-                                          VCLK108_2 + 5,
-                                          VCLK108_2 + 5,
-                                          VCLK108_2 + 5 };
+       unsigned short LCDXlat1VCLK[4] = { VCLK65_315 + 2,
+                                          VCLK65_315 + 2,
+                                          VCLK65_315 + 2,
+                                          VCLK65_315 + 2 };
+       unsigned short LCDXlat2VCLK[4] = { VCLK108_2_315 + 5,
+                                          VCLK108_2_315 + 5,
+                                          VCLK108_2_315 + 5,
+                                          VCLK108_2_315 + 5 };
        unsigned short LVDSXlat1VCLK[4] = { VCLK40, VCLK40, VCLK40, VCLK40 };
-       unsigned short LVDSXlat2VCLK[4] = { VCLK65 + 2,
-                                           VCLK65 + 2,
-                                           VCLK65 + 2,
-                                           VCLK65 + 2 };
-       unsigned short LVDSXlat3VCLK[4] = { VCLK65 + 2,
-                                           VCLK65 + 2,
-                                           VCLK65 + 2,
-                                           VCLK65 + 2 };
+       unsigned short LVDSXlat2VCLK[4] = { VCLK65_315 + 2,
+                                           VCLK65_315 + 2,
+                                           VCLK65_315 + 2,
+                                           VCLK65_315 + 2 };
+       unsigned short LVDSXlat3VCLK[4] = { VCLK65_315 + 2,
+                                           VCLK65_315 + 2,
+                                           VCLK65_315 + 2,
+                                           VCLK65_315 + 2 };
 
        unsigned short CRT2Index, VCLKIndex;
        unsigned short modeflag, resinfo;
@@ -1266,36 +1273,36 @@ static unsigned short XGI_GetVCLK2Ptr(unsigned short ModeNo,
 
        if (pVBInfo->IF_DEF_LVDS == 0) {
                CRT2Index = CRT2Index >> 6; /*  for LCD */
-               if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) { /*301b*/
-                       if (pVBInfo->LCDResInfo != Panel1024x768)
+               if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) { /*301b*/
+                       if (pVBInfo->LCDResInfo != Panel_1024x768)
                                VCLKIndex = LCDXlat2VCLK[CRT2Index];
                        else
                                VCLKIndex = LCDXlat1VCLK[CRT2Index];
-               } else if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
+               } else if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
                        if (pVBInfo->SetFlag & RPLLDIV2XO) {
-                               VCLKIndex = HiTVVCLKDIV2;
+                               VCLKIndex = TVCLKBASE_315 + HiTVVCLKDIV2;
                                VCLKIndex += 25;
                        } else {
-                               VCLKIndex = HiTVVCLK;
+                               VCLKIndex = TVCLKBASE_315 + HiTVVCLK;
                                VCLKIndex += 25;
                        }
 
                        if (pVBInfo->SetFlag & TVSimuMode) {
                                if (modeflag & Charx8Dot) {
-                                       VCLKIndex = HiTVSimuVCLK;
+                                       VCLKIndex = TVCLKBASE_315 + HiTVSimuVCLK;
                                        VCLKIndex += 25;
                                } else {
-                                       VCLKIndex = HiTVTextVCLK;
+                                       VCLKIndex = TVCLKBASE_315 + HiTVTextVCLK;
                                        VCLKIndex += 25;
                                }
                        }
 
                        /* 301lv */
-                       if ((pVBInfo->VBType & VB_XGI301LV) &&
+                       if ((pVBInfo->VBType & VB_SIS301LV) &&
                            !(pVBInfo->VBExtInfo == VB_YPbPr1080i)) {
-                               if (pVBInfo->VBExtInfo == VB_YPbPr750p)
-                                       VCLKIndex = YPbPr750pVCLK;
-                               else if (pVBInfo->VBExtInfo == VB_YPbPr525p)
+                               if (pVBInfo->VBExtInfo == YPbPr750p)
+                                       VCLKIndex = XGI_YPbPr750pVCLK;
+                               else if (pVBInfo->VBExtInfo == YPbPr525p)
                                        VCLKIndex = YPbPr525pVCLK;
                                else if (pVBInfo->SetFlag & RPLLDIV2XO)
                                        VCLKIndex = YPbPr525iVCLK_2;
@@ -1304,10 +1311,10 @@ static unsigned short XGI_GetVCLK2Ptr(unsigned short ModeNo,
                        }
                } else if (pVBInfo->VBInfo & SetCRT2ToTV) {
                        if (pVBInfo->SetFlag & RPLLDIV2XO) {
-                               VCLKIndex = TVVCLKDIV2;
+                               VCLKIndex = TVCLKBASE_315 + TVVCLKDIV2;
                                VCLKIndex += 25;
                        } else {
-                               VCLKIndex = TVVCLK;
+                               VCLKIndex = TVCLKBASE_315 + TVVCLK;
                                VCLKIndex += 25;
                        }
                } else { /* for CRT2 */
@@ -1329,11 +1336,11 @@ static unsigned short XGI_GetVCLK2Ptr(unsigned short ModeNo,
                        VCLKIndex = CRT2Index;
 
                VCLKIndex = VCLKIndex >> 6;
-               if ((pVBInfo->LCDResInfo == Panel800x600) ||
-                   (pVBInfo->LCDResInfo == Panel320x480))
+               if ((pVBInfo->LCDResInfo == Panel_800x600) ||
+                   (pVBInfo->LCDResInfo == Panel_320x480))
                        VCLKIndex = LVDSXlat1VCLK[VCLKIndex];
-               else if ((pVBInfo->LCDResInfo == Panel1024x768) ||
-                        (pVBInfo->LCDResInfo == Panel1024x768x75))
+               else if ((pVBInfo->LCDResInfo == Panel_1024x768) ||
+                        (pVBInfo->LCDResInfo == Panel_1024x768x75))
                        VCLKIndex = LVDSXlat2VCLK[VCLKIndex];
                else
                        VCLKIndex = LVDSXlat3VCLK[VCLKIndex];
@@ -1360,9 +1367,9 @@ static void XGI_SetCRT1VCLK(unsigned short ModeNo,
                xgifb_reg_set(pVBInfo->P3c4, 0x2C,
                                pVBInfo->VCLKData[index].SR2C);
                xgifb_reg_set(pVBInfo->P3c4, 0x2D, 0x01);
-       } else if ((pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) && (pVBInfo->VBInfo
-                       & SetCRT2ToLCDA)) {
+       } else if ((pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) && (pVBInfo->VBInfo
+                       & XGI_SetCRT2ToLCDA)) {
                vclkindex = XGI_GetVCLK2Ptr(ModeNo, ModeIdIndex,
                                RefreshRateTableIndex, HwDeviceExtension,
                                pVBInfo);
@@ -1801,7 +1808,7 @@ static void *XGI_GetLcdPtr(unsigned short BX, unsigned short ModeNo,
                                        Ext_CRT2CRTC;
                }
 
-               if (pVBInfo->VBInfo & SetCRT2ToLCDA) {
+               if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) {
                        if (ModeNo <= 0x13)
                                tempal = pVBInfo->SModeIDTable[ModeIdIndex].
                                                St_CRT2CRTC2;
@@ -2128,30 +2135,30 @@ static void *XGI_GetLcdPtr(unsigned short BX, unsigned short ModeNo,
                        return &XGI_CetLCDDes1024x768Data[tempal];
                        break;
                case 3:
-                       if ((pVBInfo->VBType & VB_XGI301LV) ||
-                               (pVBInfo->VBType & VB_XGI302LV))
+                       if ((pVBInfo->VBType & VB_SIS301LV) ||
+                               (pVBInfo->VBType & VB_SIS302LV))
                                return &XGI_ExtLCDDLDes1280x1024Data[tempal];
                        else
                                return &XGI_ExtLCDDes1280x1024Data[tempal];
                        break;
                case 4:
-                       if ((pVBInfo->VBType & VB_XGI301LV) ||
-                           (pVBInfo->VBType & VB_XGI302LV))
+                       if ((pVBInfo->VBType & VB_SIS301LV) ||
+                           (pVBInfo->VBType & VB_SIS302LV))
                                return &XGI_StLCDDLDes1280x1024Data[tempal];
                        else
                                return &XGI_StLCDDes1280x1024Data[tempal];
                        break;
                case 5:
-                       if ((pVBInfo->VBType & VB_XGI301LV) ||
-                           (pVBInfo->VBType & VB_XGI302LV))
+                       if ((pVBInfo->VBType & VB_SIS301LV) ||
+                           (pVBInfo->VBType & VB_SIS302LV))
                                return &XGI_CetLCDDLDes1280x1024Data[tempal];
                        else
                                return &XGI_CetLCDDes1280x1024Data[tempal];
                        break;
                case 6:
                case 7:
-                       if ((pVBInfo->VBType & VB_XGI301LV) ||
-                           (pVBInfo->VBType & VB_XGI302LV))
+                       if ((pVBInfo->VBType & VB_SIS301LV) ||
+                           (pVBInfo->VBType & VB_SIS302LV))
                                return &xgifb_lcddldes_1400x1050[tempal];
                        else
                                return &xgifb_lcddes_1400x1050[tempal];
@@ -2163,15 +2170,15 @@ static void *XGI_GetLcdPtr(unsigned short BX, unsigned short ModeNo,
                        return &XGI_CetLCDDes1400x1050Data2[tempal];
                        break;
                case 10:
-                       if ((pVBInfo->VBType & VB_XGI301LV) ||
-                           (pVBInfo->VBType & VB_XGI302LV))
+                       if ((pVBInfo->VBType & VB_SIS301LV) ||
+                           (pVBInfo->VBType & VB_SIS302LV))
                                return &XGI_ExtLCDDLDes1600x1200Data[tempal];
                        else
                                return &XGI_ExtLCDDes1600x1200Data[tempal];
                        break;
                case 11:
-                       if ((pVBInfo->VBType & VB_XGI301LV) ||
-                           (pVBInfo->VBType & VB_XGI302LV))
+                       if ((pVBInfo->VBType & VB_SIS301LV) ||
+                           (pVBInfo->VBType & VB_SIS302LV))
                                return &XGI_StLCDDLDes1600x1200Data[tempal];
                        else
                                return &XGI_StLCDDes1600x1200Data[tempal];
@@ -2188,15 +2195,15 @@ static void *XGI_GetLcdPtr(unsigned short BX, unsigned short ModeNo,
                        break;
                case 16:
                case 17:
-                       if ((pVBInfo->VBType & VB_XGI301LV) ||
-                           (pVBInfo->VBType & VB_XGI302LV))
+                       if ((pVBInfo->VBType & VB_SIS301LV) ||
+                           (pVBInfo->VBType & VB_SIS302LV))
                                return &xgifb_lcddldes_1280x1024x75[tempal];
                        else
                                return &xgifb_lcddes_1280x1024x75[tempal];
                        break;
                case 18:
-                       if ((pVBInfo->VBType & VB_XGI301LV) ||
-                           (pVBInfo->VBType & VB_XGI302LV))
+                       if ((pVBInfo->VBType & VB_SIS301LV) ||
+                           (pVBInfo->VBType & VB_SIS302LV))
                                return &XGI_CetLCDDLDes1280x1024x75Data[tempal];
                        else
                                return &XGI_CetLCDDes1280x1024x75Data[tempal];
@@ -2364,7 +2371,7 @@ static void XGI_GetLVDSData(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        tempbx = 2;
 
-       if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) {
+       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
                LCDPtr = (struct XGI330_LVDSDataStruct *) XGI_GetLcdPtr(tempbx,
                                ModeNo, ModeIdIndex, RefreshRateTableIndex,
                                pVBInfo);
@@ -2374,18 +2381,18 @@ static void XGI_GetLVDSData(unsigned short ModeNo, unsigned short ModeIdIndex,
                pVBInfo->VT = LCDPtr->LCDVT;
        }
 
-       if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) {
+       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
                if (!(pVBInfo->LCDInfo & (SetLCDtoNonExpanding
                                | EnableScalingLCD))) {
-                       if ((pVBInfo->LCDResInfo == Panel1024x768) ||
-                           (pVBInfo->LCDResInfo == Panel1024x768x75)) {
+                       if ((pVBInfo->LCDResInfo == Panel_1024x768) ||
+                           (pVBInfo->LCDResInfo == Panel_1024x768x75)) {
                                pVBInfo->HDE = 1024;
                                pVBInfo->VDE = 768;
-                       } else if ((pVBInfo->LCDResInfo == Panel1280x1024) ||
-                                  (pVBInfo->LCDResInfo == Panel1280x1024x75)) {
+                       } else if ((pVBInfo->LCDResInfo == Panel_1280x1024) ||
+                                  (pVBInfo->LCDResInfo == Panel_1280x1024x75)) {
                                pVBInfo->HDE = 1280;
                                pVBInfo->VDE = 1024;
-                       } else if (pVBInfo->LCDResInfo == Panel1400x1050) {
+                       } else if (pVBInfo->LCDResInfo == Panel_1400x1050) {
                                pVBInfo->HDE = 1400;
                                pVBInfo->VDE = 1050;
                        } else {
@@ -2415,7 +2422,7 @@ static void XGI_ModCRT1Regs(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        tempbx = 0;
 
-       if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) {
+       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
                LCDPtr = (struct XGI_LVDSCRT1HDataStruct *)
                                XGI_GetLcdPtr(tempbx, ModeNo,
                                              ModeIdIndex,
@@ -2430,7 +2437,7 @@ static void XGI_ModCRT1Regs(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        tempbx = 1;
 
-       if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) {
+       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
                LCDPtr1 = (struct XGI_LVDSCRT1VDataStruct *)
                                XGI_GetLcdPtr(
                                        tempbx,
@@ -2496,7 +2503,7 @@ static unsigned short XGI_GetLCDCapPtr1(struct vb_device_info *pVBInfo)
        }
 
        if (tempbl == 0xFF) {
-               pVBInfo->LCDResInfo = Panel1024x768;
+               pVBInfo->LCDResInfo = Panel_1024x768;
                pVBInfo->LCDTypeInfo = 0;
                i = 0;
        }
@@ -2556,15 +2563,15 @@ static void XGI_SetLVDSRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        push2 = tempax;
 
        /* GetLCDResInfo */
-       if ((pVBInfo->LCDResInfo == Panel1024x768) ||
-           (pVBInfo->LCDResInfo == Panel1024x768x75)) {
+       if ((pVBInfo->LCDResInfo == Panel_1024x768) ||
+           (pVBInfo->LCDResInfo == Panel_1024x768x75)) {
                tempax = 1024;
                tempbx = 768;
-       } else if ((pVBInfo->LCDResInfo == Panel1280x1024) ||
-                  (pVBInfo->LCDResInfo == Panel1280x1024x75)) {
+       } else if ((pVBInfo->LCDResInfo == Panel_1280x1024) ||
+                  (pVBInfo->LCDResInfo == Panel_1280x1024x75)) {
                tempax = 1280;
                tempbx = 1024;
-       } else if (pVBInfo->LCDResInfo == Panel1400x1050) {
+       } else if (pVBInfo->LCDResInfo == Panel_1400x1050) {
                tempax = 1400;
                tempbx = 1050;
        } else {
@@ -2682,7 +2689,7 @@ static void XGI_SetLVDSRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        if (tempbx != pVBInfo->VDE)
                tempax |= 0x40;
 
-       if (pVBInfo->LCDInfo & EnableLVDSDDA)
+       if (pVBInfo->LCDInfo & XGI_EnableLVDSDDA)
                tempax |= 0x40;
 
        xgifb_reg_and_or(pVBInfo->Part1Port, 0x1a, 0x07,
@@ -2768,7 +2775,7 @@ static void XGI_SetLVDSRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        temp1 = temp1 / push3;
        tempbx = (unsigned short) (temp1 & 0xffff);
 
-       if (pVBInfo->LCDResInfo == Panel1024x768)
+       if (pVBInfo->LCDResInfo == Panel_1024x768)
                tempbx -= 1;
 
        tempax = ((tempbx >> 8) & 0xff) << 3;
@@ -2800,7 +2807,7 @@ static void XGI_GetLCDVCLKPtr(unsigned char *di_0, unsigned char *di_1,
 {
        unsigned short index;
 
-       if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) {
+       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
                index = XGI_GetLCDCapPtr1(pVBInfo);
 
                if (pVBInfo->VBInfo & SetCRT2ToLCD) { /* LCDB */
@@ -2834,35 +2841,35 @@ static unsigned char XGI_GetVCLKPtr(unsigned short RefreshRateTableIndex,
                index = XGI_GetLCDCapPtr(pVBInfo);
                tempal = pVBInfo->LCDCapList[index].LCD_VCLK;
 
-               if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA))
+               if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA))
                        return tempal;
 
                /* {TV} */
                if (pVBInfo->VBType &
-                   (VB_XGI301B |
-                    VB_XGI302B |
-                    VB_XGI301LV |
-                    VB_XGI302LV |
+                   (VB_SIS301B |
+                    VB_SIS302B |
+                    VB_SIS301LV |
+                    VB_SIS302LV |
                     VB_XGI301C)) {
-                       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
-                               tempal = HiTVVCLKDIV2;
+                       if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
+                               tempal = TVCLKBASE_315 + HiTVVCLKDIV2;
                                if (!(pVBInfo->TVInfo & RPLLDIV2XO))
-                                       tempal = HiTVVCLK;
+                                       tempal = TVCLKBASE_315 + HiTVVCLK;
                                if (pVBInfo->TVInfo & TVSimuMode) {
-                                       tempal = HiTVSimuVCLK;
+                                       tempal = TVCLKBASE_315 + HiTVSimuVCLK;
                                        if (!(modeflag & Charx8Dot))
-                                               tempal = HiTVTextVCLK;
+                                               tempal = TVCLKBASE_315 + HiTVTextVCLK;
 
                                }
                                return tempal;
                        }
 
-                       if (pVBInfo->TVInfo & SetYPbPrMode750p) {
-                               tempal = YPbPr750pVCLK;
+                       if (pVBInfo->TVInfo & TVSetYPbPr750p) {
+                               tempal = XGI_YPbPr750pVCLK;
                                return tempal;
                        }
 
-                       if (pVBInfo->TVInfo & SetYPbPrMode525p) {
+                       if (pVBInfo->TVInfo & TVSetYPbPr525p) {
                                tempal = YPbPr525pVCLK;
                                return tempal;
                        }
@@ -2870,9 +2877,9 @@ static unsigned char XGI_GetVCLKPtr(unsigned short RefreshRateTableIndex,
                        tempal = NTSC1024VCLK;
 
                        if (!(pVBInfo->TVInfo & NTSC1024x768)) {
-                               tempal = TVVCLKDIV2;
+                               tempal = TVCLKBASE_315 + TVVCLKDIV2;
                                if (!(pVBInfo->TVInfo & RPLLDIV2XO))
-                                       tempal = TVVCLK;
+                                       tempal = TVCLKBASE_315 + TVVCLK;
                        }
 
                        if (pVBInfo->VBInfo & SetCRT2ToTV)
@@ -2898,9 +2905,9 @@ static unsigned char XGI_GetVCLKPtr(unsigned short RefreshRateTableIndex,
 static void XGI_GetVCLKLen(unsigned char tempal, unsigned char *di_0,
                unsigned char *di_1, struct vb_device_info *pVBInfo)
 {
-       if (pVBInfo->VBType & (VB_XGI301 | VB_XGI301B | VB_XGI302B
-                       | VB_XGI301LV | VB_XGI302LV | VB_XGI301C)) {
-               if ((!(pVBInfo->VBInfo & SetCRT2ToLCDA)) && (pVBInfo->SetFlag
+       if (pVBInfo->VBType & (VB_SIS301 | VB_SIS301B | VB_SIS302B
+                       | VB_SIS301LV | VB_SIS302LV | VB_XGI301C)) {
+               if ((!(pVBInfo->VBInfo & XGI_SetCRT2ToLCDA)) && (pVBInfo->SetFlag
                                & ProgrammingCRT2)) {
                        *di_0 = (unsigned char) XGI_VBVCLKData[tempal].SR2B;
                        *di_1 = XGI_VBVCLKData[tempal].SR2C;
@@ -2926,7 +2933,7 @@ static void XGI_SetCRT2ECLK(unsigned short ModeNo, unsigned short ModeIdIndex,
        for (i = 0; i < 4; i++) {
                xgifb_reg_and_or(pVBInfo->P3d4, 0x31, ~0x30,
                                (unsigned short) (0x10 * i));
-               if ((!(pVBInfo->VBInfo & SetCRT2ToLCDA))
+               if ((!(pVBInfo->VBInfo & XGI_SetCRT2ToLCDA))
                                && (!(pVBInfo->VBInfo & SetInSlaveMode))) {
                        xgifb_reg_set(pVBInfo->P3c4, 0x2e, di_0);
                        xgifb_reg_set(pVBInfo->P3c4, 0x2f, di_1);
@@ -2942,8 +2949,8 @@ static void XGI_UpdateModeInfo(struct xgi_hw_device_info *HwDeviceExtension,
 {
        unsigned short tempcl, tempch, temp, tempbl, tempax;
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
                tempcl = 0;
                tempch = 0;
                temp = xgifb_reg_get(pVBInfo->P3c4, 0x01);
@@ -2987,12 +2994,12 @@ static void XGI_UpdateModeInfo(struct xgi_hw_device_info *HwDeviceExtension,
                                if (temp & 0x02)
                                        tempch |= ActiveSCART;
 
-                               if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
+                               if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
                                        if (temp & 0x01)
                                                tempch |= ActiveHiTV;
                                }
 
-                               if (pVBInfo->VBInfo & SetCRT2ToYPbPr) {
+                               if (pVBInfo->VBInfo & SetCRT2ToYPbPr525750) {
                                        temp = xgifb_reg_get(
                                                        pVBInfo->Part2Port,
                                                        0x4d);
@@ -3014,7 +3021,7 @@ static void XGI_UpdateModeInfo(struct xgi_hw_device_info *HwDeviceExtension,
                        }
                }
                temp = tempcl;
-               tempbl = ~ModeSwitchStatus;
+               tempbl = ~XGI_ModeSwitchStatus;
                xgifb_reg_and_or(pVBInfo->P3d4, 0x3d, tempbl, temp);
 
                if (!(pVBInfo->SetFlag & ReserveTVOption))
@@ -3029,19 +3036,19 @@ void XGI_GetVBType(struct vb_device_info *pVBInfo)
        unsigned short flag, tempbx, tempah;
 
        if (pVBInfo->IF_DEF_LVDS == 0) {
-               tempbx = VB_XGI302B;
+               tempbx = VB_SIS302B;
                flag = xgifb_reg_get(pVBInfo->Part4Port, 0x00);
                if (flag != 0x02) {
-                       tempbx = VB_XGI301;
+                       tempbx = VB_SIS301;
                        flag = xgifb_reg_get(pVBInfo->Part4Port, 0x01);
                        if (flag >= 0xB0) {
-                               tempbx = VB_XGI301B;
+                               tempbx = VB_SIS301B;
                                if (flag >= 0xC0) {
                                        tempbx = VB_XGI301C;
                                        if (flag >= 0xD0) {
-                                               tempbx = VB_XGI301LV;
+                                               tempbx = VB_SIS301LV;
                                                if (flag >= 0xE0) {
-                                                       tempbx = VB_XGI302LV;
+                                                       tempbx = VB_SIS302LV;
                                                        tempah = xgifb_reg_get(
                                                            pVBInfo->Part4Port,
                                                            0x39);
@@ -3052,7 +3059,7 @@ void XGI_GetVBType(struct vb_device_info *pVBInfo)
                                        }
                                }
 
-                               if (tempbx & (VB_XGI301B | VB_XGI302B)) {
+                               if (tempbx & (VB_SIS301B | VB_SIS302B)) {
                                        flag = xgifb_reg_get(
                                                        pVBInfo->Part4Port,
                                                        0x23);
@@ -3078,7 +3085,7 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                modeflag = pVBInfo->EModeIDTable[ModeIdIndex].Ext_ModeFlag;
 
        pVBInfo->SetFlag = 0;
-       pVBInfo->ModeType = modeflag & ModeInfoFlag;
+       pVBInfo->ModeType = modeflag & ModeTypeMask;
        tempbx = 0;
 
        if (pVBInfo->VBType & 0xFFFF) {
@@ -3090,7 +3097,7 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                push = push << 8;
                tempax = temp << 8;
                tempbx = tempbx | tempax;
-               temp = (SetCRT2ToDualEdge | SetCRT2ToYPbPr | SetCRT2ToLCDA
+               temp = (SetCRT2ToDualEdge | SetCRT2ToYPbPr525750 | XGI_SetCRT2ToLCDA
                                | SetInSlaveMode | DisableCRT2Display);
                temp = 0xFFFF ^ temp;
                tempbx &= temp;
@@ -3103,9 +3110,9 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                            (HwDeviceExtension->jChipType >= XG40)) {
                                if (pVBInfo->IF_DEF_LVDS == 0) {
                                        if (pVBInfo->VBType &
-                                           (VB_XGI302B |
-                                            VB_XGI301LV |
-                                            VB_XGI302LV |
+                                           (VB_SIS302B |
+                                            VB_SIS301LV |
+                                            VB_SIS302LV |
                                             VB_XGI301C)) {
                                                if (temp & EnableDualEdge) {
                                                        tempbx |=
@@ -3113,7 +3120,7 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
 
                                                        if (temp & SetToLCDA)
                                                                tempbx |=
-                                                                 SetCRT2ToLCDA;
+                                                                 XGI_SetCRT2ToLCDA;
                                                }
                                        }
                                }
@@ -3123,8 +3130,8 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                if (pVBInfo->IF_DEF_YPbPr == 1) {
                        /* [Billy] 07/05/04 */
                        if (((pVBInfo->IF_DEF_LVDS == 0) &&
-                           ((pVBInfo->VBType & VB_XGI301LV) ||
-                           (pVBInfo->VBType & VB_XGI302LV) ||
+                           ((pVBInfo->VBType & VB_SIS301LV) ||
+                           (pVBInfo->VBType & VB_SIS302LV) ||
                            (pVBInfo->VBType & VB_XGI301C)))) {
                                if (temp & SetYPbPr) {
                                        if (pVBInfo->IF_DEF_HiVision == 1) {
@@ -3134,13 +3141,13 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                                                                pVBInfo->P3d4,
                                                                0x35);
                                                temp &= YPbPrMode;
-                                               tempbx |= SetCRT2ToHiVisionTV;
+                                               tempbx |= SetCRT2ToHiVision;
 
                                                if (temp != YPbPrMode1080i) {
                                                        tempbx &=
-                                                        (~SetCRT2ToHiVisionTV);
+                                                        (~SetCRT2ToHiVision);
                                                        tempbx |=
-                                                        SetCRT2ToYPbPr;
+                                                        SetCRT2ToYPbPr525750;
                                                }
                                        }
                                }
@@ -3172,30 +3179,30 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
 
                if (pVBInfo->IF_DEF_LCDA == 1) { /* Select Display Device */
                        if (!(pVBInfo->VBType & VB_NoLCD)) {
-                               if (tempbx & SetCRT2ToLCDA) {
+                               if (tempbx & XGI_SetCRT2ToLCDA) {
                                        if (tempbx & SetSimuScanMode)
                                                tempbx &= (~(SetCRT2ToLCD |
                                                           SetCRT2ToRAMDAC |
-                                                          SwitchToCRT2));
+                                                          SwitchCRT2));
                                        else
                                                tempbx &= (~(SetCRT2ToLCD |
                                                             SetCRT2ToRAMDAC |
                                                             SetCRT2ToTV |
-                                                            SwitchToCRT2));
+                                                            SwitchCRT2));
                                }
                        }
                }
 
                /* shampoo add */
                /* for driver abnormal */
-               if (!(tempbx & (SwitchToCRT2 | SetSimuScanMode))) {
+               if (!(tempbx & (SwitchCRT2 | SetSimuScanMode))) {
                        if (pVBInfo->IF_DEF_CRT2Monitor == 1) {
                                if (tempbx & SetCRT2ToRAMDAC) {
                                        tempbx &= (0xFF00 |
                                                   SetCRT2ToRAMDAC |
-                                                  SwitchToCRT2 |
+                                                  SwitchCRT2 |
                                                   SetSimuScanMode);
-                                       tempbx &= (0x00FF | (~SetCRT2ToYPbPr));
+                                       tempbx &= (0x00FF | (~SetCRT2ToYPbPr525750));
                                }
                        } else {
                                tempbx &= (~(SetCRT2ToRAMDAC |
@@ -3208,37 +3215,37 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                        if (tempbx & SetCRT2ToLCD) {
                                tempbx &= (0xFF00 |
                                           SetCRT2ToLCD |
-                                          SwitchToCRT2 |
+                                          SwitchCRT2 |
                                           SetSimuScanMode);
-                               tempbx &= (0x00FF | (~SetCRT2ToYPbPr));
+                               tempbx &= (0x00FF | (~SetCRT2ToYPbPr525750));
                        }
                }
 
                if (tempbx & SetCRT2ToSCART) {
                        tempbx &= (0xFF00 |
                                   SetCRT2ToSCART |
-                                  SwitchToCRT2 |
+                                  SwitchCRT2 |
                                   SetSimuScanMode);
-                       tempbx &= (0x00FF | (~SetCRT2ToYPbPr));
+                       tempbx &= (0x00FF | (~SetCRT2ToYPbPr525750));
                }
 
                if (pVBInfo->IF_DEF_YPbPr == 1) {
-                       if (tempbx & SetCRT2ToYPbPr)
+                       if (tempbx & SetCRT2ToYPbPr525750)
                                tempbx &= (0xFF00 |
-                                          SwitchToCRT2 |
+                                          SwitchCRT2 |
                                           SetSimuScanMode);
                }
 
                if (pVBInfo->IF_DEF_HiVision == 1) {
-                       if (tempbx & SetCRT2ToHiVisionTV)
+                       if (tempbx & SetCRT2ToHiVision)
                                tempbx &= (0xFF00 |
-                                          SetCRT2ToHiVisionTV |
-                                          SwitchToCRT2 |
+                                          SetCRT2ToHiVision |
+                                          SwitchCRT2 |
                                           SetSimuScanMode);
                }
 
                if (tempax & DisableCRT2Display) { /* Set Display Device Info */
-                       if (!(tempbx & (SwitchToCRT2 | SetSimuScanMode)))
+                       if (!(tempbx & (SwitchCRT2 | SetSimuScanMode)))
                                tempbx = DisableCRT2Display;
                }
 
@@ -3246,7 +3253,7 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                        if ((!(tempbx & DriverMode)) ||
                            (!(modeflag & CRT2Mode))) {
                                if (pVBInfo->IF_DEF_LCDA == 1) {
-                                       if (!(tempbx & SetCRT2ToLCDA))
+                                       if (!(tempbx & XGI_SetCRT2ToLCDA))
                                                tempbx |= (SetInSlaveMode |
                                                           SetSimuScanMode);
                                }
@@ -3255,9 +3262,9 @@ static void XGI_GetVBInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                        /* LCD+TV can't support in slave mode
                         * (Force LCDA+TV->LCDB) */
                        if ((tempbx & SetInSlaveMode) &&
-                           (tempbx & SetCRT2ToLCDA)) {
+                           (tempbx & XGI_SetCRT2ToLCDA)) {
                                tempbx ^= (SetCRT2ToLCD |
-                                         SetCRT2ToLCDA |
+                                         XGI_SetCRT2ToLCDA |
                                          SetCRT2ToDualEdge);
                                pVBInfo->SetFlag |= ReserveTVOption;
                        }
@@ -3291,43 +3298,43 @@ static void XGI_GetTVInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                if (pVBInfo->VBInfo & SetCRT2ToTV) {
                        temp = xgifb_reg_get(pVBInfo->P3d4, 0x35);
                        tempbx = temp;
-                       if (tempbx & SetPALTV) {
+                       if (tempbx & TVSetPAL) {
                                tempbx &= (SetCHTVOverScan |
-                                          SetPALMTV |
-                                          SetPALNTV |
-                                          SetPALTV);
-                               if (tempbx & SetPALMTV)
+                                          TVSetPALM |
+                                          TVSetPALN |
+                                          TVSetPAL);
+                               if (tempbx & TVSetPALM)
                                        /* set to NTSC if PAL-M */
-                                       tempbx &= ~SetPALTV;
+                                       tempbx &= ~TVSetPAL;
                        } else
                                tempbx &= (SetCHTVOverScan |
-                                          SetNTSCJ |
-                                          SetPALTV);
+                                          TVSetNTSCJ |
+                                          TVSetPAL);
                }
 
                if (pVBInfo->IF_DEF_LVDS == 0) {
                        if (pVBInfo->VBInfo & SetCRT2ToSCART)
-                               tempbx |= SetPALTV;
+                               tempbx |= TVSetPAL;
                }
 
                if (pVBInfo->IF_DEF_YPbPr == 1) {
-                       if (pVBInfo->VBInfo & SetCRT2ToYPbPr) {
+                       if (pVBInfo->VBInfo & SetCRT2ToYPbPr525750) {
                                index1 = xgifb_reg_get(pVBInfo->P3d4, 0x35);
                                index1 &= YPbPrMode;
 
                                if (index1 == YPbPrMode525i)
-                                       tempbx |= SetYPbPrMode525i;
+                                       tempbx |= TVSetYPbPr525i;
 
                                if (index1 == YPbPrMode525p)
-                                       tempbx = tempbx | SetYPbPrMode525p;
+                                       tempbx = tempbx | TVSetYPbPr525p;
                                if (index1 == YPbPrMode750p)
-                                       tempbx = tempbx | SetYPbPrMode750p;
+                                       tempbx = tempbx | TVSetYPbPr750p;
                        }
                }
 
                if (pVBInfo->IF_DEF_HiVision == 1) {
-                       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV)
-                               tempbx = tempbx | SetYPbPrMode1080i | SetPALTV;
+                       if (pVBInfo->VBInfo & SetCRT2ToHiVision)
+                               tempbx = tempbx | TVSetHiVision | TVSetPAL;
                }
 
                if (pVBInfo->IF_DEF_LVDS == 0) { /* shampoo */
@@ -3335,25 +3342,25 @@ static void XGI_GetTVInfo(unsigned short ModeNo, unsigned short ModeIdIndex,
                            (!(pVBInfo->VBInfo & SetNotSimuMode)))
                                tempbx |= TVSimuMode;
 
-                       if (!(tempbx & SetPALTV) &&
+                       if (!(tempbx & TVSetPAL) &&
                            (modeflag > 13) &&
                            (resinfo == 8)) /* NTSC 1024x768, */
                                tempbx |= NTSC1024x768;
 
                        tempbx |= RPLLDIV2XO;
 
-                       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
+                       if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
                                if (pVBInfo->VBInfo & SetInSlaveMode)
                                        tempbx &= (~RPLLDIV2XO);
                        } else {
                                if (tempbx &
-                                   (SetYPbPrMode525p | SetYPbPrMode750p))
+                                   (TVSetYPbPr525p | TVSetYPbPr750p))
                                        tempbx &= (~RPLLDIV2XO);
                                else if (!(pVBInfo->VBType &
-                                        (VB_XGI301B |
-                                         VB_XGI302B |
-                                         VB_XGI301LV |
-                                         VB_XGI302LV |
+                                        (VB_SIS301B |
+                                         VB_SIS302B |
+                                         VB_SIS301LV |
+                                         VB_SIS302LV |
                                          VB_XGI301C))) {
                                        if (tempbx & TVSimuMode)
                                                tempbx &= (~RPLLDIV2XO);
@@ -3386,13 +3393,13 @@ static unsigned char XGI_GetLCDInfo(unsigned short ModeNo,
        tempbx = temp & 0x0F;
 
        if (tempbx == 0)
-               tempbx = Panel1024x768; /* default */
+               tempbx = Panel_1024x768; /* default */
 
        /* LCD75 [2003/8/22] Vicent */
-       if ((tempbx == Panel1024x768) || (tempbx == Panel1280x1024)) {
+       if ((tempbx == Panel_1024x768) || (tempbx == Panel_1280x1024)) {
                if (pVBInfo->VBInfo & DriverMode) {
                        tempax = xgifb_reg_get(pVBInfo->P3d4, 0x33);
-                       if (pVBInfo->VBInfo & SetCRT2ToLCDA)
+                       if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA)
                                tempax &= 0x0F;
                        else
                                tempax = tempax >> 4;
@@ -3411,7 +3418,7 @@ static unsigned char XGI_GetLCDInfo(unsigned short ModeNo,
 
        /* End of LCD75 */
 
-       if (!(pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)))
+       if (!(pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)))
                return 0;
 
        tempbx = 0;
@@ -3427,30 +3434,30 @@ static unsigned char XGI_GetLCDInfo(unsigned short ModeNo,
        tempax = pVBInfo->LCDCapList[LCDIdIndex].LCD_Capability;
 
        if (pVBInfo->IF_DEF_LVDS == 0) { /* shampoo */
-               if (((pVBInfo->VBType & VB_XGI302LV) || (pVBInfo->VBType
-                               & VB_XGI301C)) && (tempax & LCDDualLink)) {
+               if (((pVBInfo->VBType & VB_SIS302LV) || (pVBInfo->VBType
+                               & VB_XGI301C)) && (tempax & XGI_LCDDualLink)) {
                        tempbx |= SetLCDDualLink;
                }
        }
 
        if (pVBInfo->IF_DEF_LVDS == 0) {
-               if ((pVBInfo->LCDResInfo == Panel1400x1050) && (pVBInfo->VBInfo
+               if ((pVBInfo->LCDResInfo == Panel_1400x1050) && (pVBInfo->VBInfo
                                & SetCRT2ToLCD) && (ModeNo > 0x13) && (resinfo
                                == 9) && (!(tempbx & EnableScalingLCD)))
-                       /* set to center in 1280x1024 LCDB for Panel1400x1050 */
+                       /* set to center in 1280x1024 LCDB for Panel_1400x1050 */
                        tempbx |= SetLCDtoNonExpanding;
        }
 
        if (pVBInfo->IF_DEF_ExpLink == 1) {
                if (modeflag & HalfDCLK) {
                        if (!(tempbx & SetLCDtoNonExpanding)) {
-                               tempbx |= EnableLVDSDDA;
+                               tempbx |= XGI_EnableLVDSDDA;
                        } else {
                                if (ModeNo > 0x13) {
                                        if (pVBInfo->LCDResInfo
-                                                       == Panel1024x768) {
+                                                       == Panel_1024x768) {
                                                if (resinfo == 4) {/* 512x384 */
-                                                       tempbx |= EnableLVDSDDA;
+                                                       tempbx |= XGI_EnableLVDSDDA;
                                                }
                                        }
                                }
@@ -3460,9 +3467,9 @@ static unsigned char XGI_GetLCDInfo(unsigned short ModeNo,
 
        if (pVBInfo->VBInfo & SetInSlaveMode) {
                if (pVBInfo->VBInfo & SetNotSimuMode)
-                       tempbx |= LCDVESATiming;
+                       tempbx |= XGI_LCDVESATiming;
        } else {
-               tempbx |= LCDVESATiming;
+               tempbx |= XGI_LCDVESATiming;
        }
 
        pVBInfo->LCDInfo = tempbx;
@@ -3477,7 +3484,7 @@ static unsigned char XGI_GetLCDInfo(unsigned short ModeNo,
                                                          SetInSlaveMode |
                                                          SetCRT2ToLCD);
                                                pVBInfo->VBInfo |=
-                                                       SetCRT2ToLCDA |
+                                                       XGI_SetCRT2ToLCDA |
                                                        SetCRT2ToDualEdge;
                                        }
                                }
@@ -3801,27 +3808,27 @@ static void XGI_GetCRT2ResInfo(unsigned short ModeNo,
 
        if (pVBInfo->VBInfo & SetCRT2ToLCD) {
                if (pVBInfo->IF_DEF_LVDS == 0) {
-                       if (pVBInfo->LCDResInfo == Panel1600x1200) {
-                               if (!(pVBInfo->LCDInfo & LCDVESATiming)) {
+                       if (pVBInfo->LCDResInfo == Panel_1600x1200) {
+                               if (!(pVBInfo->LCDInfo & XGI_LCDVESATiming)) {
                                        if (yres == 1024)
                                                yres = 1056;
                                }
                        }
 
-                       if (pVBInfo->LCDResInfo == Panel1280x1024) {
+                       if (pVBInfo->LCDResInfo == Panel_1280x1024) {
                                if (yres == 400)
                                        yres = 405;
                                else if (yres == 350)
                                        yres = 360;
 
-                               if (pVBInfo->LCDInfo & LCDVESATiming) {
+                               if (pVBInfo->LCDInfo & XGI_LCDVESATiming) {
                                        if (yres == 360)
                                                yres = 375;
                                }
                        }
 
-                       if (pVBInfo->LCDResInfo == Panel1024x768) {
-                               if (!(pVBInfo->LCDInfo & LCDVESATiming)) {
+                       if (pVBInfo->LCDResInfo == Panel_1024x768) {
+                               if (!(pVBInfo->LCDInfo & XGI_LCDVESATiming)) {
                                        if (!(pVBInfo->LCDInfo
                                                        & LCDNonExpanding)) {
                                                if (yres == 350)
@@ -3848,7 +3855,7 @@ static void XGI_GetCRT2ResInfo(unsigned short ModeNo,
 static unsigned char XGI_IsLCDDualLink(struct vb_device_info *pVBInfo)
 {
 
-       if ((pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) &&
+       if ((pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) &&
                        (pVBInfo->LCDInfo & SetLCDDualLink)) /* shampoo0129 */
                return 1;
 
@@ -3918,8 +3925,8 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
 {
        unsigned short tempax = 0, tempbx, modeflag, resinfo;
 
-       struct XGI_LCDDataStruct *LCDPtr = NULL;
-       struct XGI_TVDataStruct *TVPtr = NULL;
+       struct SiS_LCDData *LCDPtr = NULL;
+       struct SiS_TVData *TVPtr = NULL;
 
        if (ModeNo <= 0x13) {
                /* si+St_ResInfo */
@@ -3942,8 +3949,8 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        tempbx = 4;
 
-       if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) {
-               LCDPtr = (struct XGI_LCDDataStruct *) XGI_GetLcdPtr(tempbx,
+       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
+               LCDPtr = (struct SiS_LCDData *) XGI_GetLcdPtr(tempbx,
                                ModeNo, ModeIdIndex, RefreshRateTableIndex,
                                pVBInfo);
 
@@ -3954,11 +3961,11 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
                pVBInfo->HT = LCDPtr->LCDHT;
                pVBInfo->VT = LCDPtr->LCDVT;
 
-               if (pVBInfo->LCDResInfo == Panel1024x768) {
+               if (pVBInfo->LCDResInfo == Panel_1024x768) {
                        tempax = 1024;
                        tempbx = 768;
 
-                       if (!(pVBInfo->LCDInfo & LCDVESATiming)) {
+                       if (!(pVBInfo->LCDInfo & XGI_LCDVESATiming)) {
                                if (pVBInfo->VGAVDE == 357)
                                        tempbx = 527;
                                else if (pVBInfo->VGAVDE == 420)
@@ -3971,10 +3978,10 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
                                        tempbx = 768;
                        } else
                                tempbx = 768;
-               } else if (pVBInfo->LCDResInfo == Panel1024x768x75) {
+               } else if (pVBInfo->LCDResInfo == Panel_1024x768x75) {
                        tempax = 1024;
                        tempbx = 768;
-               } else if (pVBInfo->LCDResInfo == Panel1280x1024) {
+               } else if (pVBInfo->LCDResInfo == Panel_1280x1024) {
                        tempax = 1280;
                        if (pVBInfo->VGAVDE == 360)
                                tempbx = 768;
@@ -3984,10 +3991,10 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
                                tempbx = 864;
                        else
                                tempbx = 1024;
-               } else if (pVBInfo->LCDResInfo == Panel1280x1024x75) {
+               } else if (pVBInfo->LCDResInfo == Panel_1280x1024x75) {
                        tempax = 1280;
                        tempbx = 1024;
-               } else if (pVBInfo->LCDResInfo == Panel1280x960) {
+               } else if (pVBInfo->LCDResInfo == Panel_1280x960) {
                        tempax = 1280;
                        if (pVBInfo->VGAVDE == 350)
                                tempbx = 700;
@@ -3997,7 +4004,7 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
                                tempbx = 960;
                        else
                                tempbx = 960;
-               } else if (pVBInfo->LCDResInfo == Panel1400x1050) {
+               } else if (pVBInfo->LCDResInfo == Panel_1400x1050) {
                        tempax = 1400;
                        tempbx = 1050;
 
@@ -4005,10 +4012,10 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
                                tempax = 1280;
                                tempbx = 1024;
                        }
-               } else if (pVBInfo->LCDResInfo == Panel1600x1200) {
+               } else if (pVBInfo->LCDResInfo == Panel_1600x1200) {
                        tempax = 1600;
                        tempbx = 1200; /* alan 10/14/2003 */
-                       if (!(pVBInfo->LCDInfo & LCDVESATiming)) {
+                       if (!(pVBInfo->LCDInfo & XGI_LCDVESATiming)) {
                                if (pVBInfo->VGAVDE == 350)
                                        tempbx = 875;
                                else if (pVBInfo->VGAVDE == 400)
@@ -4028,7 +4035,7 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        if (pVBInfo->VBInfo & (SetCRT2ToTV)) {
                tempbx = 4;
-               TVPtr = (struct XGI_TVDataStruct *) XGI_GetTVPtr(tempbx,
+               TVPtr = (struct SiS_TVData *) XGI_GetTVPtr(tempbx,
                                ModeNo, ModeIdIndex, RefreshRateTableIndex,
                                pVBInfo);
 
@@ -4041,7 +4048,7 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
                pVBInfo->RVBHRS = TVPtr->RVBHRS;
                pVBInfo->NewFlickerMode = TVPtr->FlickerMode;
 
-               if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
+               if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
                        if (resinfo == 0x08)
                                pVBInfo->NewFlickerMode = 0x40;
                        else if (resinfo == 0x09)
@@ -4066,16 +4073,16 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
                                        }
                                }
                        }
-               } else if (pVBInfo->VBInfo & SetCRT2ToYPbPr) {
-                       if (pVBInfo->TVInfo & SetYPbPrMode750p) {
+               } else if (pVBInfo->VBInfo & SetCRT2ToYPbPr525750) {
+                       if (pVBInfo->TVInfo & TVSetYPbPr750p) {
                                tempax = YPbPrTV750pHT; /* Ext750pTVHT */
                                tempbx = YPbPrTV750pVT; /* Ext750pTVVT */
                        }
 
-                       if (pVBInfo->TVInfo & SetYPbPrMode525p) {
+                       if (pVBInfo->TVInfo & TVSetYPbPr525p) {
                                tempax = YPbPrTV525pHT; /* Ext525pTVHT */
                                tempbx = YPbPrTV525pVT; /* Ext525pTVVT */
-                       } else if (pVBInfo->TVInfo & SetYPbPrMode525i) {
+                       } else if (pVBInfo->TVInfo & TVSetYPbPr525i) {
                                tempax = YPbPrTV525iHT; /* Ext525iTVHT */
                                tempbx = YPbPrTV525iVT; /* Ext525iTVVT */
                                if (pVBInfo->TVInfo & NTSC1024x768)
@@ -4084,7 +4091,7 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
                } else {
                        tempax = PALHT;
                        tempbx = PALVT;
-                       if (!(pVBInfo->TVInfo & SetPALTV)) {
+                       if (!(pVBInfo->TVInfo & TVSetPAL)) {
                                tempax = NTSCHT;
                                tempbx = NTSCVT;
                                if (pVBInfo->TVInfo & NTSC1024x768)
@@ -4109,7 +4116,7 @@ static void XGI_SetCRT2VCLK(unsigned short ModeNo, unsigned short ModeIdIndex,
        XGI_GetVCLKLen(tempal, &di_0, &di_1, pVBInfo);
        XGI_GetLCDVCLKPtr(&di_0, &di_1, pVBInfo);
 
-       if (pVBInfo->VBType & VB_XGI301) { /* shampoo 0129 */
+       if (pVBInfo->VBType & VB_SIS301) { /* shampoo 0129 */
                /* 301 */
                xgifb_reg_set(pVBInfo->Part4Port, 0x0A, 0x10);
                xgifb_reg_set(pVBInfo->Part4Port, 0x0B, di_1);
@@ -4139,7 +4146,7 @@ static unsigned short XGI_GetColorDepth(unsigned short ModeNo,
        else
                modeflag = pVBInfo->EModeIDTable[ModeIdIndex].Ext_ModeFlag;
 
-       index = (modeflag & ModeInfoFlag) - ModeEGA;
+       index = (modeflag & ModeTypeMask) - ModeEGA;
 
        if (index < 0)
                index = 0;
@@ -4435,7 +4442,7 @@ static void XGI_SetLockRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        xgifb_reg_set(pVBInfo->Part1Port, 0x03, temp);
        tempcx = 0x08;
 
-       if (pVBInfo->VBType & (VB_XGI301LV | VB_XGI302LV | VB_XGI301C))
+       if (pVBInfo->VBType & (VB_SIS301LV | VB_SIS302LV | VB_XGI301C))
                modeflag |= Charx8Dot;
 
        tempax = pVBInfo->VGAHDE; /* 0x04 Horizontal Display End */
@@ -4451,12 +4458,12 @@ static void XGI_SetLockRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        temp = (tempbx & 0xFF00) >> 8;
 
        if (pVBInfo->VBInfo & SetCRT2ToTV) {
-               if (!(pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                               | VB_XGI302LV | VB_XGI301C)))
+               if (!(pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                               | VB_SIS302LV | VB_XGI301C)))
                        temp += 2;
 
-               if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
-                       if (pVBInfo->VBType & VB_XGI301LV) {
+               if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
+                       if (pVBInfo->VBType & VB_SIS301LV) {
                                if (pVBInfo->VBExtInfo == VB_YPbPr1080i) {
                                        if (resinfo == 7)
                                                temp -= 2;
@@ -4487,7 +4494,7 @@ static void XGI_SetLockRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        tempax = (tempax / tempcx) - 5;
        tempcx = tempax; /* 20030401 0x07 horizontal Retrace Start */
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
                temp = (tempbx & 0x00FF) - 1;
                if (!(modeflag & HalfDCLK)) {
                        temp -= 6;
@@ -4513,19 +4520,19 @@ static void XGI_SetLockRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
                        }
                } else if (!(modeflag & HalfDCLK)) {
                        temp -= 4;
-                       if (pVBInfo->LCDResInfo != Panel1280x960 &&
+                       if (pVBInfo->LCDResInfo != Panel_1280x960 &&
                            pVBInfo->VGAHDE >= 800) {
                                temp -= 7;
                                if (pVBInfo->ModeType == ModeEGA &&
                                    pVBInfo->VGAVDE == 1024) {
                                        temp += 15;
                                        if (pVBInfo->LCDResInfo !=
-                                               Panel1280x1024)
+                                               Panel_1280x1024)
                                                temp += 7;
                                }
 
                                if (pVBInfo->VGAHDE >= 1280 &&
-                                   pVBInfo->LCDResInfo != Panel1280x960 &&
+                                   pVBInfo->LCDResInfo != Panel_1280x960 &&
                                    (pVBInfo->LCDInfo & LCDNonExpanding))
                                        temp += 28;
                        }
@@ -4619,8 +4626,8 @@ static void XGI_SetLockRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        push2 = tempbx;
 
        if (pVBInfo->VBInfo & SetCRT2ToLCD) {
-               if (pVBInfo->LCDResInfo == Panel1024x768) {
-                       if (!(pVBInfo->LCDInfo & LCDVESATiming)) {
+               if (pVBInfo->LCDResInfo == Panel_1024x768) {
+                       if (!(pVBInfo->LCDInfo & XGI_LCDVESATiming)) {
                                if (tempbx == 350)
                                        tempbx += 5;
                                if (tempbx == 480)
@@ -4669,19 +4676,19 @@ static void XGI_SetLockRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
                tempbx += tempax;
        }
 
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
-               if (pVBInfo->VBType & VB_XGI301LV) {
-                       if (pVBInfo->TVInfo & SetYPbPrMode1080i) {
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
+               if (pVBInfo->VBType & VB_SIS301LV) {
+                       if (pVBInfo->TVInfo & TVSetHiVision) {
                                tempbx -= 10;
                        } else {
                                if (pVBInfo->TVInfo & TVSimuMode) {
-                                       if (pVBInfo->TVInfo & SetPALTV) {
+                                       if (pVBInfo->TVInfo & TVSetPAL) {
                                                if (pVBInfo->VBType &
-                                                   VB_XGI301LV) {
+                                                   VB_SIS301LV) {
                                                        if (!(pVBInfo->TVInfo &
-                                                           (SetYPbPrMode525p |
-                                                           SetYPbPrMode750p |
-                                                           SetYPbPrMode1080i)))
+                                                           (TVSetYPbPr525p |
+                                                           TVSetYPbPr750p |
+                                                           TVSetHiVision)))
                                                                tempbx += 40;
                                                } else {
                                                        tempbx += 40;
@@ -4694,12 +4701,12 @@ static void XGI_SetLockRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
                }
        } else {
                if (pVBInfo->TVInfo & TVSimuMode) {
-                       if (pVBInfo->TVInfo & SetPALTV) {
-                               if (pVBInfo->VBType & VB_XGI301LV) {
+                       if (pVBInfo->TVInfo & TVSetPAL) {
+                               if (pVBInfo->VBType & VB_SIS301LV) {
                                        if (!(pVBInfo->TVInfo &
-                                           (SetYPbPrMode525p |
-                                            SetYPbPrMode750p |
-                                            SetYPbPrMode1080i)))
+                                           (TVSetYPbPr525p |
+                                            TVSetYPbPr750p |
+                                            TVSetHiVision)))
                                                tempbx += 40;
                                } else {
                                        tempbx += 40;
@@ -4713,7 +4720,7 @@ static void XGI_SetLockRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        tempax += tempbx;
        push1 = tempax; /* push ax */
 
-       if ((pVBInfo->TVInfo & SetPALTV)) {
+       if ((pVBInfo->TVInfo & TVSetPAL)) {
                if (tempbx <= 513) {
                        if (tempax >= 513)
                                tempbx = 513;
@@ -4761,7 +4768,7 @@ static void XGI_SetLockRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        temp = (temp >> 1) & 0x09;
 
-       if (pVBInfo->VBType & (VB_XGI301LV | VB_XGI302LV | VB_XGI301C))
+       if (pVBInfo->VBType & (VB_SIS301LV | VB_SIS302LV | VB_XGI301C))
                temp |= 0x01;
 
        xgifb_reg_set(pVBInfo->Part1Port, 0x16, temp); /* 0x16 SR01 */
@@ -4813,13 +4820,13 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
        if (pVBInfo->VBInfo & SetCRT2ToSCART)
                tempax |= 0x0200;
 
-       if (!(pVBInfo->TVInfo & SetPALTV))
+       if (!(pVBInfo->TVInfo & TVSetPAL))
                tempax |= 0x1000;
 
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV)
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision)
                tempax |= 0x0100;
 
-       if (pVBInfo->TVInfo & (SetYPbPrMode525p | SetYPbPrMode750p))
+       if (pVBInfo->TVInfo & (TVSetYPbPr525p | TVSetYPbPr750p))
                tempax &= 0xfe00;
 
        tempax = (tempax & 0xff00) >> 8;
@@ -4827,10 +4834,10 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
        xgifb_reg_set(pVBInfo->Part2Port, 0x0, tempax);
        TimingPoint = pVBInfo->NTSCTiming;
 
-       if (pVBInfo->TVInfo & SetPALTV)
+       if (pVBInfo->TVInfo & TVSetPAL)
                TimingPoint = pVBInfo->PALTiming;
 
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
                TimingPoint = pVBInfo->HiTVExtTiming;
 
                if (pVBInfo->VBInfo & SetInSlaveMode)
@@ -4843,14 +4850,14 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
                        TimingPoint = pVBInfo->HiTVTextTiming;
        }
 
-       if (pVBInfo->VBInfo & SetCRT2ToYPbPr) {
-               if (pVBInfo->TVInfo & SetYPbPrMode525i)
+       if (pVBInfo->VBInfo & SetCRT2ToYPbPr525750) {
+               if (pVBInfo->TVInfo & TVSetYPbPr525i)
                        TimingPoint = pVBInfo->YPbPr525iTiming;
 
-               if (pVBInfo->TVInfo & SetYPbPrMode525p)
+               if (pVBInfo->TVInfo & TVSetYPbPr525p)
                        TimingPoint = pVBInfo->YPbPr525pTiming;
 
-               if (pVBInfo->TVInfo & SetYPbPrMode750p)
+               if (pVBInfo->TVInfo & TVSetYPbPr750p)
                        TimingPoint = pVBInfo->YPbPr750pTiming;
        }
 
@@ -4868,10 +4875,10 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
        temp &= 0x80;
        xgifb_reg_and_or(pVBInfo->Part2Port, 0x0A, 0xFF, temp);
 
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV)
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision)
                tempax = 950;
 
-       if (pVBInfo->TVInfo & SetPALTV)
+       if (pVBInfo->TVInfo & TVSetPAL)
                tempax = 520;
        else
                tempax = 440;
@@ -4884,15 +4891,15 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
                temp = (tempax & 0xFF00) >> 8;
                temp += (unsigned short) TimingPoint[0];
 
-               if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                               | VB_XGI302LV | VB_XGI301C)) {
+               if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                               | VB_SIS302LV | VB_XGI301C)) {
                        if (pVBInfo->VBInfo & (SetCRT2ToAVIDEO
                                        | SetCRT2ToSVIDEO | SetCRT2ToSCART
-                                       | SetCRT2ToYPbPr)) {
+                                       | SetCRT2ToYPbPr525750)) {
                                tempcx = pVBInfo->VGAHDE;
                                if (tempcx >= 1024) {
                                        temp = 0x17; /* NTSC */
-                                       if (pVBInfo->TVInfo & SetPALTV)
+                                       if (pVBInfo->TVInfo & TVSetPAL)
                                                temp = 0x19; /* PAL */
                                }
                        }
@@ -4903,15 +4910,15 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
                temp = (tempax & 0xFF00) >> 8;
                temp += TimingPoint[1];
 
-               if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                               | VB_XGI302LV | VB_XGI301C)) {
+               if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                               | VB_SIS302LV | VB_XGI301C)) {
                        if ((pVBInfo->VBInfo & (SetCRT2ToAVIDEO
                                        | SetCRT2ToSVIDEO | SetCRT2ToSCART
-                                       | SetCRT2ToYPbPr))) {
+                                       | SetCRT2ToYPbPr525750))) {
                                tempcx = pVBInfo->VGAHDE;
                                if (tempcx >= 1024) {
                                        temp = 0x1D; /* NTSC */
-                                       if (pVBInfo->TVInfo & SetPALTV)
+                                       if (pVBInfo->TVInfo & TVSetPAL)
                                                temp = 0x52; /* PAL */
                                }
                        }
@@ -4936,7 +4943,7 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
        push1 = tempcx; /* push cx */
        tempcx += 7;
 
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV)
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision)
                tempcx -= 4;
 
        temp = tempcx & 0x00FF;
@@ -4954,7 +4961,7 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        tempbx = push2;
        tempbx = tempbx + 8;
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
                tempbx = tempbx - 4;
                tempcx = tempbx;
        }
@@ -4970,7 +4977,7 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
        xgifb_reg_and_or(pVBInfo->Part2Port, 0x28, 0x0F, temp);
 
        tempcx += 8;
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV)
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision)
                tempcx -= 4;
 
        temp = tempcx & 0xFF;
@@ -5005,9 +5012,9 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        if (pVBInfo->VBInfo & SetCRT2ToTV) {
                if (pVBInfo->VBType &
-                   (VB_XGI301LV | VB_XGI302LV | VB_XGI301C)) {
+                   (VB_SIS301LV | VB_SIS302LV | VB_XGI301C)) {
                        if (!(pVBInfo->TVInfo &
-                           (SetYPbPrMode525p | SetYPbPrMode750p)))
+                           (TVSetYPbPr525p | TVSetYPbPr750p)))
                                tempbx = tempbx >> 1;
                } else
                        tempbx = tempbx >> 1;
@@ -5016,9 +5023,9 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
        tempbx -= 2;
        temp = tempbx & 0x00FF;
 
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
-               if (pVBInfo->VBType & VB_XGI301LV) {
-                       if (pVBInfo->TVInfo & SetYPbPrMode1080i) {
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
+               if (pVBInfo->VBType & VB_SIS301LV) {
+                       if (pVBInfo->TVInfo & TVSetHiVision) {
                                if (pVBInfo->VBInfo & SetInSlaveMode) {
                                        if (ModeNo == 0x2f)
                                                temp += 1;
@@ -5037,9 +5044,9 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
        temp = (tempcx & 0xFF00) >> 8;
        temp |= ((tempbx & 0xFF00) >> 8) << 6;
 
-       if (!(pVBInfo->VBInfo & SetCRT2ToHiVisionTV)) {
-               if (pVBInfo->VBType & VB_XGI301LV) {
-                       if (pVBInfo->TVInfo & SetYPbPrMode1080i) {
+       if (!(pVBInfo->VBInfo & SetCRT2ToHiVision)) {
+               if (pVBInfo->VBType & VB_SIS301LV) {
+                       if (pVBInfo->TVInfo & TVSetHiVision) {
                                temp |= 0x10;
 
                                if (!(pVBInfo->VBInfo & SetCRT2ToSVIDEO))
@@ -5054,18 +5061,18 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        xgifb_reg_set(pVBInfo->Part2Port, 0x30, temp);
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) { /* TV gatingno */
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) { /* TV gatingno */
                tempbx = pVBInfo->VDE;
                tempcx = tempbx - 2;
 
                if (pVBInfo->VBInfo & SetCRT2ToTV) {
-                       if (!(pVBInfo->TVInfo & (SetYPbPrMode525p
-                                       | SetYPbPrMode750p)))
+                       if (!(pVBInfo->TVInfo & (TVSetYPbPr525p
+                                       | TVSetYPbPr750p)))
                                tempbx = tempbx >> 1;
                }
 
-               if (pVBInfo->VBType & (VB_XGI302LV | VB_XGI301C)) {
+               if (pVBInfo->VBType & (VB_SIS302LV | VB_XGI301C)) {
                        temp = 0;
                        if (tempcx & 0x0400)
                                temp |= 0x20;
@@ -5118,8 +5125,8 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
                /* 301b */
                tempecx = 8 * 1024;
 
-               if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                               | VB_XGI302LV | VB_XGI301C)) {
+               if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                               | VB_SIS302LV | VB_XGI301C)) {
                        tempecx = tempecx * 8;
                }
 
@@ -5133,8 +5140,8 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
                tempax = (unsigned short) tempeax;
 
                /* 301b */
-               if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                               | VB_XGI302LV | VB_XGI301C)) {
+               if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                               | VB_SIS302LV | VB_XGI301C)) {
                        tempcx = ((tempax & 0xFF00) >> 5) >> 8;
                }
                /* end 301b */
@@ -5161,7 +5168,7 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
                temp |= 0x18;
 
        xgifb_reg_and_or(pVBInfo->Part2Port, 0x46, ~0x1F, temp);
-       if (pVBInfo->TVInfo & SetPALTV) {
+       if (pVBInfo->TVInfo & TVSetPAL) {
                tempbx = 0x0382;
                tempcx = 0x007e;
        } else {
@@ -5178,13 +5185,13 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
        temp = temp << 2;
        temp |= ((tempbx & 0xFF00) >> 8) & 0x03;
 
-       if (pVBInfo->VBInfo & SetCRT2ToYPbPr) {
+       if (pVBInfo->VBInfo & SetCRT2ToYPbPr525750) {
                temp |= 0x10;
 
-               if (pVBInfo->TVInfo & SetYPbPrMode525p)
+               if (pVBInfo->TVInfo & TVSetYPbPr525p)
                        temp |= 0x20;
 
-               if (pVBInfo->TVInfo & SetYPbPrMode750p)
+               if (pVBInfo->TVInfo & TVSetYPbPr750p)
                        temp |= 0x60;
        }
 
@@ -5192,7 +5199,7 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
        temp = xgifb_reg_get(pVBInfo->Part2Port, 0x43); /* 301b change */
        xgifb_reg_set(pVBInfo->Part2Port, 0x43, (unsigned short) (temp - 3));
 
-       if (!(pVBInfo->TVInfo & (SetYPbPrMode525p | SetYPbPrMode750p))) {
+       if (!(pVBInfo->TVInfo & (TVSetYPbPr525p | TVSetYPbPr750p))) {
                if (pVBInfo->TVInfo & NTSC1024x768) {
                        TimingPoint = XGI_NTSC1024AdjTime;
                        for (i = 0x1c, j = 0; i <= 0x30; i++, j++) {
@@ -5205,12 +5212,12 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        /* [ycchen] 01/14/03 Modify for 301C PALM Support */
        if (pVBInfo->VBType & VB_XGI301C) {
-               if (pVBInfo->TVInfo & SetPALMTV)
+               if (pVBInfo->TVInfo & TVSetPALM)
                        xgifb_reg_and_or(pVBInfo->Part2Port, 0x4E, ~0x08,
                                        0x08); /* PALM Mode */
        }
 
-       if (pVBInfo->TVInfo & SetPALMTV) {
+       if (pVBInfo->TVInfo & TVSetPALM) {
                tempax = (unsigned char) xgifb_reg_get(pVBInfo->Part2Port,
                                0x01);
                tempax--;
@@ -5219,7 +5226,7 @@ static void XGI_SetGroup2(unsigned short ModeNo, unsigned short ModeIdIndex,
                xgifb_reg_and(pVBInfo->Part2Port, 0x00, 0xEF);
        }
 
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV) {
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision) {
                if (!(pVBInfo->VBInfo & SetInSlaveMode))
                        xgifb_reg_set(pVBInfo->Part2Port, 0x0B, 0x00);
        }
@@ -5267,11 +5274,11 @@ static void XGI_SetLCDRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        xgifb_reg_and_or(pVBInfo->Part2Port, 0x2B, 0x0F, temp);
        temp = 0x01;
 
-       if (pVBInfo->LCDResInfo == Panel1280x1024) {
+       if (pVBInfo->LCDResInfo == Panel_1280x1024) {
                if (pVBInfo->ModeType == ModeEGA) {
                        if (pVBInfo->VGAHDE >= 1024) {
                                temp = 0x02;
-                               if (pVBInfo->LCDInfo & LCDVESATiming)
+                               if (pVBInfo->LCDInfo & XGI_LCDVESATiming)
                                        temp = 0x01;
                        }
                }
@@ -5305,14 +5312,14 @@ static void XGI_SetLCDRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        tempah = pVBInfo->LCDResInfo;
        tempah &= PanelResInfo;
 
-       if ((tempah == Panel1024x768) || (tempah == Panel1024x768x75)) {
+       if ((tempah == Panel_1024x768) || (tempah == Panel_1024x768x75)) {
                tempbx = 1024;
                tempcx = 768;
-       } else if ((tempah == Panel1280x1024) ||
-                  (tempah == Panel1280x1024x75)) {
+       } else if ((tempah == Panel_1280x1024) ||
+                  (tempah == Panel_1280x1024x75)) {
                tempbx = 1280;
                tempcx = 1024;
-       } else if (tempah == Panel1400x1050) {
+       } else if (tempah == Panel_1400x1050) {
                tempbx = 1400;
                tempcx = 1050;
        } else {
@@ -5375,7 +5382,7 @@ static void XGI_SetLCDRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
                tempcx = tempcx >> 1;
        }
 
-       if (pVBInfo->VBType & VB_XGI302LV)
+       if (pVBInfo->VBType & VB_SIS302LV)
                tempbx += 1;
 
        if (pVBInfo->VBType & VB_XGI301C) /* tap4 */
@@ -5405,7 +5412,7 @@ static void XGI_SetLCDRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
                tempcx = tempcx >> 1;
        }
 
-       if (pVBInfo->VBType & VB_XGI302LV)
+       if (pVBInfo->VBType & VB_SIS302LV)
                tempbx += 1;
 
        tempcx += tempbx;
@@ -5422,10 +5429,10 @@ static void XGI_SetLCDRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
        temp = tempcx & 0x00FF; /* RHSYEXP2S=lcdhre */
        xgifb_reg_set(pVBInfo->Part2Port, 0x21, temp);
 
-       if (!(pVBInfo->LCDInfo & LCDVESATiming)) {
+       if (!(pVBInfo->LCDInfo & XGI_LCDVESATiming)) {
                if (pVBInfo->VGAVDE == 525) {
-                       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B
-                                       | VB_XGI301LV | VB_XGI302LV
+                       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B
+                                       | VB_SIS301LV | VB_SIS302LV
                                        | VB_XGI301C)) {
                                temp = 0xC6;
                        } else
@@ -5436,8 +5443,8 @@ static void XGI_SetLCDRegs(unsigned short ModeNo, unsigned short ModeIdIndex,
                }
 
                if (pVBInfo->VGAVDE == 420) {
-                       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B
-                                       | VB_XGI301LV | VB_XGI302LV
+                       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B
+                                       | VB_SIS301LV | VB_SIS302LV
                                        | VB_XGI301C)) {
                                temp = 0x4F;
                        } else
@@ -5473,18 +5480,18 @@ static struct XGI301C_Tap4TimingStruct *XGI_GetTap4Ptr(unsigned short tempcx,
        else
                Tap4TimingPtr = xgifb_ntsc_525_tap4_timing; /* NTSC */
 
-       if (pVBInfo->TVInfo & SetPALTV)
+       if (pVBInfo->TVInfo & TVSetPAL)
                Tap4TimingPtr = PALTap4Timing;
 
-       if (pVBInfo->VBInfo & SetCRT2ToYPbPr) {
-               if ((pVBInfo->TVInfo & SetYPbPrMode525i) ||
-                       (pVBInfo->TVInfo & SetYPbPrMode525p))
+       if (pVBInfo->VBInfo & SetCRT2ToYPbPr525750) {
+               if ((pVBInfo->TVInfo & TVSetYPbPr525i) ||
+                       (pVBInfo->TVInfo & TVSetYPbPr525p))
                        Tap4TimingPtr = xgifb_ntsc_525_tap4_timing;
-               if (pVBInfo->TVInfo & SetYPbPrMode750p)
+               if (pVBInfo->TVInfo & TVSetYPbPr750p)
                        Tap4TimingPtr = YPbPr750pTap4Timing;
        }
 
-       if (pVBInfo->VBInfo & SetCRT2ToHiVisionTV)
+       if (pVBInfo->VBInfo & SetCRT2ToHiVision)
                Tap4TimingPtr = xgifb_tap4_timing;
 
        i = 0;
@@ -5510,7 +5517,7 @@ static void XGI_SetTap4Regs(struct vb_device_info *pVBInfo)
                xgifb_reg_set(pVBInfo->Part2Port, i, Tap4TimingPtr->Reg[j]);
 
        if ((pVBInfo->VBInfo & SetCRT2ToTV) &&
-           (!(pVBInfo->VBInfo & SetCRT2ToHiVisionTV))) {
+           (!(pVBInfo->VBInfo & SetCRT2ToHiVision))) {
                /* Set Vertical Scaling */
                Tap4TimingPtr = XGI_GetTap4Ptr(1, pVBInfo);
                for (i = 0xC0, j = 0; i < 0xFF; i++, j++)
@@ -5520,7 +5527,7 @@ static void XGI_SetTap4Regs(struct vb_device_info *pVBInfo)
        }
 
        if ((pVBInfo->VBInfo & SetCRT2ToTV) &&
-           (!(pVBInfo->VBInfo & SetCRT2ToHiVisionTV)))
+           (!(pVBInfo->VBInfo & SetCRT2ToHiVision)))
                /* Enable V.Scaling */
                xgifb_reg_and_or(pVBInfo->Part2Port, 0x4E, ~0x14, 0x04);
        else
@@ -5543,7 +5550,7 @@ static void XGI_SetGroup3(unsigned short ModeNo, unsigned short ModeIdIndex,
                modeflag = pVBInfo->EModeIDTable[ModeIdIndex].Ext_ModeFlag;
 
        xgifb_reg_set(pVBInfo->Part3Port, 0x00, 0x00);
-       if (pVBInfo->TVInfo & SetPALTV) {
+       if (pVBInfo->TVInfo & TVSetPAL) {
                xgifb_reg_set(pVBInfo->Part3Port, 0x13, 0xFA);
                xgifb_reg_set(pVBInfo->Part3Port, 0x14, 0xC8);
        } else {
@@ -5554,15 +5561,15 @@ static void XGI_SetGroup3(unsigned short ModeNo, unsigned short ModeIdIndex,
        if (!(pVBInfo->VBInfo & SetCRT2ToTV))
                return;
 
-       if (pVBInfo->TVInfo & SetPALMTV) {
+       if (pVBInfo->TVInfo & TVSetPALM) {
                xgifb_reg_set(pVBInfo->Part3Port, 0x13, 0xFA);
                xgifb_reg_set(pVBInfo->Part3Port, 0x14, 0xC8);
                xgifb_reg_set(pVBInfo->Part3Port, 0x3D, 0xA8);
        }
 
-       if ((pVBInfo->VBInfo & SetCRT2ToHiVisionTV) || (pVBInfo->VBInfo
-                       & SetCRT2ToYPbPr)) {
-               if (pVBInfo->TVInfo & SetYPbPrMode525i)
+       if ((pVBInfo->VBInfo & SetCRT2ToHiVision) || (pVBInfo->VBInfo
+                       & SetCRT2ToYPbPr525750)) {
+               if (pVBInfo->TVInfo & TVSetYPbPr525i)
                        return;
 
                tempdi = pVBInfo->HiTVGroup3Data;
@@ -5572,17 +5579,17 @@ static void XGI_SetGroup3(unsigned short ModeNo, unsigned short ModeIdIndex,
                                tempdi = pVBInfo->HiTVGroup3Text;
                }
 
-               if (pVBInfo->TVInfo & SetYPbPrMode525p)
+               if (pVBInfo->TVInfo & TVSetYPbPr525p)
                        tempdi = pVBInfo->Ren525pGroup3;
 
-               if (pVBInfo->TVInfo & SetYPbPrMode750p)
+               if (pVBInfo->TVInfo & TVSetYPbPr750p)
                        tempdi = pVBInfo->Ren750pGroup3;
 
                for (i = 0; i <= 0x3E; i++)
                        xgifb_reg_set(pVBInfo->Part3Port, i, tempdi[i]);
 
                if (pVBInfo->VBType & VB_XGI301C) { /* Marcovision */
-                       if (pVBInfo->TVInfo & SetYPbPrMode525p)
+                       if (pVBInfo->TVInfo & TVSetYPbPr525p)
                                xgifb_reg_set(pVBInfo->Part3Port, 0x28, 0x3f);
                }
        }
@@ -5637,7 +5644,7 @@ static void XGI_SetGroup4(unsigned short ModeNo, unsigned short ModeIdIndex,
        if (XGI_IsLCDDualLink(pVBInfo))
                tempbx = tempbx >> 1;
 
-       if (tempcx & SetCRT2ToHiVisionTV) {
+       if (tempcx & SetCRT2ToHiVision) {
                temp = 0;
                if (tempbx <= 1024)
                        temp = 0xA0;
@@ -5656,7 +5663,7 @@ static void XGI_SetGroup4(unsigned short ModeNo, unsigned short ModeIdIndex,
                }
        }
 
-       if (pVBInfo->TVInfo & (SetYPbPrMode525p | SetYPbPrMode750p)) {
+       if (pVBInfo->TVInfo & (TVSetYPbPr525p | TVSetYPbPr750p)) {
                temp = 0x00;
                if (pVBInfo->VGAHDE == 1280)
                        temp = 0x40;
@@ -5667,7 +5674,7 @@ static void XGI_SetGroup4(unsigned short ModeNo, unsigned short ModeIdIndex,
 
        tempebx = pVBInfo->VDE;
 
-       if (tempcx & SetCRT2ToHiVisionTV) {
+       if (tempcx & SetCRT2ToHiVision) {
                if (!(temp & 0xE000))
                        tempbx = tempbx >> 1;
        }
@@ -5705,8 +5712,8 @@ static void XGI_SetGroup4(unsigned short ModeNo, unsigned short ModeIdIndex,
        xgifb_reg_set(pVBInfo->Part4Port, 0x19, temp);
 
        /* 301b */
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
                temp = 0x0028;
                xgifb_reg_set(pVBInfo->Part4Port, 0x1C, temp);
                tempax = pVBInfo->VGAHDE;
@@ -5735,7 +5742,7 @@ static void XGI_SetGroup4(unsigned short ModeNo, unsigned short ModeIdIndex,
                temp = (tempax & 0x00FF);
                xgifb_reg_set(pVBInfo->Part4Port, 0x1D, temp);
 
-               if (pVBInfo->VBInfo & (SetCRT2ToTV | SetCRT2ToHiVisionTV)) {
+               if (pVBInfo->VBInfo & (SetCRT2ToTV | SetCRT2ToHiVision)) {
                        if (pVBInfo->VGAHDE > 800)
                                xgifb_reg_or(pVBInfo->Part4Port, 0x1E, 0x08);
 
@@ -5744,8 +5751,8 @@ static void XGI_SetGroup4(unsigned short ModeNo, unsigned short ModeIdIndex,
 
                if (pVBInfo->VBInfo & SetCRT2ToTV) {
                        if (!(pVBInfo->TVInfo & (NTSC1024x768
-                                       | SetYPbPrMode525p | SetYPbPrMode750p
-                                       | SetYPbPrMode1080i))) {
+                                       | TVSetYPbPr525p | TVSetYPbPr750p
+                                       | TVSetHiVision))) {
                                temp |= 0x0001;
                                if ((pVBInfo->VBInfo & SetInSlaveMode)
                                                && (!(pVBInfo->TVInfo
@@ -5785,7 +5792,7 @@ static void XGI_SetGroup5(unsigned short ModeNo, unsigned short ModeIdIndex,
        Pdata = pVBInfo->Part5Port + 1;
        if (pVBInfo->ModeType == ModeVGA) {
                if (!(pVBInfo->VBInfo & (SetInSlaveMode | LoadDACFlag
-                               | CRT2DisplayFlag))) {
+                               | DisableCRT2Display))) {
                        XGINew_EnableCRT2(pVBInfo);
                }
        }
@@ -6074,7 +6081,7 @@ static unsigned char XGI_IsLCDON(struct vb_device_info *pVBInfo)
        tempax = pVBInfo->VBInfo;
        if (tempax & SetCRT2ToDualEdge)
                return 0;
-       else if (tempax & (DisableCRT2Display | SwitchToCRT2 | SetSimuScanMode))
+       else if (tempax & (DisableCRT2Display | SwitchCRT2 | SetSimuScanMode))
                return 1;
 
        return 0;
@@ -6140,15 +6147,15 @@ static void XGI_DisableBridge(struct xgifb_video_info *xgifb_info,
 {
        unsigned short tempah = 0;
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
                tempah = 0x3F;
                if (!(pVBInfo->VBInfo &
                    (DisableCRT2Display | SetSimuScanMode))) {
-                       if (pVBInfo->VBInfo & SetCRT2ToLCDA) {
+                       if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) {
                                if (pVBInfo->VBInfo & SetCRT2ToDualEdge) {
                                        tempah = 0x7F; /* Disable Channel A */
-                                       if (!(pVBInfo->VBInfo & SetCRT2ToLCDA))
+                                       if (!(pVBInfo->VBInfo & XGI_SetCRT2ToLCDA))
                                                /* Disable Channel B */
                                                tempah = 0xBF;
 
@@ -6166,8 +6173,8 @@ static void XGI_DisableBridge(struct xgifb_video_info *xgifb_info,
                /* disable part4_1f */
                xgifb_reg_and(pVBInfo->Part4Port, 0x1F, tempah);
 
-               if (pVBInfo->VBType & (VB_XGI302LV | VB_XGI301C)) {
-                       if (((pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)))
+               if (pVBInfo->VBType & (VB_SIS302LV | VB_XGI301C)) {
+                       if (((pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)))
                                        || (XGI_DisableChISLCD(pVBInfo))
                                        || (XGI_IsLCDON(pVBInfo)))
                                /* LVDS Driver power down */
@@ -6175,16 +6182,16 @@ static void XGI_DisableBridge(struct xgifb_video_info *xgifb_info,
                }
 
                if ((pVBInfo->SetFlag & DisableChA) || (pVBInfo->VBInfo
-                               & (DisableCRT2Display | SetCRT2ToLCDA
+                               & (DisableCRT2Display | XGI_SetCRT2ToLCDA
                                                | SetSimuScanMode))) {
                        if (pVBInfo->SetFlag & GatingCRT)
                                XGI_EnableGatingCRT(HwDeviceExtension, pVBInfo);
                        XGI_DisplayOff(xgifb_info, HwDeviceExtension, pVBInfo);
                }
 
-               if (pVBInfo->VBInfo & SetCRT2ToLCDA) {
+               if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) {
                        if ((pVBInfo->SetFlag & DisableChA) || (pVBInfo->VBInfo
-                                       & SetCRT2ToLCDA))
+                                       & XGI_SetCRT2ToLCDA))
                                /* Power down */
                                xgifb_reg_and(pVBInfo->Part1Port, 0x1e, 0xdf);
                }
@@ -6198,7 +6205,7 @@ static void XGI_DisableBridge(struct xgifb_video_info *xgifb_info,
                if ((pVBInfo->SetFlag & DisableChB) ||
                    (pVBInfo->VBInfo &
                        (DisableCRT2Display | SetSimuScanMode)) ||
-                   ((!(pVBInfo->VBInfo & SetCRT2ToLCDA)) &&
+                   ((!(pVBInfo->VBInfo & XGI_SetCRT2ToLCDA)) &&
                    (pVBInfo->VBInfo &
                        (SetCRT2ToRAMDAC | SetCRT2ToLCD | SetCRT2ToTV))))
                        xgifb_reg_or(pVBInfo->Part1Port, 0x00, 0x80);
@@ -6206,7 +6213,7 @@ static void XGI_DisableBridge(struct xgifb_video_info *xgifb_info,
                if ((pVBInfo->SetFlag & DisableChB) ||
                    (pVBInfo->VBInfo &
                        (DisableCRT2Display | SetSimuScanMode)) ||
-                   (!(pVBInfo->VBInfo & SetCRT2ToLCDA)) ||
+                   (!(pVBInfo->VBInfo & XGI_SetCRT2ToLCDA)) ||
                    (pVBInfo->VBInfo &
                        (SetCRT2ToRAMDAC | SetCRT2ToLCD | SetCRT2ToTV))) {
                        /* save Part1 index 0 */
@@ -6227,7 +6234,7 @@ static void XGI_DisableBridge(struct xgifb_video_info *xgifb_info,
                        xgifb_reg_and(pVBInfo->P3c4, 0x32, 0xDF);
                }
 
-               if (pVBInfo->VBInfo & (DisableCRT2Display | SetCRT2ToLCDA
+               if (pVBInfo->VBInfo & (DisableCRT2Display | XGI_SetCRT2ToLCDA
                                | SetSimuScanMode))
                        XGI_DisplayOff(xgifb_info, HwDeviceExtension, pVBInfo);
        }
@@ -6254,15 +6261,15 @@ static unsigned short XGI_GetTVPtrIndex(struct vb_device_info *pVBInfo)
 {
        unsigned short tempbx = 0;
 
-       if (pVBInfo->TVInfo & SetPALTV)
+       if (pVBInfo->TVInfo & TVSetPAL)
                tempbx = 2;
-       if (pVBInfo->TVInfo & SetYPbPrMode1080i)
+       if (pVBInfo->TVInfo & TVSetHiVision)
                tempbx = 4;
-       if (pVBInfo->TVInfo & SetYPbPrMode525i)
+       if (pVBInfo->TVInfo & TVSetYPbPr525i)
                tempbx = 6;
-       if (pVBInfo->TVInfo & SetYPbPrMode525p)
+       if (pVBInfo->TVInfo & TVSetYPbPr525p)
                tempbx = 8;
-       if (pVBInfo->TVInfo & SetYPbPrMode750p)
+       if (pVBInfo->TVInfo & TVSetYPbPr750p)
                tempbx = 10;
        if (pVBInfo->TVInfo & TVSimuMode)
                tempbx++;
@@ -6293,23 +6300,23 @@ static void XGI_GetTVPtrIndex2(unsigned short *tempbx, unsigned char *tempcl,
        *tempcl = 0;
        *tempch = 0;
 
-       if (pVBInfo->TVInfo & SetPALTV)
+       if (pVBInfo->TVInfo & TVSetPAL)
                *tempbx = 1;
 
-       if (pVBInfo->TVInfo & SetPALMTV)
+       if (pVBInfo->TVInfo & TVSetPALM)
                *tempbx = 2;
 
-       if (pVBInfo->TVInfo & SetPALNTV)
+       if (pVBInfo->TVInfo & TVSetPALN)
                *tempbx = 3;
 
        if (pVBInfo->TVInfo & NTSC1024x768) {
                *tempbx = 4;
-               if (pVBInfo->TVInfo & SetPALMTV)
+               if (pVBInfo->TVInfo & TVSetPALM)
                        *tempbx = 5;
        }
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
                if ((!(pVBInfo->VBInfo & SetInSlaveMode)) || (pVBInfo->TVInfo
                                & TVSimuMode)) {
                        *tempbx += 8;
@@ -6317,8 +6324,8 @@ static void XGI_GetTVPtrIndex2(unsigned short *tempbx, unsigned char *tempcl,
                }
        }
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C))
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C))
                (*tempch)++;
 }
 
@@ -6328,9 +6335,9 @@ static void XGI_SetDelayComp(struct vb_device_info *pVBInfo)
 
        unsigned char tempah, tempbl, tempbh;
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
-               if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
+               if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA
                                | SetCRT2ToTV | SetCRT2ToRAMDAC)) {
                        tempbl = 0;
                        tempbh = 0;
@@ -6338,20 +6345,20 @@ static void XGI_SetDelayComp(struct vb_device_info *pVBInfo)
                        index = XGI_GetTVPtrIndex(pVBInfo); /* Get TV Delay */
                        tempbl = pVBInfo->XGI_TVDelayList[index];
 
-                       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B
-                                       | VB_XGI301LV | VB_XGI302LV
+                       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B
+                                       | VB_SIS301LV | VB_SIS302LV
                                        | VB_XGI301C))
                                tempbl = pVBInfo->XGI_TVDelayList2[index];
 
                        if (pVBInfo->VBInfo & SetCRT2ToDualEdge)
                                tempbl = tempbl >> 4;
-                       if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) {
+                       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
                                /* Get LCD Delay */
                                index = XGI_GetLCDCapPtr(pVBInfo);
                                tempbh = pVBInfo->LCDCapList[index].
                                                LCD_DelayCompensation;
 
-                               if (!(pVBInfo->VBInfo & SetCRT2ToLCDA))
+                               if (!(pVBInfo->VBInfo & XGI_SetCRT2ToLCDA))
                                        tempbl = tempbh;
                        }
 
@@ -6365,7 +6372,7 @@ static void XGI_SetDelayComp(struct vb_device_info *pVBInfo)
                                tempah |= tempbl;
                        }
 
-                       if (pVBInfo->VBInfo & SetCRT2ToLCDA) { /* Channel A */
+                       if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) { /* Channel A */
                                tempah &= 0x0F;
                                tempah |= tempbh;
                        }
@@ -6475,13 +6482,13 @@ static void XGI_SetLCDCap(struct vb_device_info *pVBInfo)
        tempcx = pVBInfo->LCDCapList[XGI_GetLCDCapPtr(pVBInfo)].LCD_Capability;
 
        if (pVBInfo->VBType &
-           (VB_XGI301B |
-            VB_XGI302B |
-            VB_XGI301LV |
-            VB_XGI302LV |
+           (VB_SIS301B |
+            VB_SIS302B |
+            VB_SIS301LV |
+            VB_SIS302LV |
             VB_XGI301C)) { /* 301LV/302LV only */
                if (pVBInfo->VBType &
-                   (VB_XGI301LV | VB_XGI302LV | VB_XGI301C)) {
+                   (VB_SIS301LV | VB_SIS302LV | VB_XGI301C)) {
                        /* Set 301LV Capability */
                        xgifb_reg_set(pVBInfo->Part4Port, 0x24,
                                        (unsigned char) (tempcx & 0x1F));
@@ -6493,14 +6500,14 @@ static void XGI_SetLCDCap(struct vb_device_info *pVBInfo)
                                                | EnablePLLSPLOW)) >> 8));
        }
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
                if (pVBInfo->VBInfo & SetCRT2ToLCD)
                        XGI_SetLCDCap_B(tempcx, pVBInfo);
-               else if (pVBInfo->VBInfo & SetCRT2ToLCDA)
+               else if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA)
                        XGI_SetLCDCap_A(tempcx, pVBInfo);
 
-               if (pVBInfo->VBType & (VB_XGI302LV | VB_XGI301C)) {
+               if (pVBInfo->VBType & (VB_SIS302LV | VB_XGI301C)) {
                        if (tempcx & EnableSpectrum)
                                SetSpectrum(pVBInfo);
                }
@@ -6524,7 +6531,7 @@ static void XGI_SetAntiFlicker(unsigned short ModeNo,
 
        unsigned char tempah;
 
-       if (pVBInfo->TVInfo & (SetYPbPrMode525p | SetYPbPrMode750p))
+       if (pVBInfo->TVInfo & (TVSetYPbPr525p | TVSetYPbPr750p))
                return;
 
        tempbx = XGI_GetTVPtrIndex(pVBInfo);
@@ -6648,8 +6655,8 @@ static void XGI_SetYFilter(unsigned short ModeNo, unsigned short ModeIdIndex,
                xgifb_reg_set(pVBInfo->Part2Port, 0x38, filterPtr[index++]);
        }
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
                xgifb_reg_set(pVBInfo->Part2Port, 0x48, filterPtr[index++]);
                xgifb_reg_set(pVBInfo->Part2Port, 0x49, filterPtr[index++]);
                xgifb_reg_set(pVBInfo->Part2Port, 0x4A, filterPtr[index++]);
@@ -6668,7 +6675,7 @@ static void XGI_OEM310Setting(unsigned short ModeNo,
 {
        XGI_SetDelayComp(pVBInfo);
 
-       if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA))
+       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA))
                XGI_SetLCDCap(pVBInfo);
 
        if (pVBInfo->VBInfo & SetCRT2ToTV) {
@@ -6676,7 +6683,7 @@ static void XGI_OEM310Setting(unsigned short ModeNo,
                XGI_SetYFilter(ModeNo, ModeIdIndex, pVBInfo);
                XGI_SetAntiFlicker(ModeNo, ModeIdIndex, pVBInfo);
 
-               if (pVBInfo->VBType & VB_XGI301)
+               if (pVBInfo->VBType & VB_SIS301)
                        XGI_SetEdgeEnhance(ModeNo, ModeIdIndex, pVBInfo);
        }
 }
@@ -6732,15 +6739,15 @@ static void XGI_SetCRT2ModeRegs(unsigned short ModeNo,
                tempbl = 0xff;
 
                if (pVBInfo->VBInfo & (SetCRT2ToRAMDAC | SetCRT2ToTV
-                               | SetCRT2ToLCD | SetCRT2ToLCDA)) {
-                       if ((pVBInfo->VBInfo & SetCRT2ToLCDA) &&
+                               | SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
+                       if ((pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) &&
                            (!(pVBInfo->VBInfo & SetSimuScanMode))) {
                                tempbl &= 0xf7;
                                tempah |= 0x01;
                                xgifb_reg_and_or(pVBInfo->Part1Port, 0x2e,
                                                tempbl, tempah);
                        } else {
-                               if (pVBInfo->VBInfo & SetCRT2ToLCDA) {
+                               if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) {
                                        tempbl &= 0xf7;
                                        tempah |= 0x01;
                                }
@@ -6780,7 +6787,7 @@ static void XGI_SetCRT2ModeRegs(unsigned short ModeNo,
        }
 
        if (pVBInfo->VBInfo & (SetCRT2ToRAMDAC | SetCRT2ToTV | SetCRT2ToLCD
-                       | SetCRT2ToLCDA)) {
+                       | XGI_SetCRT2ToLCDA)) {
                tempah &= (~0x08);
                if ((pVBInfo->ModeType == ModeVGA) && (!(pVBInfo->VBInfo
                                & SetInSlaveMode))) {
@@ -6807,24 +6814,24 @@ static void XGI_SetCRT2ModeRegs(unsigned short ModeNo,
                                tempah |= 0x40;
                }
 
-               if ((pVBInfo->LCDResInfo == Panel1280x1024)
-                               || (pVBInfo->LCDResInfo == Panel1280x1024x75))
+               if ((pVBInfo->LCDResInfo == Panel_1280x1024)
+                               || (pVBInfo->LCDResInfo == Panel_1280x1024x75))
                        tempah |= 0x80;
 
-               if (pVBInfo->LCDResInfo == Panel1280x960)
+               if (pVBInfo->LCDResInfo == Panel_1280x960)
                        tempah |= 0x80;
 
                xgifb_reg_set(pVBInfo->Part4Port, 0x0C, tempah);
        }
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
                tempah = 0;
                tempbl = 0xfb;
 
                if (pVBInfo->VBInfo & SetCRT2ToDualEdge) {
                        tempbl = 0xff;
-                       if (pVBInfo->VBInfo & SetCRT2ToLCDA)
+                       if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA)
                                tempah |= 0x04; /* shampoo 0129 */
                }
 
@@ -6849,7 +6856,7 @@ static void XGI_SetCRT2ModeRegs(unsigned short ModeNo,
 
        tempah = 0;
        tempbl = 0x7f;
-       if (!(pVBInfo->VBInfo & SetCRT2ToLCDA)) {
+       if (!(pVBInfo->VBInfo & XGI_SetCRT2ToLCDA)) {
                tempbl = 0xff;
                if (!(pVBInfo->VBInfo & SetCRT2ToDualEdge))
                        tempah |= 0x80;
@@ -6857,7 +6864,7 @@ static void XGI_SetCRT2ModeRegs(unsigned short ModeNo,
 
        xgifb_reg_and_or(pVBInfo->Part4Port, 0x23, tempbl, tempah);
 
-       if (pVBInfo->VBType & (VB_XGI302LV | VB_XGI301C)) {
+       if (pVBInfo->VBType & (VB_SIS302LV | VB_XGI301C)) {
                if (pVBInfo->LCDInfo & SetLCDDualLink) {
                        xgifb_reg_or(pVBInfo->Part4Port, 0x27, 0x20);
                        xgifb_reg_or(pVBInfo->Part4Port, 0x34, 0x10);
@@ -6872,7 +6879,7 @@ static void XGI_CloseCRTC(struct xgi_hw_device_info *HwDeviceExtension,
 
        tempbx = 0;
 
-       if (pVBInfo->VBInfo & SetCRT2ToLCDA)
+       if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA)
                tempbx = 0x08A0;
 
 }
@@ -6937,10 +6944,10 @@ unsigned short XGI_GetRatePtrCRT2(struct xgi_hw_device_info *pXGIHWDE,
                index--;
 
        if (pVBInfo->SetFlag & ProgrammingCRT2) {
-               if (pVBInfo->VBInfo & (SetCRT2ToLCD | SetCRT2ToLCDA)) {
+               if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
                        if (pVBInfo->IF_DEF_LVDS == 0) {
-                               if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B
-                                               | VB_XGI301LV | VB_XGI302LV
+                               if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B
+                                               | VB_SIS301LV | VB_SIS302LV
                                                | VB_XGI301C))
                                        /* 301b */
                                        temp = LCDARefreshIndex[
@@ -6983,7 +6990,7 @@ unsigned short XGI_GetRatePtrCRT2(struct xgi_hw_device_info *pXGIHWDE,
                        break;
                temp = pVBInfo->RefIndex[RefreshRateTableIndex + i].
                        Ext_InfoFlag;
-               temp &= ModeInfoFlag;
+               temp &= ModeTypeMask;
                if (temp < pVBInfo->ModeType)
                        break;
                i++;
@@ -7163,8 +7170,8 @@ static void XGI_EnableBridge(struct xgifb_video_info *xgifb_info,
 {
        unsigned short tempah;
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
                if (!(pVBInfo->SetFlag & DisableChA)) {
                        if (pVBInfo->SetFlag & EnableChA) {
                                /* Power on */
@@ -7207,11 +7214,11 @@ static void XGI_EnableBridge(struct xgifb_video_info *xgifb_info,
                                || (!(pVBInfo->VBInfo & DisableCRT2Display))) {
                        xgifb_reg_and_or(pVBInfo->Part2Port, 0x00, ~0xE0,
                                        0x20); /* shampoo 0129 */
-                       if (pVBInfo->VBType & (VB_XGI302LV | VB_XGI301C)) {
+                       if (pVBInfo->VBType & (VB_SIS302LV | VB_XGI301C)) {
                                if (!XGI_DisableChISLCD(pVBInfo)) {
                                        if (XGI_EnableChISLCD(pVBInfo) ||
                                            (pVBInfo->VBInfo &
-                                           (SetCRT2ToLCD | SetCRT2ToLCDA)))
+                                           (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)))
                                                /* LVDS PLL power on */
                                                xgifb_reg_and(
                                                        pVBInfo->Part4Port,
@@ -7229,12 +7236,12 @@ static void XGI_EnableBridge(struct xgifb_video_info *xgifb_info,
                        tempah = 0xc0;
 
                        if (!(pVBInfo->VBInfo & SetSimuScanMode)) {
-                               if (pVBInfo->VBInfo & SetCRT2ToLCDA) {
+                               if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) {
                                        if (pVBInfo->VBInfo &
                                            SetCRT2ToDualEdge) {
                                                tempah = tempah & 0x40;
                                                if (pVBInfo->VBInfo &
-                                                   SetCRT2ToLCDA)
+                                                   XGI_SetCRT2ToLCDA)
                                                        tempah = tempah ^ 0xC0;
 
                                                if (pVBInfo->SetFlag &
@@ -7271,7 +7278,7 @@ static void XGI_EnableBridge(struct xgifb_video_info *xgifb_info,
        } /* 301 */
        else { /* LVDS */
                if (pVBInfo->VBInfo & (SetCRT2ToTV | SetCRT2ToLCD
-                               | SetCRT2ToLCDA))
+                               | XGI_SetCRT2ToLCDA))
                        /* enable CRT2 */
                        xgifb_reg_or(pVBInfo->Part1Port, 0x1E, 0x20);
 
@@ -7311,9 +7318,9 @@ static void XGI_SetCRT1Group(struct xgifb_video_info *xgifb_info,
        pVBInfo->SetFlag &= temp;
        pVBInfo->SelectCRT2Rate = 0;
 
-       if (pVBInfo->VBType & (VB_XGI301B | VB_XGI302B | VB_XGI301LV
-                       | VB_XGI302LV | VB_XGI301C)) {
-               if (pVBInfo->VBInfo & (SetSimuScanMode | SetCRT2ToLCDA
+       if (pVBInfo->VBType & (VB_SIS301B | VB_SIS302B | VB_SIS301LV
+                       | VB_SIS302LV | VB_XGI301C)) {
+               if (pVBInfo->VBInfo & (SetSimuScanMode | XGI_SetCRT2ToLCDA
                                | SetInSlaveMode)) {
                        pVBInfo->SetFlag |= ProgrammingCRT2;
                }
@@ -7415,11 +7422,11 @@ unsigned char XGISetModeNew(struct xgifb_video_info *xgifb_info,
        pVBInfo->P3c9 = pVBInfo->BaseAddr + 0x19;
        pVBInfo->P3da = pVBInfo->BaseAddr + 0x2A;
        pVBInfo->Part0Port = pVBInfo->BaseAddr + XGI_CRT2_PORT_00;
-       pVBInfo->Part1Port = pVBInfo->BaseAddr + XGI_CRT2_PORT_04;
-       pVBInfo->Part2Port = pVBInfo->BaseAddr + XGI_CRT2_PORT_10;
-       pVBInfo->Part3Port = pVBInfo->BaseAddr + XGI_CRT2_PORT_12;
-       pVBInfo->Part4Port = pVBInfo->BaseAddr + XGI_CRT2_PORT_14;
-       pVBInfo->Part5Port = pVBInfo->BaseAddr + XGI_CRT2_PORT_14 + 2;
+       pVBInfo->Part1Port = pVBInfo->BaseAddr + SIS_CRT2_PORT_04;
+       pVBInfo->Part2Port = pVBInfo->BaseAddr + SIS_CRT2_PORT_10;
+       pVBInfo->Part3Port = pVBInfo->BaseAddr + SIS_CRT2_PORT_12;
+       pVBInfo->Part4Port = pVBInfo->BaseAddr + SIS_CRT2_PORT_14;
+       pVBInfo->Part5Port = pVBInfo->BaseAddr + SIS_CRT2_PORT_14 + 2;
 
        /* for x86 Linux, XG21 LVDS */
        if (HwDeviceExtension->jChipType == XG21) {
@@ -7452,20 +7459,20 @@ unsigned char XGISetModeNew(struct xgifb_video_info *xgifb_info,
                XGI_GetLCDInfo(ModeNo, ModeIdIndex, pVBInfo);
                XGI_DisableBridge(xgifb_info, HwDeviceExtension, pVBInfo);
 
-               if (pVBInfo->VBInfo & (SetSimuScanMode | SetCRT2ToLCDA)) {
+               if (pVBInfo->VBInfo & (SetSimuScanMode | XGI_SetCRT2ToLCDA)) {
                        XGI_SetCRT1Group(xgifb_info, HwDeviceExtension, ModeNo,
                                        ModeIdIndex, pVBInfo);
 
-                       if (pVBInfo->VBInfo & SetCRT2ToLCDA) {
+                       if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) {
                                XGI_SetLCDAGroup(ModeNo, ModeIdIndex,
                                                HwDeviceExtension, pVBInfo);
                        }
                } else {
-                       if (!(pVBInfo->VBInfo & SwitchToCRT2)) {
+                       if (!(pVBInfo->VBInfo & SwitchCRT2)) {
                                XGI_SetCRT1Group(xgifb_info,
                                                HwDeviceExtension, ModeNo,
                                                ModeIdIndex, pVBInfo);
-                               if (pVBInfo->VBInfo & SetCRT2ToLCDA) {
+                               if (pVBInfo->VBInfo & XGI_SetCRT2ToLCDA) {
                                        XGI_SetLCDAGroup(ModeNo, ModeIdIndex,
                                                        HwDeviceExtension,
                                                        pVBInfo);
@@ -7473,7 +7480,7 @@ unsigned char XGISetModeNew(struct xgifb_video_info *xgifb_info,
                        }
                }
 
-               if (pVBInfo->VBInfo & (SetSimuScanMode | SwitchToCRT2)) {
+               if (pVBInfo->VBInfo & (SetSimuScanMode | SwitchCRT2)) {
                        switch (HwDeviceExtension->ujVBChipID) {
                        case VB_CHIP_301:
                                XGI_SetCRT2Group301(ModeNo, HwDeviceExtension,
@@ -7504,10 +7511,10 @@ unsigned char XGISetModeNew(struct xgifb_video_info *xgifb_info,
 
                if (ModeNo <= 0x13) {
                        pVBInfo->ModeType = pVBInfo->SModeIDTable[ModeIdIndex].
-                                               St_ModeFlag & ModeInfoFlag;
+                                               St_ModeFlag & ModeTypeMask;
                } else {
                        pVBInfo->ModeType = pVBInfo->EModeIDTable[ModeIdIndex].
-                                               Ext_ModeFlag & ModeInfoFlag;
+                                               Ext_ModeFlag & ModeTypeMask;
                }
 
                pVBInfo->SetFlag = 0;