config SOC_CAMERA
	tristate "SoC camera support"
	depends on VIDEO_V4L2 && HAS_DMA && I2C
	select VIDEOBUF_GEN
	select VIDEOBUF2_CORE
	help
	  SoC Camera is a common API to several cameras, not connecting
	  over a bus like PCI or USB. For example some i2c camera connected
	  directly to the data bus of an SoC.

config SOC_CAMERA_SCALE_CROP
	tristate

config SOC_CAMERA_PLATFORM
	tristate "platform camera support"
	depends on SOC_CAMERA
	help
	  This is a generic SoC camera platform driver, useful for testing

config VIDEO_PXA27x
	tristate "PXA27x Quick Capture Interface driver"
	depends on VIDEO_DEV && PXA27x && SOC_CAMERA
	select VIDEOBUF_DMA_SG
	select SG_SPLIT
	---help---
	  This is a v4l2 driver for the PXA27x Quick Capture Interface

config VIDEO_RCAR_VIN
	tristate "R-Car Video Input (VIN) support"
	depends on VIDEO_DEV && SOC_CAMERA
	depends on ARCH_RENESAS || COMPILE_TEST
	depends on HAS_DMA
	select VIDEOBUF2_DMA_CONTIG
	select SOC_CAMERA_SCALE_CROP
	---help---
	  This is a v4l2 driver for the R-Car VIN Interface

config VIDEO_SH_MOBILE_CSI2
	tristate "SuperH Mobile MIPI CSI-2 Interface driver"
	depends on VIDEO_DEV && SOC_CAMERA && HAVE_CLK
	depends on ARCH_SHMOBILE || SUPERH || COMPILE_TEST
	---help---
	  This is a v4l2 driver for the SuperH MIPI CSI-2 Interface

config VIDEO_SH_MOBILE_CEU
	tristate "SuperH Mobile CEU Interface driver"
	depends on VIDEO_DEV && SOC_CAMERA && HAS_DMA && HAVE_CLK
	depends on ARCH_SHMOBILE || COMPILE_TEST
	depends on HAS_DMA
	select VIDEOBUF2_DMA_CONTIG
	select SOC_CAMERA_SCALE_CROP
	---help---
	  This is a v4l2 driver for the SuperH Mobile CEU Interface

config VIDEO_ATMEL_ISI
	tristate "ATMEL Image Sensor Interface (ISI) support"
	depends on VIDEO_DEV && SOC_CAMERA
	depends on ARCH_AT91 || COMPILE_TEST
	depends on HAS_DMA
	select VIDEOBUF2_DMA_CONTIG
	---help---
	  This module makes the ATMEL Image Sensor Interface available
	  as a v4l2 device.

