diff options
author | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-11-09 15:30:11 +0200 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-12-02 08:54:42 +0200 |
commit | 9a147a65de1ac89e506ef90413f41ebd96e03fd3 (patch) | |
tree | d13411fe928f156beb88a5c0d4408c3f6b68c07e /drivers/video/omap2/dss/apply.c | |
parent | e0a2aa5b3d1a26969ba906447c816d44c018969d (diff) |
OMAPDSS: DSI: call mgr_enable/disable for cmd mode displays
The current code uses dsi_video_mode_enable/disable functions to
enable/disable DISPC output for video mode displays. For command mode
displays we have no notion in the DISPC side of whether the panel is
enabled, except when a dss_mgr_start_update() call is made.
However, to properly maintain the DISPC state in apply.c, we need to
know if a manager used for a manual update display is currently in use.
This patch achieves that by changing dsi_video_mode_enable/disable to
dsi_enable/disable_video_output, which is called by both video and
command mode displays. For video mode displays it starts the actual
pixel stream, as it did before. For command mode displays it doesn't do
anything else than mark that the manager is currently in use.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video/omap2/dss/apply.c')
-rw-r--r-- | drivers/video/omap2/dss/apply.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/video/omap2/dss/apply.c b/drivers/video/omap2/dss/apply.c index eafa80846365..936571b7aace 100644 --- a/drivers/video/omap2/dss/apply.c +++ b/drivers/video/omap2/dss/apply.c @@ -648,7 +648,8 @@ void dss_mgr_enable(struct omap_overlay_manager *mgr) { mutex_lock(&apply_lock); - dispc_mgr_enable(mgr->id, true); + if (!mgr_manual_update(mgr)) + dispc_mgr_enable(mgr->id, true); mgr->enabled = true; mutex_unlock(&apply_lock); @@ -658,7 +659,8 @@ void dss_mgr_disable(struct omap_overlay_manager *mgr) { mutex_lock(&apply_lock); - dispc_mgr_enable(mgr->id, false); + if (!mgr_manual_update(mgr)) + dispc_mgr_enable(mgr->id, false); mgr->enabled = false; mutex_unlock(&apply_lock); |