OSDN Git Service

viafb: avoid refresh and mode lookup in set_par
authorFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>
Sun, 26 Feb 2012 10:51:51 +0000 (10:51 +0000)
committerFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>
Thu, 8 Mar 2012 18:41:38 +0000 (18:41 +0000)
As check_var already ensures that the mode is valid there is no need
to do those expensive lookups here again. The only thing that might
change is that the deprecated interface could report slightly
different refresh rates due to rounding errors.

Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
drivers/video/via/viafbdev.c

index 7529340..0c88375 100644 (file)
@@ -287,26 +287,22 @@ static int viafb_set_par(struct fb_info *info)
                        viafb_second_yres, viafb_bpp1, 1);
        }
 
-       refresh = viafb_get_refresh(info->var.xres, info->var.yres,
-               get_var_refresh(&info->var));
-       if (viafb_get_best_mode(viafbinfo->var.xres, viafbinfo->var.yres,
-               refresh)) {
-               if (viafb_dual_fb && viapar->iga_path == IGA2) {
-                       viafb_bpp1 = info->var.bits_per_pixel;
-                       viafb_refresh1 = refresh;
-               } else {
-                       viafb_bpp = info->var.bits_per_pixel;
-                       viafb_refresh = refresh;
-               }
-
-               if (info->var.accel_flags & FB_ACCELF_TEXT)
-                       info->flags &= ~FBINFO_HWACCEL_DISABLED;
-               else
-                       info->flags |= FBINFO_HWACCEL_DISABLED;
-               viafb_setmode();
-               viafb_pan_display(&info->var, info);
+       refresh = get_var_refresh(&info->var);
+       if (viafb_dual_fb && viapar->iga_path == IGA2) {
+               viafb_bpp1 = info->var.bits_per_pixel;
+               viafb_refresh1 = refresh;
+       } else {
+               viafb_bpp = info->var.bits_per_pixel;
+               viafb_refresh = refresh;
        }
 
+       if (info->var.accel_flags & FB_ACCELF_TEXT)
+               info->flags &= ~FBINFO_HWACCEL_DISABLED;
+       else
+               info->flags |= FBINFO_HWACCEL_DISABLED;
+       viafb_setmode();
+       viafb_pan_display(&info->var, info);
+
        return 0;
 }