Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 344607
b: refs/heads/master
c: b276dd0
h: refs/heads/master
i:
  344605: 027dd2f
  344603: 6df0b4f
  344599: 4d77080
  344591: 4b88823
  344575: 578532e
v: v3
  • Loading branch information
Tomi Valkeinen committed Oct 29, 2012
1 parent 4c4ea7e commit 8b5cb89
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 16 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 4c6c65b013a20054585dfca5cfbf3a2f6393ab50
refs/heads/master: b276dd091673589450d56812ffcfddca961c1a41
19 changes: 4 additions & 15 deletions trunk/drivers/video/omap2/dss/dispc.c
Original file line number Diff line number Diff line change
Expand Up @@ -3902,44 +3902,33 @@ 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;
ovl = omap_dss_get_overlay(j);

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);
}
}

if (errors & DISPC_IRQ_OCP_ERR) {
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);
}
}

Expand Down

0 comments on commit 8b5cb89

Please sign in to comment.