summaryrefslogtreecommitdiffstats
path: root/drivers/video/omap2/dss/venc.c
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2013-04-25 12:12:07 +0200
committerTomi Valkeinen <tomi.valkeinen@ti.com>2013-06-17 13:00:51 +0200
commitd3923933930273a2c1f724c50fe1dd829e196b31 (patch)
tree6aaadb4635ff6622ddf1a6e44f5fdc30c151ec0c /drivers/video/omap2/dss/venc.c
parentOMAPDSS: Add panel dev pointer to dssdev (diff)
downloadlinux-d3923933930273a2c1f724c50fe1dd829e196b31.tar.xz
linux-d3923933930273a2c1f724c50fe1dd829e196b31.zip
OMAPDSS: remove omap_dss_start/stop_device()
The omap_dss_start_device() and omap_dss_stop_device(), called by the DSS output drivers, are old relics. They originally did something totally else, but nowadays they increase the module ref count for panels that are enabled. This model is quite broken: the panel modules may be used even before they are enabled. For example, configuring the panel requires calls to functions located in the panel modules. In the following patches we try to improve the ref count management for the modules and display devices. The first step, however, is to remove the omap_dss_start/stop_device() totally. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video/omap2/dss/venc.c')
-rw-r--r--drivers/video/omap2/dss/venc.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c
index f6d2b3f98885..d529a9249432 100644
--- a/drivers/video/omap2/dss/venc.c
+++ b/drivers/video/omap2/dss/venc.c
@@ -513,23 +513,15 @@ int omapdss_venc_display_enable(struct omap_dss_device *dssdev)
goto err0;
}
- r = omap_dss_start_device(dssdev);
- if (r) {
- DSSERR("failed to start device\n");
- goto err0;
- }
-
r = venc_power_on(dssdev);
if (r)
- goto err1;
+ goto err0;
venc.wss_data = 0;
mutex_unlock(&venc.venc_lock);
return 0;
-err1:
- omap_dss_stop_device(dssdev);
err0:
mutex_unlock(&venc.venc_lock);
return r;
@@ -543,8 +535,6 @@ void omapdss_venc_display_disable(struct omap_dss_device *dssdev)
venc_power_off(dssdev);
- omap_dss_stop_device(dssdev);
-
mutex_unlock(&venc.venc_lock);
}