From ab6839f7c5832f27814d61ef8c4ca71492b4b0d1 Mon Sep 17 00:00:00 2001 From: Bhuvanchandra DV Date: Mon, 14 Dec 2015 19:36:14 +0530 Subject: colibri_t30: v4l2: adv7280 integration Integrate ADV7280 video decoder support. Signed-off-by: Bhuvanchandra DV Acked-by: Marcel Ziswiler --- arch/arm/mach-tegra/board-colibri_t30.c | 40 +++++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) (limited to 'arch/arm/mach-tegra') diff --git a/arch/arm/mach-tegra/board-colibri_t30.c b/arch/arm/mach-tegra/board-colibri_t30.c index 7265d8d463ec..be236952c3d0 100644 --- a/arch/arm/mach-tegra/board-colibri_t30.c +++ b/arch/arm/mach-tegra/board-colibri_t30.c @@ -175,6 +175,39 @@ static struct platform_device soc_camera_adv7180 = { }; #endif /* CONFIG_VIDEO_ADV7180 | CONFIG_VIDEO_ADV7180_MODULE */ +#if defined(CONFIG_VIDEO_ADV7280) || defined(CONFIG_VIDEO_ADV7280_MODULE) +static struct i2c_board_info camera_i2c_adv7280 = { + I2C_BOARD_INFO("adv7280", 0x21), +}; + +static struct tegra_camera_platform_data adv7280_tegra_camera_platform_data = { + .disable_camera = tegra_camera_disable, + .enable_camera = tegra_camera_enable, + .flip_h = 0, + .flip_v = 0, + .port = TEGRA_CAMERA_PORT_VIP, + .internal_sync = false, + .vip_h_active_start = 0x44, + .vip_v_active_start = 0x27, + +}; + +static struct soc_camera_link iclink_adv7280 = { + .board_info = &camera_i2c_adv7280, + .bus_id = -1, /* This must match the .id of tegra_vi01_device */ + .priv = &adv7280_tegra_camera_platform_data, + .i2c_adapter_id = 0, +}; + +static struct platform_device soc_camera_adv7280 = { + .name = "soc-camera-pdrv", + .id = 2, + .dev = { + .platform_data = &iclink_adv7280, + }, +}; +#endif /* CONFIG_VIDEO_ADV7280 | CONFIG_VIDEO_ADV7280_MODULE */ + #if defined(CONFIG_SOC_CAMERA_TVP5150) || defined(CONFIG_SOC_CAMERA_TVP5150_MODULE) static struct i2c_board_info camera_i2c_tvp5150soc = { I2C_BOARD_INFO("tvp5150soc", 0x5d), @@ -200,7 +233,7 @@ static struct soc_camera_link iclink_tvp5150soc = { static struct platform_device soc_camera_tvp5150soc = { .name = "soc-camera-pdrv", - .id = 2, + .id = 3, .dev = { .platform_data = &iclink_tvp5150soc, }, @@ -232,7 +265,7 @@ static struct soc_camera_link iclink_ov7670soc = { static struct platform_device soc_camera_ov7670soc = { .name = "soc-camera-pdrv", - .id = 3, + .id = 4, .dev = { .platform_data = &iclink_ov7670soc, }, @@ -1583,6 +1616,9 @@ static void __init colibri_t30_init(void) #if defined(CONFIG_VIDEO_ADV7180) || defined(CONFIG_VIDEO_ADV7180_MODULE) platform_device_register(&soc_camera_adv7180); #endif +#if defined(CONFIG_VIDEO_ADV7280) || defined(CONFIG_VIDEO_ADV7280_MODULE) + platform_device_register(&soc_camera_adv7280); +#endif #if defined(CONFIG_SOC_CAMERA_TVP5150) || defined(CONFIG_SOC_CAMERA_TVP5150_MODULE) platform_device_register(&soc_camera_tvp5150soc); #endif -- cgit v1.2.3