OMAPDSS: DISPC: clean up dispc_mgr_timings_ok
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 5 Jun 2014 08:36:08 +0000 (11:36 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 4 Jul 2014 08:17:57 +0000 (11:17 +0300)
dispc_mgr_timings_ok() is a bit confusing how it handles the return
value.

Change the function to just return immediately when a timing is deemed
not valid, making the code much easier to follow.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/fbdev/omap2/dss/dispc.c

index 37373b6..be053aa 100644 (file)
@@ -2879,22 +2879,24 @@ static bool _dispc_mgr_pclk_ok(enum omap_channel channel,
 bool dispc_mgr_timings_ok(enum omap_channel channel,
                const struct omap_video_timings *timings)
 {
-       bool timings_ok;
-
-       timings_ok = _dispc_mgr_size_ok(timings->x_res, timings->y_res);
+       if (!_dispc_mgr_size_ok(timings->x_res, timings->y_res))
+               return false;
 
-       timings_ok &= _dispc_mgr_pclk_ok(channel, timings->pixelclock);
+       if (!_dispc_mgr_pclk_ok(channel, timings->pixelclock))
+               return false;
 
        if (dss_mgr_is_lcd(channel)) {
                /* TODO: OMAP4+ supports interlace for LCD outputs */
-               timings_ok &= timings->interlace == false;
+               if (timings->interlace)
+                       return false;
 
-               timings_ok &= _dispc_lcd_timings_ok(timings->hsw, timings->hfp,
+               if (!_dispc_lcd_timings_ok(timings->hsw, timings->hfp,
                                timings->hbp, timings->vsw, timings->vfp,
-                               timings->vbp);
+                               timings->vbp))
+                       return false;
        }
 
-       return timings_ok;
+       return true;
 }
 
 static void _dispc_mgr_set_lcd_timings(enum omap_channel channel, int hsw,