blackfin: bf548: add capture support
Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com> Signed-off-by: Bob Liu <lliubbo@gmail.com>
This commit is contained in:
Родитель
e6171bbe4d
Коммит
df864c309d
|
@ -1183,6 +1183,71 @@ static struct platform_device bf54x_spi_master1 = {
|
|||
};
|
||||
#endif /* spi master and devices */
|
||||
|
||||
#if defined(CONFIG_VIDEO_BLACKFIN_CAPTURE) \
|
||||
|| defined(CONFIG_VIDEO_BLACKFIN_CAPTURE_MODULE)
|
||||
#include <linux/videodev2.h>
|
||||
#include <media/blackfin/bfin_capture.h>
|
||||
#include <media/blackfin/ppi.h>
|
||||
|
||||
static const unsigned short ppi_req[] = {
|
||||
P_PPI1_D0, P_PPI1_D1, P_PPI1_D2, P_PPI1_D3,
|
||||
P_PPI1_D4, P_PPI1_D5, P_PPI1_D6, P_PPI1_D7,
|
||||
P_PPI1_CLK, P_PPI1_FS1, P_PPI1_FS2,
|
||||
0,
|
||||
};
|
||||
|
||||
static const struct ppi_info ppi_info = {
|
||||
.type = PPI_TYPE_EPPI,
|
||||
.dma_ch = CH_EPPI1,
|
||||
.irq_err = IRQ_EPPI1_ERROR,
|
||||
.base = (void __iomem *)EPPI1_STATUS,
|
||||
.pin_req = ppi_req,
|
||||
};
|
||||
|
||||
#if defined(CONFIG_VIDEO_VS6624) \
|
||||
|| defined(CONFIG_VIDEO_VS6624_MODULE)
|
||||
static struct v4l2_input vs6624_inputs[] = {
|
||||
{
|
||||
.index = 0,
|
||||
.name = "Camera",
|
||||
.type = V4L2_INPUT_TYPE_CAMERA,
|
||||
.std = V4L2_STD_UNKNOWN,
|
||||
},
|
||||
};
|
||||
|
||||
static struct bcap_route vs6624_routes[] = {
|
||||
{
|
||||
.input = 0,
|
||||
.output = 0,
|
||||
},
|
||||
};
|
||||
|
||||
static const unsigned vs6624_ce_pin = GPIO_PG6;
|
||||
|
||||
static struct bfin_capture_config bfin_capture_data = {
|
||||
.card_name = "BF548",
|
||||
.inputs = vs6624_inputs,
|
||||
.num_inputs = ARRAY_SIZE(vs6624_inputs),
|
||||
.routes = vs6624_routes,
|
||||
.i2c_adapter_id = 0,
|
||||
.board_info = {
|
||||
.type = "vs6624",
|
||||
.addr = 0x10,
|
||||
.platform_data = (void *)&vs6624_ce_pin,
|
||||
},
|
||||
.ppi_info = &ppi_info,
|
||||
.ppi_control = (POLC | PACKEN | DLEN_8 | XFR_TYPE | 0x20),
|
||||
};
|
||||
#endif
|
||||
|
||||
static struct platform_device bfin_capture_device = {
|
||||
.name = "bfin_capture",
|
||||
.dev = {
|
||||
.platform_data = &bfin_capture_data,
|
||||
},
|
||||
};
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE)
|
||||
static struct resource bfin_twi0_resource[] = {
|
||||
[0] = {
|
||||
|
@ -1506,6 +1571,10 @@ static struct platform_device *ezkit_devices[] __initdata = {
|
|||
&bf54x_spi_master0,
|
||||
&bf54x_spi_master1,
|
||||
#endif
|
||||
#if defined(CONFIG_VIDEO_BLACKFIN_CAPTURE) \
|
||||
|| defined(CONFIG_VIDEO_BLACKFIN_CAPTURE_MODULE)
|
||||
&bfin_capture_device,
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_KEYBOARD_BFIN) || defined(CONFIG_KEYBOARD_BFIN_MODULE)
|
||||
&bf54x_kpad_device,
|
||||
|
|
Загрузка…
Ссылка в новой задаче