diff options
author | Scott Jiang <scott.jiang.linux@gmail.com> | 2013-08-07 02:30:43 -0400 |
---|---|---|
committer | Steven Miao <realmz6@gmail.com> | 2013-09-13 10:42:34 +0800 |
commit | 4940c53d264c749c3b2a288e9e015584328fbb77 (patch) | |
tree | 09bb3959c0e041cf35f39a909e57cc76422db0ba /arch/blackfin | |
parent | 3036dccf2c2a5186bb50939f412c54c6c74a0fb0 (diff) | |
download | linux-4940c53d264c749c3b2a288e9e015584328fbb77.tar.gz linux-4940c53d264c749c3b2a288e9e015584328fbb77.tar.bz2 linux-4940c53d264c749c3b2a288e9e015584328fbb77.zip |
bf609: add adv7343 video encoder support
Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com>
Diffstat (limited to 'arch/blackfin')
-rw-r--r-- | arch/blackfin/mach-bf609/boards/ezkit.c | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/arch/blackfin/mach-bf609/boards/ezkit.c b/arch/blackfin/mach-bf609/boards/ezkit.c index 0bc47231540b..663ad5df96a3 100644 --- a/arch/blackfin/mach-bf609/boards/ezkit.c +++ b/arch/blackfin/mach-bf609/boards/ezkit.c @@ -1107,6 +1107,60 @@ static struct bfin_display_config bfin_display_data = { }; #endif +#if IS_ENABLED(CONFIG_VIDEO_ADV7343) +#include <media/adv7343.h> + +static struct v4l2_output adv7343_outputs[] = { + { + .index = 0, + .name = "Composite", + .type = V4L2_OUTPUT_TYPE_ANALOG, + .std = V4L2_STD_ALL, + .capabilities = V4L2_OUT_CAP_STD, + }, +}; + +static struct disp_route adv7343_routes[] = { + { + .output = 0, + }, +}; + +static struct adv7343_platform_data adv7343_data = { + .mode_config = { + .sleep_mode = false, + .pll_control = false, + .dac_1 = true, + .dac_2 = true, + .dac_3 = true, + .dac_4 = true, + .dac_5 = true, + .dac_6 = true, + }, + .sd_config = { + .sd_dac_out1 = false, + .sd_dac_out2 = false, + }, +}; + +static struct bfin_display_config bfin_display_data = { + .card_name = "BF609", + .outputs = adv7343_outputs, + .num_outputs = ARRAY_SIZE(adv7343_outputs), + .routes = adv7343_routes, + .i2c_adapter_id = 0, + .board_info = { + .type = "adv7343", + .addr = 0x2b, + .platform_data = (void *)&adv7343_data, + }, + .ppi_info = &ppi_info_disp, + .ppi_control = (PACK_EN | DLEN_8 | EPPI_CTL_FS1LO_FS2LO + | EPPI_CTL_POLC3 | EPPI_CTL_BLANKGEN | EPPI_CTL_SYNC2 + | EPPI_CTL_NON656 | EPPI_CTL_DIR), +}; +#endif + static struct platform_device bfin_display_device = { .name = "bfin_display", .dev = { |