[PATCH 1/3] staging: sm750fb: remove unneeded switch statement

Mike Rapoport mike.rapoport at gmail.com
Thu Oct 1 09:14:02 UTC 2015


The lynxfb_ops_check_var function has two switch statements, the first
one checks for validity of var->bits_per_pixel and it is is immediatly
followed by another one that sets parameters according to
var->bits_per_pixel value. These switch statements can be merged into
one.

Signed-off-by: Mike Rapoport <mike.rapoport at gmail.com>
---
 drivers/staging/sm750fb/sm750.c | 17 ++---------------
 1 file changed, 2 insertions(+), 15 deletions(-)

diff --git a/drivers/staging/sm750fb/sm750.c b/drivers/staging/sm750fb/sm750.c
index 81fe3c3..4d261d5 100644
--- a/drivers/staging/sm750fb/sm750.c
+++ b/drivers/staging/sm750fb/sm750.c
@@ -539,18 +539,6 @@ static int lynxfb_ops_check_var(struct fb_var_screeninfo *var,
 
 	switch (var->bits_per_pixel) {
 	case 8:
-	case 16:
-	case 24: /* support 24 bpp for only lynx712/722/720 */
-	case 32:
-		break;
-	default:
-		pr_err("bpp %d not supported\n", var->bits_per_pixel);
-		ret = -EINVAL;
-		goto exit;
-	}
-
-	switch (var->bits_per_pixel) {
-	case 8:
 		info->fix.visual = FB_VISUAL_PSEUDOCOLOR;
 		var->red.offset = 0;
 		var->red.length = 8;
@@ -583,8 +571,8 @@ static int lynxfb_ops_check_var(struct fb_var_screeninfo *var,
 		info->fix.visual = FB_VISUAL_TRUECOLOR;
 		break;
 	default:
-		ret = -EINVAL;
-		break;
+		pr_err("bpp %d not supported\n", var->bits_per_pixel);
+		return -EINVAL;
 	}
 	var->height = var->width = -1;
 	var->accel_flags = 0;/* FB_ACCELF_TEXT; */
@@ -603,7 +591,6 @@ static int lynxfb_ops_check_var(struct fb_var_screeninfo *var,
 	ret = output->proc_checkMode(output, var);
 	if (!ret)
 		ret = crtc->proc_checkMode(crtc, var);
-exit:
 	return ret;
 }
 
-- 
2.1.0



More information about the devel mailing list