diff options
author | Ville Syrjälä <ville.syrjala@nokia.com> | 2010-03-04 09:03:56 -0500 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@nokia.com> | 2010-08-03 08:18:45 -0400 |
commit | a74b260502c0911d14bafb76a20f699b6caa2e91 (patch) | |
tree | 8b95b0f7108648cf6af5527225893060ffb36fba /drivers/video/omap2 | |
parent | 825f50b1a498f6e3532c8fcbc093322bb386f9e1 (diff) |
OMAP: DSS2: Make wait_for_go() succeed for disabled displays
When the display is not active make the wait_for_go() functions return
immediately.
Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Diffstat (limited to 'drivers/video/omap2')
-rw-r--r-- | drivers/video/omap2/dss/manager.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/video/omap2/dss/manager.c b/drivers/video/omap2/dss/manager.c index 9e1fbe531bf0..7e1ec5af6c70 100644 --- a/drivers/video/omap2/dss/manager.c +++ b/drivers/video/omap2/dss/manager.c | |||
@@ -525,7 +525,7 @@ static int dss_mgr_wait_for_go(struct omap_overlay_manager *mgr) | |||
525 | int i; | 525 | int i; |
526 | struct omap_dss_device *dssdev = mgr->device; | 526 | struct omap_dss_device *dssdev = mgr->device; |
527 | 527 | ||
528 | if (!dssdev) | 528 | if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE) |
529 | return 0; | 529 | return 0; |
530 | 530 | ||
531 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC) { | 531 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC) { |
@@ -596,11 +596,14 @@ int dss_mgr_wait_for_go_ovl(struct omap_overlay *ovl) | |||
596 | int r; | 596 | int r; |
597 | int i; | 597 | int i; |
598 | 598 | ||
599 | if (!ovl->manager || !ovl->manager->device) | 599 | if (!ovl->manager) |
600 | return 0; | 600 | return 0; |
601 | 601 | ||
602 | dssdev = ovl->manager->device; | 602 | dssdev = ovl->manager->device; |
603 | 603 | ||
604 | if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE) | ||
605 | return 0; | ||
606 | |||
604 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC) { | 607 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC) { |
605 | irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN; | 608 | irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN; |
606 | channel = OMAP_DSS_CHANNEL_DIGIT; | 609 | channel = OMAP_DSS_CHANNEL_DIGIT; |