mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-13 16:50:05 +00:00
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:
parent
e6171bbe4d
commit
df864c309d
@ -1183,6 +1183,71 @@ static struct platform_device bf54x_spi_master1 = {
|
|||||||
};
|
};
|
||||||
#endif /* spi master and devices */
|
#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)
|
#if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE)
|
||||||
static struct resource bfin_twi0_resource[] = {
|
static struct resource bfin_twi0_resource[] = {
|
||||||
[0] = {
|
[0] = {
|
||||||
@ -1506,6 +1571,10 @@ static struct platform_device *ezkit_devices[] __initdata = {
|
|||||||
&bf54x_spi_master0,
|
&bf54x_spi_master0,
|
||||||
&bf54x_spi_master1,
|
&bf54x_spi_master1,
|
||||||
#endif
|
#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)
|
#if defined(CONFIG_KEYBOARD_BFIN) || defined(CONFIG_KEYBOARD_BFIN_MODULE)
|
||||||
&bf54x_kpad_device,
|
&bf54x_kpad_device,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user