summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Kibrik <sergiikibrik@ti.com>2013-04-25 11:28:15 +0300
committerTomi Valkeinen <tomi.valkeinen@ti.com>2013-06-17 14:00:56 +0300
commit595470a7853848cb971d5ee3fed443b1e3aa0d1b (patch)
tree05e3a86e5e8a049080a7841acc8cf585f3d28196
parentb0e449ce658c0eacbf7bdc76efe15a65359f63ef (diff)
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 <sergiikibrik@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
-rw-r--r--drivers/video/omap2/dss/dispc-compat.c3
1 files changed, 1 insertions, 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);
}
}