staging: xgifb: refactor XGI_GetLVDSData()
authorAaro Koskinen <aaro.koskinen@iki.fi>
Sun, 4 Nov 2012 19:14:49 +0000 (21:14 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 13 Nov 2012 20:54:19 +0000 (12:54 -0800)
Refactor XGI_GetLVDSData() to avoid nesting and redundant ifs.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/xgifb/vb_setmode.c

index 33d5aa0..3faa1da 100644 (file)
@@ -1380,37 +1380,35 @@ static void XGI_GetLVDSData(unsigned short ModeNo, unsigned short ModeIdIndex,
                unsigned short RefreshRateTableIndex,
                struct vb_device_info *pVBInfo)
 {
-       struct SiS_LVDSData const *LCDPtr = NULL;
+       struct SiS_LVDSData const *LCDPtr;
 
-       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
-               LCDPtr = XGI_GetLcdPtr(XGI_EPLLCDDataPtr, ModeNo, ModeIdIndex,
-                                      RefreshRateTableIndex, pVBInfo);
-               pVBInfo->VGAHT = LCDPtr->VGAHT;
-               pVBInfo->VGAVT = LCDPtr->VGAVT;
-               pVBInfo->HT = LCDPtr->LCDHT;
-               pVBInfo->VT = LCDPtr->LCDVT;
-       }
+       if (!(pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)))
+               return;
 
-       if (pVBInfo->VBInfo & (SetCRT2ToLCD | XGI_SetCRT2ToLCDA)) {
-               if (!(pVBInfo->LCDInfo & (SetLCDtoNonExpanding
-                               | EnableScalingLCD))) {
-                       if ((pVBInfo->LCDResInfo == Panel_1024x768) ||
-                           (pVBInfo->LCDResInfo == Panel_1024x768x75)) {
-                               pVBInfo->HDE = 1024;
-                               pVBInfo->VDE = 768;
-                       } else if ((pVBInfo->LCDResInfo == Panel_1280x1024) ||
-                                  (pVBInfo->LCDResInfo ==
-                                       Panel_1280x1024x75)) {
-                               pVBInfo->HDE = 1280;
-                               pVBInfo->VDE = 1024;
-                       } else if (pVBInfo->LCDResInfo == Panel_1400x1050) {
-                               pVBInfo->HDE = 1400;
-                               pVBInfo->VDE = 1050;
-                       } else {
-                               pVBInfo->HDE = 1600;
-                               pVBInfo->VDE = 1200;
-                       }
-               }
+       LCDPtr = XGI_GetLcdPtr(XGI_EPLLCDDataPtr, ModeNo, ModeIdIndex,
+                              RefreshRateTableIndex, pVBInfo);
+       pVBInfo->VGAHT  = LCDPtr->VGAHT;
+       pVBInfo->VGAVT  = LCDPtr->VGAVT;
+       pVBInfo->HT     = LCDPtr->LCDHT;
+       pVBInfo->VT     = LCDPtr->LCDVT;
+
+       if (pVBInfo->LCDInfo & (SetLCDtoNonExpanding | EnableScalingLCD))
+               return;
+
+       if ((pVBInfo->LCDResInfo == Panel_1024x768) ||
+           (pVBInfo->LCDResInfo == Panel_1024x768x75)) {
+               pVBInfo->HDE = 1024;
+               pVBInfo->VDE = 768;
+       } else if ((pVBInfo->LCDResInfo == Panel_1280x1024) ||
+                  (pVBInfo->LCDResInfo == Panel_1280x1024x75)) {
+               pVBInfo->HDE = 1280;
+               pVBInfo->VDE = 1024;
+       } else if (pVBInfo->LCDResInfo == Panel_1400x1050) {
+               pVBInfo->HDE = 1400;
+               pVBInfo->VDE = 1050;
+       } else {
+               pVBInfo->HDE = 1600;
+               pVBInfo->VDE = 1200;
        }
 }