summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorWojciech Bieganski <wbieganski@antmicro.com>2016-04-01 12:38:40 +0200
committerDominik Sliwa <dominik.sliwa@toradex.com>2016-06-22 15:29:17 +0200
commit25d0957e6f5a5171a88ed5ae66e7ff99b52fa0d3 (patch)
tree33fe1f8bbc001080e0c64459b6090d4617ef7169 /arch
parent34c582454102a4ba20d6bcaec1e92593d62071c5 (diff)
media: Epson S2D13P04 decoder support for Colibri T30
This commit adds support for Epson S2D13P04 (4-input analog video decoder with parallel interface) for Colibri T30. Currently the only supported standard is PAL-B/G/I/N and the output is arranged in 'merge mode' (4 input streams on one screen) Acked-by: Dominik Sliwa <dominik.sliwa@toradex.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-tegra/board-colibri_t30.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-colibri_t30.c b/arch/arm/mach-tegra/board-colibri_t30.c
index e81d8e944a2b..fbcce07deffd 100644
--- a/arch/arm/mach-tegra/board-colibri_t30.c
+++ b/arch/arm/mach-tegra/board-colibri_t30.c
@@ -310,6 +310,38 @@ static struct platform_device soc_camera_tvp5150soc = {
.name = "soc-camera-pdrv",
};
#endif /* CONFIG_SOC_CAMERA_TVP5150 | CONFIG_SOC_CAMERA_TVP5150_MODULE */
+#if defined(CONFIG_SOC_CAMERA_S2D13P04) || \
+ defined(CONFIG_SOC_CAMERA_S2D13P04_MODULE)
+static struct i2c_board_info camera_i2c_s2d13p04 = {
+ I2C_BOARD_INFO("s2d13p04", 0x37),
+};
+
+static struct tegra_camera_platform_data s2d13p04_platform_data = {
+ .disable_camera = tegra_camera_disable,
+ .enable_camera = tegra_camera_enable,
+ .flip_h = 0,
+ .flip_v = 0,
+ .internal_sync = false,
+ .port = TEGRA_CAMERA_PORT_VIP,
+ .vip_h_active_start = 0x66,
+ .vip_v_active_start = 0x21,
+};
+
+static struct soc_camera_link iclink_s2d13p04 = {
+ .board_info = &camera_i2c_s2d13p04,
+ .bus_id = -1, /* This must match the .id of tegra_vi01_device */
+ .i2c_adapter_id = 0,
+ .priv = &s2d13p04_platform_data,
+};
+
+static struct platform_device soc_camera_s2d13p04 = {
+ .dev = {
+ .platform_data = &iclink_s2d13p04,
+ },
+ .id = 6,
+ .name = "soc-camera-pdrv",
+};
+#endif /* CONFIG_SOC_CAMERA_S2D13P04 | CONFIG_SOC_CAMERA_S2D13P04_MODULE */
#endif /* CONFIG_VIDEO_TEGRA | CONFIG_VIDEO_TEGRA_MODULE */
/* CAN */
@@ -1675,6 +1707,10 @@ static void __init colibri_t30_init(void)
defined(CONFIG_SOC_CAMERA_TVP5150_MODULE)
platform_device_register(&soc_camera_tvp5150soc);
#endif
+#if defined(CONFIG_SOC_CAMERA_S2D13P04) || \
+ defined(CONFIG_SOC_CAMERA_S2D13P04_MODULE)
+ platform_device_register(&soc_camera_s2d13p04);
+#endif
#endif /* CONFIG_VIDEO_TEGRA | CONFIG_VIDEO_TEGRA_MODULE */
tegra_release_bootloader_fb();