aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/video/omap2/dss/display.c4
-rw-r--r--drivers/video/omap2/dss/dpi.c14
-rw-r--r--drivers/video/omap2/dss/hdmi.c12
-rw-r--r--drivers/video/omap2/dss/sdi.c10
-rw-r--r--drivers/video/omap2/dss/venc.c13
5 files changed, 4 insertions, 49 deletions
diff --git a/drivers/video/omap2/dss/display.c b/drivers/video/omap2/dss/display.c
index 5bd957e8550..5f09d503d61 100644
--- a/drivers/video/omap2/dss/display.c
+++ b/drivers/video/omap2/dss/display.c
@@ -142,7 +142,11 @@ static ssize_t display_timings_store(struct device *dev,
if (r)
return r;
+ dssdev->driver->disable(dssdev);
dssdev->driver->set_timings(dssdev, &t);
+ r = dssdev->driver->enable(dssdev);
+ if (r)
+ return r;
return size;
}
diff --git a/drivers/video/omap2/dss/dpi.c b/drivers/video/omap2/dss/dpi.c
index 99b9851f842..5ccce9b69e4 100644
--- a/drivers/video/omap2/dss/dpi.c
+++ b/drivers/video/omap2/dss/dpi.c
@@ -277,26 +277,12 @@ EXPORT_SYMBOL(omapdss_dpi_display_disable);
void omapdss_dpi_set_timings(struct omap_dss_device *dssdev,
struct omap_video_timings *timings)
{
- int r;
-
DSSDBG("dpi_set_timings\n");
mutex_lock(&dpi.lock);
dpi.timings = *timings;
- if (dssdev->state == OMAP_DSS_DISPLAY_ACTIVE) {
- r = dispc_runtime_get();
- if (r)
- return;
-
- dpi_set_mode(dssdev);
-
- dispc_runtime_put();
- } else {
- dss_mgr_set_timings(dssdev->manager, timings);
- }
-
mutex_unlock(&dpi.lock);
}
EXPORT_SYMBOL(omapdss_dpi_set_timings);
diff --git a/drivers/video/omap2/dss/hdmi.c b/drivers/video/omap2/dss/hdmi.c
index ccfc677c910..83f18458a40 100644
--- a/drivers/video/omap2/dss/hdmi.c
+++ b/drivers/video/omap2/dss/hdmi.c
@@ -632,18 +632,6 @@ void omapdss_hdmi_display_set_timing(struct omap_dss_device *dssdev,
if (t != NULL)
hdmi.ip_data.cfg = *t;
- if (dssdev->state == OMAP_DSS_DISPLAY_ACTIVE) {
- int r;
-
- hdmi_power_off(dssdev);
-
- r = hdmi_power_on(dssdev);
- if (r)
- DSSERR("failed to power on device\n");
- } else {
- dss_mgr_set_timings(dssdev->manager, &t->timings);
- }
-
mutex_unlock(&hdmi.lock);
}
diff --git a/drivers/video/omap2/dss/sdi.c b/drivers/video/omap2/dss/sdi.c
index 3bf1bfe2958..c87e07ebb16 100644
--- a/drivers/video/omap2/dss/sdi.c
+++ b/drivers/video/omap2/dss/sdi.c
@@ -152,17 +152,7 @@ EXPORT_SYMBOL(omapdss_sdi_display_disable);
void omapdss_sdi_set_timings(struct omap_dss_device *dssdev,
struct omap_video_timings *timings)
{
- int r;
-
sdi.timings = *timings;
-
- if (dssdev->state == OMAP_DSS_DISPLAY_ACTIVE) {
- omapdss_sdi_display_disable(dssdev);
-
- r = omapdss_sdi_display_enable(dssdev);
- if (r)
- DSSERR("failed to set new timings\n");
- }
}
EXPORT_SYMBOL(omapdss_sdi_set_timings);
diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c
index 45252cf034b..17b31029a79 100644
--- a/drivers/video/omap2/dss/venc.c
+++ b/drivers/video/omap2/dss/venc.c
@@ -564,19 +564,6 @@ void omapdss_venc_set_timings(struct omap_dss_device *dssdev,
venc.timings = *timings;
- if (dssdev->state == OMAP_DSS_DISPLAY_ACTIVE) {
- int r;
-
- /* turn the venc off and on to get new timings to use */
- venc_power_off(dssdev);
-
- r = venc_power_on(dssdev);
- if (r)
- DSSERR("failed to power on VENC\n");
- } else {
- dss_mgr_set_timings(dssdev->manager, timings);
- }
-
mutex_unlock(&venc.venc_lock);
}