Disable overlay via ovl->disable() interface, which will
properly set flags in cache and GO bits for managers.
This allows overlay user to re-enable it on next frame,
thus recovering from FIFO underflows.

Signed-off-by: Sergey Kibrik <[email protected]>
---
 drivers/video/omap2/dss/dispc-compat.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/video/omap2/dss/dispc-compat.c 
b/drivers/video/omap2/dss/dispc-compat.c
index 928884c..83779c2 100644
--- a/drivers/video/omap2/dss/dispc-compat.c
+++ b/drivers/video/omap2/dss/dispc-compat.c
@@ -360,8 +360,7 @@ static void dispc_error_worker(struct work_struct *work)
                if (bit & errors) {
                        DSSERR("FIFO UNDERFLOW on %s, disabling the overlay\n",
                                        ovl->name);
-                       dispc_ovl_enable(ovl->id, false);
-                       dispc_mgr_go(ovl->manager->id);
+                       ovl->disable(ovl);
                        msleep(50);
                }
        }
-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to