mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-30 08:02:30 +00:00
7498469f61
The Marvell camera core can support all three videobuf2 buffer modes, which is slick, but it also requires that all three modes be built and present, even though only one is likely to be used. This patch allows the supported modes to be selected at configuration time, reducing the footprint of the driver. Prior to this patch, the MMP camera driver looked like this: mmp_camera 19092 0 videobuf2_core 15542 1 mmp_camera videobuf2_dma_sg 3173 1 mmp_camera videobuf2_dma_contig 2188 1 mmp_camera videobuf2_vmalloc 1718 1 mmp_camera videobuf2_memops 2100 3 videobuf2_dma_sg,videobuf2_dma_contig,videobuf2_vmalloc Afterward, instead, with scatter/gather only configured: mmp_camera 16021 0 videobuf2_core 15542 1 mmp_camera videobuf2_dma_sg 3173 1 mmp_camera videobuf2_memops 2100 1 videobuf2_dma_sg The total goes from 43,813 bytes to 36,836. The emphasis has been on simplicity and minimal #ifdef use rather than on squeezing out every possible byte of code. For configuration, the driver simply looks at which videobuf2 modes have been configured in and supports them all; it's simplistic but should be good enough. The cafe driver is set to support vmalloc and dma-contig; mmp supports only dma-sg, since that's the only mode that really makes sense to use. Signed-off-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
23 lines
794 B
Text
23 lines
794 B
Text
config VIDEO_CAFE_CCIC
|
|
tristate "Marvell 88ALP01 (Cafe) CMOS Camera Controller support"
|
|
depends on PCI && I2C && VIDEO_V4L2
|
|
select VIDEO_OV7670
|
|
select VIDEOBUF2_VMALLOC
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
---help---
|
|
This is a video4linux2 driver for the Marvell 88ALP01 integrated
|
|
CMOS camera controller. This is the controller found on first-
|
|
generation OLPC systems.
|
|
|
|
config VIDEO_MMP_CAMERA
|
|
tristate "Marvell Armada 610 integrated camera controller support"
|
|
depends on ARCH_MMP && I2C && VIDEO_V4L2
|
|
select VIDEO_OV7670
|
|
select I2C_GPIO
|
|
select VIDEOBUF2_DMA_SG
|
|
---help---
|
|
This is a Video4Linux2 driver for the integrated camera
|
|
controller found on Marvell Armada 610 application
|
|
processors (and likely beyond). This is the controller found
|
|
in OLPC XO 1.75 systems.
|
|
|