OMAPDSS: DISPC: Remove blocking code from dispc_wb_enable()
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 19 Oct 2012 11:23:06 +0000 (14:23 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Tue, 27 Nov 2012 10:27:02 +0000 (12:27 +0200)
WB will not be used with compat-mode, i.e. from omapfb. This means we
don't need the current complex dispc_wb_enable function, but can have a
simple register write version of the function.

This patch removes all the extra code from dispc_wb_enable()

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

index bc64d77a87176a50a23e9ba828d38a986f16ed93..08c08d507273137c9f06119db3f89f54775498eb 100644 (file)
@@ -2810,43 +2810,12 @@ void dispc_mgr_disable_sync(enum omap_channel channel)
 
 void dispc_wb_enable(bool enable)
 {
-       enum omap_plane plane = OMAP_DSS_WB;
-       struct completion frame_done_completion;
-       bool is_on;
-       int r;
-       u32 irq;
-
-       is_on = REG_GET(DISPC_OVL_ATTRIBUTES(plane), 0, 0);
-       irq = DISPC_IRQ_FRAMEDONEWB;
-
-       if (!enable && is_on) {
-               init_completion(&frame_done_completion);
-
-               r = omap_dispc_register_isr(dispc_mgr_disable_isr,
-                               &frame_done_completion, irq);
-               if (r)
-                       DSSERR("failed to register FRAMEDONEWB isr\n");
-       }
-
-       REG_FLD_MOD(DISPC_OVL_ATTRIBUTES(plane), enable ? 1 : 0, 0, 0);
-
-       if (!enable && is_on) {
-               if (!wait_for_completion_timeout(&frame_done_completion,
-                                       msecs_to_jiffies(100)))
-                       DSSERR("timeout waiting for FRAMEDONEWB\n");
-
-               r = omap_dispc_unregister_isr(dispc_mgr_disable_isr,
-                               &frame_done_completion, irq);
-               if (r)
-                       DSSERR("failed to unregister FRAMEDONEWB isr\n");
-       }
+       REG_FLD_MOD(DISPC_OVL_ATTRIBUTES(OMAP_DSS_WB), enable ? 1 : 0, 0, 0);
 }
 
 bool dispc_wb_is_enabled(void)
 {
-       enum omap_plane plane = OMAP_DSS_WB;
-
-       return REG_GET(DISPC_OVL_ATTRIBUTES(plane), 0, 0);
+       return REG_GET(DISPC_OVL_ATTRIBUTES(OMAP_DSS_WB), 0, 0);
 }
 
 static void dispc_lcd_enable_signal_polarity(bool act_high)