Browse Source

staging: xgifb: simplify default mode setup

The default mode is the same regardless of the display type, except for
XG21/LCD which is determined dynamically.

Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Aaro Koskinen 14 years ago
parent
commit
c8bec1f067
2 changed files with 5 additions and 15 deletions
  1. 0 2
      drivers/staging/xgifb/XGI_main.h
  2. 5 13
      drivers/staging/xgifb/XGI_main_26.c

+ 0 - 2
drivers/staging/xgifb/XGI_main.h

@@ -254,8 +254,6 @@ static struct _XGIbios_mode {
 	{"800x480x32",   0x76, 0x0000, 0x0000,  800,  480, 32, 1, 100, 30,
 	 MD_XGI300|MD_XGI315},
 #define DEFAULT_MODE              21 /* TW: index for 800x600x8 */
-#define DEFAULT_LCDMODE           21 /* TW: index for 800x600x8 */
-#define DEFAULT_TVMODE            21 /* TW: index for 800x600x8 */
 	{"800x600x8",    0x30, 0x0103, 0x0103,  800,  600,  8, 1, 100, 37,
 	 MD_XGI300|MD_XGI315},
 	{"800x600x16",   0x47, 0x0114, 0x0114,  800,  600, 16, 1, 100, 37,

+ 5 - 13
drivers/staging/xgifb/XGI_main_26.c

@@ -2297,20 +2297,12 @@ static int __devinit xgifb_probe(struct pci_dev *pdev,
 		xgifb_mode_idx = XGIfb_validate_mode(xgifb_mode_idx);
 
 	if (xgifb_mode_idx < 0) {
-		switch (xgi_video_info.disp_state & DISPTYPE_DISP2) {
-		case DISPTYPE_LCD:
-			xgifb_mode_idx = DEFAULT_LCDMODE;
-			if (xgi_video_info.chip == XG21)
-				xgifb_mode_idx =
-				    XGIfb_GetXG21DefaultLVDSModeIdx();
-			break;
-		case DISPTYPE_TV:
-			xgifb_mode_idx = DEFAULT_TVMODE;
-			break;
-		default:
+		if ((xgi_video_info.disp_state & DISPTYPE_DISP2) ==
+			DISPTYPE_LCD &&
+		    xgi_video_info.chip == XG21)
+			xgifb_mode_idx = XGIfb_GetXG21DefaultLVDSModeIdx();
+		else
 			xgifb_mode_idx = DEFAULT_MODE;
-			break;
-		}
 	}
 
 	if (xgifb_mode_idx < 0) {