From 595470a7853848cb971d5ee3fed443b1e3aa0d1b Mon Sep 17 00:00:00 2001 From: Sergey Kibrik Date: Thu, 25 Apr 2013 11:28:15 +0300 Subject: [PATCH] OMAPDSS: gracefully disable overlay at error 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 Signed-off-by: Tomi Valkeinen --- 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 928884c9a0a9..83779c2b292a 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); } } -- 2.39.5