Commit 56d276ca authored by Aaro Koskinen's avatar Aaro Koskinen Committed by Greg Kroah-Hartman

staging: xgifb: XGI_GetTVPtr: drop the table parameter

Only one TV data table is used by the driver, delete unneeded complexity.
Signed-off-by: default avatarAaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 4c047ac4
...@@ -1764,47 +1764,18 @@ static void *XGI_GetLcdPtr(unsigned short BX, unsigned short ModeNo, ...@@ -1764,47 +1764,18 @@ static void *XGI_GetLcdPtr(unsigned short BX, unsigned short ModeNo,
return NULL; return NULL;
} }
static void *XGI_GetTVPtr(unsigned short BX, unsigned short ModeNo, static void *XGI_GetTVPtr(unsigned short ModeNo,
unsigned short ModeIdIndex, unsigned short ModeIdIndex,
unsigned short RefreshRateTableIndex, unsigned short RefreshRateTableIndex,
struct vb_device_info *pVBInfo) struct vb_device_info *pVBInfo)
{ {
unsigned short i, tempdx, tempbx, tempal, modeflag, table; unsigned short i, tempdx, tempal, modeflag;
struct XGI330_TVDataTablStruct *tempdi = NULL; struct XGI330_TVDataTablStruct *tempdi = NULL;
tempbx = BX;
modeflag = pVBInfo->EModeIDTable[ModeIdIndex].Ext_ModeFlag; modeflag = pVBInfo->EModeIDTable[ModeIdIndex].Ext_ModeFlag;
tempal = pVBInfo->RefIndex[RefreshRateTableIndex].Ext_CRT2CRTC; tempal = pVBInfo->RefIndex[RefreshRateTableIndex].Ext_CRT2CRTC;
tempal = tempal & 0x3f; tempal = tempal & 0x3f;
table = tempbx; tempdi = XGI_TVDataTable;
switch (tempbx) {
case 0:
tempdi = NULL;
break;
case 1:
tempdi = NULL;
break;
case 2:
case 6:
tempdi = xgifb_chrontel_tv;
break;
case 3:
tempdi = NULL;
break;
case 4:
tempdi = XGI_TVDataTable;
break;
case 5:
tempdi = NULL;
break;
default:
break;
}
if (tempdi == NULL) /* OEMUtil */
return NULL;
tempdx = pVBInfo->TVInfo; tempdx = pVBInfo->TVInfo;
if (pVBInfo->VBInfo & SetInSlaveMode) if (pVBInfo->VBInfo & SetInSlaveMode)
...@@ -1821,70 +1792,51 @@ static void *XGI_GetTVPtr(unsigned short BX, unsigned short ModeNo, ...@@ -1821,70 +1792,51 @@ static void *XGI_GetTVPtr(unsigned short BX, unsigned short ModeNo,
i++; i++;
} }
if (table == 0x04) { switch (tempdi[i].DATAPTR) {
switch (tempdi[i].DATAPTR) { case 0:
case 0: return &XGI_ExtPALData[tempal];
return &XGI_ExtPALData[tempal]; break;
break; case 1:
case 1: return &XGI_ExtNTSCData[tempal];
return &XGI_ExtNTSCData[tempal]; break;
break; case 2:
case 2: return &XGI_StPALData[tempal];
return &XGI_StPALData[tempal]; break;
break; case 3:
case 3: return &XGI_StNTSCData[tempal];
return &XGI_StNTSCData[tempal]; break;
break; case 4:
case 4: return &XGI_ExtHiTVData[tempal];
return &XGI_ExtHiTVData[tempal]; break;
break; case 5:
case 5: return &XGI_St2HiTVData[tempal];
return &XGI_St2HiTVData[tempal]; break;
break; case 6:
case 6: return &XGI_ExtYPbPr525iData[tempal];
return &XGI_ExtYPbPr525iData[tempal]; break;
break; case 7:
case 7: return &XGI_ExtYPbPr525pData[tempal];
return &XGI_ExtYPbPr525pData[tempal]; break;
break; case 8:
case 8: return &XGI_ExtYPbPr750pData[tempal];
return &XGI_ExtYPbPr750pData[tempal]; break;
break; case 9:
case 9: return &XGI_StYPbPr525iData[tempal];
return &XGI_StYPbPr525iData[tempal]; break;
break; case 10:
case 10: return &XGI_StYPbPr525pData[tempal];
return &XGI_StYPbPr525pData[tempal]; break;
break; case 11:
case 11: return &XGI_StYPbPr750pData[tempal];
return &XGI_StYPbPr750pData[tempal]; break;
break; case 12: /* avoid system hang */
case 12: /* avoid system hang */ return &XGI_ExtNTSCData[tempal];
return &XGI_ExtNTSCData[tempal]; break;
break; case 13:
case 13: return &XGI_St1HiTVData[tempal];
return &XGI_St1HiTVData[tempal]; break;
break; default:
default: break;
break;
}
} else if (table == 0x02) {
switch (tempdi[i].DATAPTR) {
case 0:
return &XGI_CHTVUNTSCData[tempal];
break;
case 1:
return &XGI_CHTVONTSCData[tempal];
break;
case 2:
return &XGI_CHTVUPALData[tempal];
break;
case 3:
return &XGI_CHTVOPALData[tempal];
break;
default:
break;
}
} }
return NULL; return NULL;
} }
...@@ -3414,10 +3366,8 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex, ...@@ -3414,10 +3366,8 @@ static void XGI_GetCRT2Data(unsigned short ModeNo, unsigned short ModeIdIndex,
} }
if (pVBInfo->VBInfo & (SetCRT2ToTV)) { if (pVBInfo->VBInfo & (SetCRT2ToTV)) {
tempbx = 4; TVPtr = (struct SiS_TVData *) XGI_GetTVPtr(ModeNo, ModeIdIndex,
TVPtr = (struct SiS_TVData *) XGI_GetTVPtr(tempbx, RefreshRateTableIndex, pVBInfo);
ModeNo, ModeIdIndex, RefreshRateTableIndex,
pVBInfo);
pVBInfo->RVBHCMAX = TVPtr->RVBHCMAX; pVBInfo->RVBHCMAX = TVPtr->RVBHCMAX;
pVBInfo->RVBHCFACT = TVPtr->RVBHCFACT; pVBInfo->RVBHCFACT = TVPtr->RVBHCFACT;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment