OMAPDSS: Apply VENC timings even if panel is disabled
authorArchit Taneja <archit@ti.com>
Mon, 21 May 2012 04:17:12 +0000 (09:47 +0530)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Tue, 22 May 2012 08:00:08 +0000 (11:00 +0300)
The VENC interfaces uses it's venc_set_timing() function to take in a new set
of timings. If the panel is disabled, it does not disable and re-enable the
interface. Currently, the manager timings are applied in venc_power_on(), 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 VENC panel is disabled.

This is similar to the commit below which fixed the same issue for HDMI/DPI
interfaces:

fcc36619901064a76e15a545ea36d38ba0e54192

Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/omap2/dss/venc.c

index 09be43d02adfae1d1afcd1e8ab8c4352f190abb0..2b8973931ff48e845cd9a1386b7b437b369b24e4 100644 (file)
@@ -645,6 +645,8 @@ static void venc_set_timings(struct omap_dss_device *dssdev,
                /* turn the venc off and on to get new timings to use */
                venc_panel_disable(dssdev);
                venc_panel_enable(dssdev);
+       } else {
+               dss_mgr_set_timings(dssdev->manager, timings);
        }
 }