diff options
Diffstat (limited to 'recipes/linux/linux-omap-psp-2.6.32/0015-DSS2-add-bootarg-for-selecting-svideo-or-composite-f.patch')
-rw-r--r-- | recipes/linux/linux-omap-psp-2.6.32/0015-DSS2-add-bootarg-for-selecting-svideo-or-composite-f.patch | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/recipes/linux/linux-omap-psp-2.6.32/0015-DSS2-add-bootarg-for-selecting-svideo-or-composite-f.patch b/recipes/linux/linux-omap-psp-2.6.32/0015-DSS2-add-bootarg-for-selecting-svideo-or-composite-f.patch new file mode 100644 index 0000000000..a684870918 --- /dev/null +++ b/recipes/linux/linux-omap-psp-2.6.32/0015-DSS2-add-bootarg-for-selecting-svideo-or-composite-f.patch @@ -0,0 +1,75 @@ +From 66ad2fe91766e975dc5e6bbebb75bc4b6daa4ec7 Mon Sep 17 00:00:00 2001 +From: Steve Sakoman <steve@sakoman.com> +Date: Tue, 19 Jan 2010 21:19:15 -0800 +Subject: [PATCH 15/45] DSS2: add bootarg for selecting svideo or composite for tv output + +also add pal-16 and ntsc-16 omapfb.mode settings for 16bpp +--- + drivers/video/omap2/dss/venc.c | 22 ++++++++++++++++++++++ + drivers/video/omap2/omapfb/omapfb-main.c | 10 +++++++++- + 2 files changed, 31 insertions(+), 1 deletions(-) + +diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c +index 749a5a0..14aa721 100644 +--- a/drivers/video/omap2/dss/venc.c ++++ b/drivers/video/omap2/dss/venc.c +@@ -87,6 +87,11 @@ + #define VENC_OUTPUT_TEST 0xC8 + #define VENC_DAC_B__DAC_C 0xC8 + ++static char *tv_connection; ++ ++module_param_named(tvcable, tv_connection, charp, 0); ++MODULE_PARM_DESC(tvcable, "TV connection type (svideo, composite)"); ++ + struct venc_config { + u32 f_control; + u32 vidout_ctrl; +@@ -409,6 +414,23 @@ static int venc_panel_probe(struct omap_dss_device *dssdev) + { + dssdev->panel.timings = omap_dss_pal_timings; + ++ /* Allow the TV output to be overriden */ ++ if (tv_connection) { ++ if (strcmp(tv_connection, "svideo") == 0) { ++ printk(KERN_INFO ++ "omapdss: tv output is svideo.\n"); ++ dssdev->phy.venc.type = OMAP_DSS_VENC_TYPE_SVIDEO; ++ } else if (strcmp(tv_connection, "composite") == 0) { ++ printk(KERN_INFO ++ "omapdss: tv output is composite.\n"); ++ dssdev->phy.venc.type = OMAP_DSS_VENC_TYPE_COMPOSITE; ++ } else { ++ printk(KERN_INFO ++ "omapdss: unsupported output type'%s'.\n", ++ tv_connection); ++ } ++ } ++ + return 0; + } + +diff --git a/drivers/video/omap2/omapfb/omapfb-main.c b/drivers/video/omap2/omapfb/omapfb-main.c +index 340ab51..c2c9663 100644 +--- a/drivers/video/omap2/omapfb/omapfb-main.c ++++ b/drivers/video/omap2/omapfb/omapfb-main.c +@@ -1988,7 +1988,15 @@ static int omapfb_mode_to_timings(const char *mode_str, + int r; + + #ifdef CONFIG_OMAP2_DSS_VENC +- if (strcmp(mode_str, "pal") == 0) { ++ if (strcmp(mode_str, "pal-16") == 0) { ++ *timings = omap_dss_pal_timings; ++ *bpp = 16; ++ return 0; ++ } else if (strcmp(mode_str, "ntsc-16") == 0) { ++ *timings = omap_dss_ntsc_timings; ++ *bpp = 16; ++ return 0; ++ } else if (strcmp(mode_str, "pal") == 0) { + *timings = omap_dss_pal_timings; + *bpp = 0; + return 0; +-- +1.6.6.1 + |