aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin
diff options
context:
space:
mode:
Diffstat (limited to 'arch/blackfin')
-rw-r--r--arch/blackfin/mach-bf548/boards/ezkit.c69
1 files changed, 69 insertions, 0 deletions
diff --git a/arch/blackfin/mach-bf548/boards/ezkit.c b/arch/blackfin/mach-bf548/boards/ezkit.c
index 5ea6ecac35e2..3ea45f8bd61c 100644
--- a/arch/blackfin/mach-bf548/boards/ezkit.c
+++ b/arch/blackfin/mach-bf548/boards/ezkit.c
@@ -1183,6 +1183,71 @@ static struct platform_device bf54x_spi_master1 = {
1183}; 1183};
1184#endif /* spi master and devices */ 1184#endif /* spi master and devices */
1185 1185
1186#if defined(CONFIG_VIDEO_BLACKFIN_CAPTURE) \
1187 || defined(CONFIG_VIDEO_BLACKFIN_CAPTURE_MODULE)
1188#include <linux/videodev2.h>
1189#include <media/blackfin/bfin_capture.h>
1190#include <media/blackfin/ppi.h>
1191
1192static const unsigned short ppi_req[] = {
1193 P_PPI1_D0, P_PPI1_D1, P_PPI1_D2, P_PPI1_D3,
1194 P_PPI1_D4, P_PPI1_D5, P_PPI1_D6, P_PPI1_D7,
1195 P_PPI1_CLK, P_PPI1_FS1, P_PPI1_FS2,
1196 0,
1197};
1198
1199static const struct ppi_info ppi_info = {
1200 .type = PPI_TYPE_EPPI,
1201 .dma_ch = CH_EPPI1,
1202 .irq_err = IRQ_EPPI1_ERROR,
1203 .base = (void __iomem *)EPPI1_STATUS,
1204 .pin_req = ppi_req,
1205};
1206
1207#if defined(CONFIG_VIDEO_VS6624) \
1208 || defined(CONFIG_VIDEO_VS6624_MODULE)
1209static struct v4l2_input vs6624_inputs[] = {
1210 {
1211 .index = 0,
1212 .name = "Camera",
1213 .type = V4L2_INPUT_TYPE_CAMERA,
1214 .std = V4L2_STD_UNKNOWN,
1215 },
1216};
1217
1218static struct bcap_route vs6624_routes[] = {
1219 {
1220 .input = 0,
1221 .output = 0,
1222 },
1223};
1224
1225static const unsigned vs6624_ce_pin = GPIO_PG6;
1226
1227static struct bfin_capture_config bfin_capture_data = {
1228 .card_name = "BF548",
1229 .inputs = vs6624_inputs,
1230 .num_inputs = ARRAY_SIZE(vs6624_inputs),
1231 .routes = vs6624_routes,
1232 .i2c_adapter_id = 0,
1233 .board_info = {
1234 .type = "vs6624",
1235 .addr = 0x10,
1236 .platform_data = (void *)&vs6624_ce_pin,
1237 },
1238 .ppi_info = &ppi_info,
1239 .ppi_control = (POLC | PACKEN | DLEN_8 | XFR_TYPE | 0x20),
1240};
1241#endif
1242
1243static struct platform_device bfin_capture_device = {
1244 .name = "bfin_capture",
1245 .dev = {
1246 .platform_data = &bfin_capture_data,
1247 },
1248};
1249#endif
1250
1186#if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE) 1251#if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE)
1187static struct resource bfin_twi0_resource[] = { 1252static struct resource bfin_twi0_resource[] = {
1188 [0] = { 1253 [0] = {
@@ -1506,6 +1571,10 @@ static struct platform_device *ezkit_devices[] __initdata = {
1506 &bf54x_spi_master0, 1571 &bf54x_spi_master0,
1507 &bf54x_spi_master1, 1572 &bf54x_spi_master1,
1508#endif 1573#endif
1574#if defined(CONFIG_VIDEO_BLACKFIN_CAPTURE) \
1575 || defined(CONFIG_VIDEO_BLACKFIN_CAPTURE_MODULE)
1576 &bfin_capture_device,
1577#endif
1509 1578
1510#if defined(CONFIG_KEYBOARD_BFIN) || defined(CONFIG_KEYBOARD_BFIN_MODULE) 1579#if defined(CONFIG_KEYBOARD_BFIN) || defined(CONFIG_KEYBOARD_BFIN_MODULE)
1511 &bf54x_kpad_device, 1580 &bf54x_kpad_device,