aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
authorArchit Taneja <archit@ti.com>2012-06-28 01:45:51 -0400
committerTomi Valkeinen <tomi.valkeinen@ti.com>2012-06-29 03:15:52 -0400
commit23c8f88e8a140c8435658c369b26c7b60d8fe3c0 (patch)
treef4a454c8f17f9c10e055a8003bb1a2e89838523c /drivers/video
parent07fb51c6bda74210b57a06e6dc901a6b0f04c09a (diff)
OMAPDSS: Add interlace parameter to omap_video_timings
Add a parameter called interlace which tells whether the timings are in interlaced or progressive mode. This aligns the omap_video_timings struct with the Xorg modeline configuration. It also removes the hack needed to write to divide the manager height by 2 if the connected interface is VENC. Signed-off-by: Archit Taneja <archit@ti.com>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/omap2/dss/dispc.c6
-rw-r--r--drivers/video/omap2/dss/hdmi_panel.c1
-rw-r--r--drivers/video/omap2/dss/venc.c4
3 files changed, 6 insertions, 5 deletions
diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c
index 957c04962793..d200f446840f 100644
--- a/drivers/video/omap2/dss/dispc.c
+++ b/drivers/video/omap2/dss/dispc.c
@@ -2754,11 +2754,7 @@ void dispc_mgr_set_timings(enum omap_channel channel,
2754 2754
2755 DSSDBG("hsync %luHz, vsync %luHz\n", ht, vt); 2755 DSSDBG("hsync %luHz, vsync %luHz\n", ht, vt);
2756 } else { 2756 } else {
2757 enum dss_hdmi_venc_clk_source_select source; 2757 if (t.interlace == true)
2758
2759 source = dss_get_hdmi_venc_clk_source();
2760
2761 if (source == DSS_VENC_TV_CLK)
2762 t.y_res /= 2; 2758 t.y_res /= 2;
2763 } 2759 }
2764 2760
diff --git a/drivers/video/omap2/dss/hdmi_panel.c b/drivers/video/omap2/dss/hdmi_panel.c
index 723a13788476..e10844faadf9 100644
--- a/drivers/video/omap2/dss/hdmi_panel.c
+++ b/drivers/video/omap2/dss/hdmi_panel.c
@@ -46,6 +46,7 @@ static int hdmi_panel_probe(struct omap_dss_device *dssdev)
46 dssdev->panel.timings = (struct omap_video_timings) 46 dssdev->panel.timings = (struct omap_video_timings)
47 { 640, 480, 25175, 96, 16, 48, 2, 11, 31, 47 { 640, 480, 25175, 96, 16, 48, 2, 11, 31,
48 OMAPDSS_SIG_ACTIVE_LOW, OMAPDSS_SIG_ACTIVE_LOW, 48 OMAPDSS_SIG_ACTIVE_LOW, OMAPDSS_SIG_ACTIVE_LOW,
49 false,
49 }; 50 };
50 51
51 DSSDBG("hdmi_panel_probe x_res= %d y_res = %d\n", 52 DSSDBG("hdmi_panel_probe x_res= %d y_res = %d\n",
diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c
index 416d478803e5..3a220877461a 100644
--- a/drivers/video/omap2/dss/venc.c
+++ b/drivers/video/omap2/dss/venc.c
@@ -272,6 +272,8 @@ const struct omap_video_timings omap_dss_pal_timings = {
272 .vsw = 5, 272 .vsw = 5,
273 .vfp = 5, 273 .vfp = 5,
274 .vbp = 41, 274 .vbp = 41,
275
276 .interlace = true,
275}; 277};
276EXPORT_SYMBOL(omap_dss_pal_timings); 278EXPORT_SYMBOL(omap_dss_pal_timings);
277 279
@@ -285,6 +287,8 @@ const struct omap_video_timings omap_dss_ntsc_timings = {
285 .vsw = 6, 287 .vsw = 6,
286 .vfp = 6, 288 .vfp = 6,
287 .vbp = 31, 289 .vbp = 31,
290
291 .interlace = true,
288}; 292};
289EXPORT_SYMBOL(omap_dss_ntsc_timings); 293EXPORT_SYMBOL(omap_dss_ntsc_timings);
290 294