aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
authorArchit Taneja <archit@ti.com>2012-05-03 10:33:11 -0400
committerTomi Valkeinen <tomi.valkeinen@ti.com>2012-05-09 06:44:08 -0400
commitfcc36619901064a76e15a545ea36d38ba0e54192 (patch)
treeefd1ecca35ccd40b56e8c0cad06bda824904acf1 /drivers/video
parent228b21349db4ca5636ec1efdb3b3d54fe18092de (diff)
OMAPDSS: DPI/HDMI: Apply manager timings even if panel is disabled
The DPI and HDMI interfaces use their 'set_timing' functions to take in a new set of timings. If the panel is disabled, they do not disable and re-enable the interface. Currently, the manager timings are applied in hdmi_power_on() and dpi_set_mode() respectively, these are not called by set_timings if the panel is disabled. When checking overlay and manager data, the DSS driver uses the last applied manager timings, and not the timings held by omap_dss_device struct. Hence, there is a need to apply the new manager timings even if the panel is disabled. Apply the manager timings if the panel is disabled. Eventually, there should be one common place where the timings are applied independent of the state of the panel. Signed-off-by: Archit Taneja <archit@ti.com>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/omap2/dss/dpi.c2
-rw-r--r--drivers/video/omap2/dss/hdmi.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/drivers/video/omap2/dss/dpi.c b/drivers/video/omap2/dss/dpi.c
index e01ab982593..d6e8fe77615 100644
--- a/drivers/video/omap2/dss/dpi.c
+++ b/drivers/video/omap2/dss/dpi.c
@@ -297,6 +297,8 @@ void dpi_set_timings(struct omap_dss_device *dssdev,
297 297
298 dispc_runtime_put(); 298 dispc_runtime_put();
299 dss_runtime_put(); 299 dss_runtime_put();
300 } else {
301 dss_mgr_set_timings(dssdev->manager, timings);
300 } 302 }
301} 303}
302EXPORT_SYMBOL(dpi_set_timings); 304EXPORT_SYMBOL(dpi_set_timings);
diff --git a/drivers/video/omap2/dss/hdmi.c b/drivers/video/omap2/dss/hdmi.c
index 8d4ff8c3d31..32ad7124a95 100644
--- a/drivers/video/omap2/dss/hdmi.c
+++ b/drivers/video/omap2/dss/hdmi.c
@@ -435,6 +435,8 @@ void omapdss_hdmi_display_set_timing(struct omap_dss_device *dssdev)
435 r = hdmi_power_on(dssdev); 435 r = hdmi_power_on(dssdev);
436 if (r) 436 if (r)
437 DSSERR("failed to power on device\n"); 437 DSSERR("failed to power on device\n");
438 } else {
439 dss_mgr_set_timings(dssdev->manager, &dssdev->panel.timings);
438 } 440 }
439} 441}
440 442