From 8b5cb89ef19e665a66f5706e94522b686f649d0b Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Fri, 15 Jun 2012 15:34:24 +0300 Subject: [PATCH] --- yaml --- r: 344607 b: refs/heads/master c: b276dd091673589450d56812ffcfddca961c1a41 h: refs/heads/master i: 344605: 027dd2fd488c213ed7e25c7d0059e68d9cfaedb8 344603: 6df0b4f5dabb8c56f4dfdb8649d5ab023efba30d 344599: 4d7708047dccda3d85a49aaf86e218ef2df5709c 344591: 4b88823246a2dc3016314f359d7c7b729da4e276 344575: 578532e32bc988c346489aeffecb44ac714c75c4 v: v3 --- [refs] | 2 +- trunk/drivers/video/omap2/dss/dispc.c | 19 ++++--------------- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/[refs] b/[refs] index d981146ca39f..847165d262b8 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4c6c65b013a20054585dfca5cfbf3a2f6393ab50 +refs/heads/master: b276dd091673589450d56812ffcfddca961c1a41 diff --git a/trunk/drivers/video/omap2/dss/dispc.c b/trunk/drivers/video/omap2/dss/dispc.c index 070ce306da17..05def42e528b 100644 --- a/trunk/drivers/video/omap2/dss/dispc.c +++ b/trunk/drivers/video/omap2/dss/dispc.c @@ -3902,15 +3902,12 @@ static void dispc_error_worker(struct work_struct *work) if (bit & errors) { int j; - struct omap_dss_device *dssdev = mgr->get_device(mgr); - bool enable; DSSERR("SYNC_LOST on channel %s, restarting the output " "with video overlays disabled\n", mgr->name); - enable = dssdev->state == OMAP_DSS_DISPLAY_ACTIVE; - dssdev->driver->disable(dssdev); + dss_mgr_disable(mgr); for (j = 0; j < omap_dss_get_num_overlays(); ++j) { struct omap_overlay *ovl; @@ -3918,14 +3915,10 @@ static void dispc_error_worker(struct work_struct *work) if (ovl->id != OMAP_DSS_GFX && ovl->manager == mgr) - dispc_ovl_enable(ovl->id, false); + ovl->disable(ovl); } - dispc_mgr_go(mgr->id); - msleep(50); - - if (enable) - dssdev->driver->enable(dssdev); + dss_mgr_enable(mgr); } } @@ -3933,13 +3926,9 @@ static void dispc_error_worker(struct work_struct *work) DSSERR("OCP_ERR\n"); for (i = 0; i < omap_dss_get_num_overlay_managers(); ++i) { struct omap_overlay_manager *mgr; - struct omap_dss_device *dssdev; mgr = omap_dss_get_overlay_manager(i); - dssdev = mgr->get_device(mgr); - - if (dssdev && dssdev->driver) - dssdev->driver->disable(dssdev); + dss_mgr_disable(mgr); } }