#
# Generic video config states
#

config VIDEO_V4L2
	tristate
	depends on VIDEO_DEV && VIDEO_V4L2_COMMON
	default VIDEO_DEV && VIDEO_V4L2_COMMON

config VIDEOBUF_GEN
	tristate

config VIDEOBUF_DMA_SG
	depends on HAS_DMA
	select VIDEOBUF_GEN
	tristate

config VIDEOBUF_VMALLOC
	select VIDEOBUF_GEN
	tristate

config VIDEOBUF_DMA_CONTIG
	depends on HAS_DMA
	select VIDEOBUF_GEN
	tristate

config VIDEOBUF_DVB
	tristate
	select VIDEOBUF_GEN

config VIDEO_BTCX
	depends on PCI
	tristate

config VIDEO_TVEEPROM
	tristate
	depends on I2C

config VIDEO_TUNER
	tristate
	depends on MEDIA_TUNER

config V4L2_MEM2MEM_DEV
	tristate
	depends on VIDEOBUF2_CORE

config VIDEOBUF2_CORE
	tristate

config VIDEOBUF2_MEMOPS
	tristate

config VIDEOBUF2_DMA_CONTIG
	select VIDEOBUF2_CORE
	select VIDEOBUF2_MEMOPS
	tristate

config VIDEOBUF2_VMALLOC
	select VIDEOBUF2_CORE
	select VIDEOBUF2_MEMOPS
	tristate


config VIDEOBUF2_DMA_SG
	#depends on HAS_DMA
	select VIDEOBUF2_CORE
	select VIDEOBUF2_MEMOPS
	tristate
#
# Multimedia Video device configuration
#

menuconfig VIDEO_CAPTURE_DRIVERS
	bool "Video capture adapters"
	depends on VIDEO_V4L2
	default y
	---help---
	  Say Y here to enable selecting the video adapters for
	  webcams, analog TV, and hybrid analog/digital TV.
	  Some of those devices also supports FM radio.

if VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2

config VIDEO_ADV_DEBUG
	bool "Enable advanced debug functionality"
	default n
	---help---
	  Say Y here to enable advanced debugging functionality on some
	  V4L devices.
	  In doubt, say N.

config VIDEO_FIXED_MINOR_RANGES
	bool "Enable old-style fixed minor ranges for video devices"
	default n
	---help---
	  Say Y here to enable the old-style fixed-range minor assignments.
	  Only useful if you rely on the old behavior and use mknod instead of udev.

	  When in doubt, say N.

config VIDEO_HELPER_CHIPS_AUTO
	bool "Autoselect pertinent encoders/decoders and other helper chips"
	default y if !EXPERT
	---help---
	  Most video cards may require additional modules to encode or
	  decode audio/video standards. This option will autoselect
	  all pertinent modules to each selected video module.

	  Unselect this only if you know exactly what you are doing, since
	  it may break support on some boards.

	  In doubt, say Y.

config VIDEO_IR_I2C
	tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO
	depends on I2C && RC_CORE
	default y
	---help---
	  Most boards have an IR chip directly connected via GPIO. However,
	  some video boards have the IR connected via I2C bus.

	  If your board doesn't have an I2C IR chip, you may disable this
	  option.

	  In doubt, say Y.

#
# Encoder / Decoder module configuration
#

menu "Encoders, decoders, sensors and other helper chips"
	visible if !VIDEO_HELPER_CHIPS_AUTO

comment "Audio decoders, processors and mixers"

config VIDEO_TVAUDIO
	tristate "Simple audio decoder chips"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for several audio decoder chips found on some bt8xx boards:
	  Philips: tda9840, tda9873h, tda9874h/a, tda9850, tda985x, tea6300,
		   tea6320, tea6420, tda8425, ta8874z.
	  Microchip: pic16c54 based design on ProVideo PV951 board.

	  To compile this driver as a module, choose M here: the
	  module will be called tvaudio.

config VIDEO_TDA7432
	tristate "Philips TDA7432 audio processor"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for tda7432 audio decoder chip found on some bt8xx boards.

	  To compile this driver as a module, choose M here: the
	  module will be called tda7432.

config VIDEO_TDA9840
	tristate "Philips TDA9840 audio processor"
	depends on I2C
	---help---
	  Support for tda9840 audio decoder chip found on some Zoran boards.

	  To compile this driver as a module, choose M here: the
	  module will be called tda9840.

config VIDEO_TEA6415C
	tristate "Philips TEA6415C audio processor"
	depends on I2C
	---help---
	  Support for tea6415c audio decoder chip found on some bt8xx boards.

	  To compile this driver as a module, choose M here: the
	  module will be called tea6415c.

config VIDEO_TEA6420
	tristate "Philips TEA6420 audio processor"
	depends on I2C
	---help---
	  Support for tea6420 audio decoder chip found on some bt8xx boards.

	  To compile this driver as a module, choose M here: the
	  module will be called tea6420.

config VIDEO_MSP3400
	tristate "Micronas MSP34xx audio decoders"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Micronas MSP34xx series of audio decoders.

	  To compile this driver as a module, choose M here: the
	  module will be called msp3400.

config VIDEO_CS5345
	tristate "Cirrus Logic CS5345 audio ADC"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Cirrus Logic CS5345 24-bit, 192 kHz
	  stereo A/D converter.

	  To compile this driver as a module, choose M here: the
	  module will be called cs5345.

config VIDEO_CS53L32A
	tristate "Cirrus Logic CS53L32A audio ADC"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Cirrus Logic CS53L32A low voltage
	  stereo A/D converter.

	  To compile this driver as a module, choose M here: the
	  module will be called cs53l32a.

config VIDEO_TLV320AIC23B
	tristate "Texas Instruments TLV320AIC23B audio codec"
	depends on VIDEO_V4L2 && I2C && EXPERIMENTAL
	---help---
	  Support for the Texas Instruments TLV320AIC23B audio codec.

	  To compile this driver as a module, choose M here: the
	  module will be called tlv320aic23b.

config VIDEO_WM8775
	tristate "Wolfson Microelectronics WM8775 audio ADC with input mixer"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Wolfson Microelectronics WM8775 high
	  performance stereo A/D Converter with a 4 channel input mixer.

	  To compile this driver as a module, choose M here: the
	  module will be called wm8775.

config VIDEO_WM8739
	tristate "Wolfson Microelectronics WM8739 stereo audio ADC"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Wolfson Microelectronics WM8739
	  stereo A/D Converter.

	  To compile this driver as a module, choose M here: the
	  module will be called wm8739.

config VIDEO_VP27SMPX
	tristate "Panasonic VP27s internal MPX"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the internal MPX of the Panasonic VP27s tuner.

	  To compile this driver as a module, choose M here: the
	  module will be called vp27smpx.

comment "RDS decoders"

config VIDEO_SAA6588
	tristate "SAA6588 Radio Chip RDS decoder support"
	depends on VIDEO_V4L2 && I2C

	help
	  Support for this Radio Data System (RDS) decoder. This allows
	  seeing radio station identification transmitted using this
	  standard.

	  To compile this driver as a module, choose M here: the
	  module will be called saa6588.

comment "Video decoders"

config VIDEO_ADV7180
	tristate "Analog Devices ADV7180 decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Analog Devices ADV7180 video decoder.

	  To compile this driver as a module, choose M here: the
	  module will be called adv7180.

config VIDEO_ADV7183
	tristate "Analog Devices ADV7183 decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  V4l2 subdevice driver for the Analog Devices
	  ADV7183 video decoder.

	  To compile this driver as a module, choose M here: the
	  module will be called adv7183.

config VIDEO_BT819
	tristate "BT819A VideoStream decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for BT819A video decoder.

	  To compile this driver as a module, choose M here: the
	  module will be called bt819.

config VIDEO_BT856
	tristate "BT856 VideoStream decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for BT856 video decoder.

	  To compile this driver as a module, choose M here: the
	  module will be called bt856.

config VIDEO_BT866
	tristate "BT866 VideoStream decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for BT866 video decoder.

	  To compile this driver as a module, choose M here: the
	  module will be called bt866.

config VIDEO_KS0127
	tristate "KS0127 video decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for KS0127 video decoder.

	  This chip is used on AverMedia AVS6EYES Zoran-based MJPEG
	  cards.

	  To compile this driver as a module, choose M here: the
	  module will be called ks0127.

config VIDEO_SAA7110
	tristate "Philips SAA7110 video decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Philips SAA7110 video decoders.

	  To compile this driver as a module, choose M here: the
	  module will be called saa7110.

config VIDEO_SAA711X
	tristate "Philips SAA7111/3/4/5 video decoders"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Philips SAA7111/3/4/5 video decoders.

	  To compile this driver as a module, choose M here: the
	  module will be called saa7115.

config VIDEO_SAA7191
	tristate "Philips SAA7191 video decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Philips SAA7191 video decoder.

	  To compile this driver as a module, choose M here: the
	  module will be called saa7191.

config VIDEO_TVP514X
	tristate "Texas Instruments TVP514x video decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  This is a Video4Linux2 sensor-level driver for the TI TVP5146/47
	  decoder. It is currently working with the TI OMAP3 camera
	  controller.

	  To compile this driver as a module, choose M here: the
	  module will be called tvp514x.

config VIDEO_TVP5150
	tristate "Texas Instruments TVP5150 video decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Texas Instruments TVP5150 video decoder.

	  To compile this driver as a module, choose M here: the
	  module will be called tvp5150.

config VIDEO_TVP7002
	tristate "Texas Instruments TVP7002 video decoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Texas Instruments TVP7002 video decoder.

	  To compile this driver as a module, choose M here: the
	  module will be called tvp7002.

config VIDEO_VPX3220
	tristate "vpx3220a, vpx3216b & vpx3214c video decoders"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for VPX322x video decoders.

	  To compile this driver as a module, choose M here: the
	  module will be called vpx3220.

comment "Video and audio decoders"

config VIDEO_SAA717X
	tristate "Philips SAA7171/3/4 audio/video decoders"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Philips SAA7171/3/4 audio/video decoders.

	  To compile this driver as a module, choose M here: the
	  module will be called saa717x.

source "drivers/media/video/cx25840/Kconfig"

comment "MPEG video encoders"

config VIDEO_CX2341X
	tristate "Conexant CX2341x MPEG encoders"
	depends on VIDEO_V4L2 && VIDEO_V4L2_COMMON
	---help---
	  Support for the Conexant CX23416 MPEG encoders
	  and CX23415 MPEG encoder/decoders.

	  This module currently supports the encoding functions only.

	  To compile this driver as a module, choose M here: the
	  module will be called cx2341x.

comment "Video encoders"

config VIDEO_SAA7127
	tristate "Philips SAA7127/9 digital video encoders"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Philips SAA7127/9 digital video encoders.

	  To compile this driver as a module, choose M here: the
	  module will be called saa7127.

config VIDEO_SAA7185
	tristate "Philips SAA7185 video encoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Philips SAA7185 video encoder.

	  To compile this driver as a module, choose M here: the
	  module will be called saa7185.

config VIDEO_ADV7170
	tristate "Analog Devices ADV7170 video encoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Analog Devices ADV7170 video encoder driver

	  To compile this driver as a module, choose M here: the
	  module will be called adv7170.

config VIDEO_ADV7175
	tristate "Analog Devices ADV7175 video encoder"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the Analog Devices ADV7175 video encoder driver

	  To compile this driver as a module, choose M here: the
	  module will be called adv7175.

config VIDEO_ADV7343
	tristate "ADV7343 video encoder"
	depends on I2C
	help
	  Support for Analog Devices I2C bus based ADV7343 encoder.

	  To compile this driver as a module, choose M here: the
	  module will be called adv7343.

config VIDEO_AK881X
	tristate "AK8813/AK8814 video encoders"
	depends on I2C
	help
	  Video output driver for AKM AK8813 and AK8814 TV encoders

comment "Camera sensor devices"

config VIDEO_APTINA_PLL
	tristate

config VIDEO_OV7670
	tristate "OmniVision OV7670 sensor support"
	depends on I2C && VIDEO_V4L2
	---help---
	  This is a Video4Linux2 sensor-level driver for the OmniVision
	  OV7670 VGA camera.  It currently only works with the M88ALP01
	  controller.

config VIDEO_VS6624
	tristate "ST VS6624 sensor support"
	depends on VIDEO_V4L2 && I2C
	---help---
	  This is a Video4Linux2 sensor-level driver for the ST VS6624
	  camera.

	  To compile this driver as a module, choose M here: the
	  module will be called vs6624.

config VIDEO_MT9M032
	tristate "MT9M032 camera sensor support"
	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
	select VIDEO_APTINA_PLL
	---help---
	  This driver supports MT9M032 camera sensors from Aptina, monochrome
	  models only.

config VIDEO_MT9P031
	tristate "Aptina MT9P031 support"
	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
	select VIDEO_APTINA_PLL
	---help---
	  This is a Video4Linux2 sensor-level driver for the Aptina
	  (Micron) mt9p031 5 Mpixel camera.

config VIDEO_MT9T001
	tristate "Aptina MT9T001 support"
	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
	---help---
	  This is a Video4Linux2 sensor-level driver for the Aptina
	  (Micron) mt0t001 3 Mpixel camera.

config VIDEO_MT9V011
	tristate "Micron mt9v011 sensor support"
	depends on I2C && VIDEO_V4L2
	---help---
	  This is a Video4Linux2 sensor-level driver for the Micron
	  mt0v011 1.3 Mpixel camera.  It currently only works with the
	  em28xx driver.

config VIDEO_MT9V032
	tristate "Micron MT9V032 sensor support"
	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
	---help---
	  This is a Video4Linux2 sensor-level driver for the Micron
	  MT9V032 752x480 CMOS sensor.

config VIDEO_TCM825X
	tristate "TCM825x camera sensor support"
	depends on I2C && VIDEO_V4L2
	---help---
	  This is a driver for the Toshiba TCM825x VGA camera sensor.
	  It is used for example in Nokia N800.

config VIDEO_SR030PC30
	tristate "Siliconfile SR030PC30 sensor support"
	depends on I2C && VIDEO_V4L2
	---help---
	  This driver supports SR030PC30 VGA camera from Siliconfile

config VIDEO_NOON010PC30
	tristate "Siliconfile NOON010PC30 sensor support"
	depends on I2C && VIDEO_V4L2 && EXPERIMENTAL && VIDEO_V4L2_SUBDEV_API
	---help---
	  This driver supports NOON010PC30 CIF camera from Siliconfile

source "drivers/media/video/m5mols/Kconfig"

config VIDEO_S5K6AA
	tristate "Samsung S5K6AAFX sensor support"
	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
	---help---
	  This is a V4L2 sensor-level driver for Samsung S5K6AA(FX) 1.3M
	  camera sensor with an embedded SoC image signal processor.

comment "Flash devices"

config VIDEO_ADP1653
	tristate "ADP1653 flash support"
	depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
	---help---
	  This is a driver for the ADP1653 flash controller. It is used for
	  example in Nokia N900.

config VIDEO_AS3645A
	tristate "AS3645A flash driver support"
	depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
	---help---
	  This is a driver for the AS3645A and LM3555 flash controllers. It has
	  build in control for flash, torch and indicator LEDs.

comment "Video improvement chips"

config VIDEO_UPD64031A
	tristate "NEC Electronics uPD64031A Ghost Reduction"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the NEC Electronics uPD64031A Ghost Reduction
	  video chip. It is most often found in NTSC TV cards made for
	  Japan and is used to reduce the 'ghosting' effect that can
	  be present in analog TV broadcasts.

	  To compile this driver as a module, choose M here: the
	  module will be called upd64031a.

config VIDEO_UPD64083
	tristate "NEC Electronics uPD64083 3-Dimensional Y/C separation"
	depends on VIDEO_V4L2 && I2C
	---help---
	  Support for the NEC Electronics uPD64083 3-Dimensional Y/C
	  separation video chip. It is used to improve the quality of
	  the colors of a composite signal.

	  To compile this driver as a module, choose M here: the
	  module will be called upd64083.

comment "Miscelaneous helper chips"

config VIDEO_THS7303
	tristate "THS7303 Video Amplifier"
	depends on I2C
	help
	  Support for TI THS7303 video amplifier

	  To compile this driver as a module, choose M here: the
	  module will be called ths7303.

config VIDEO_M52790
	tristate "Mitsubishi M52790 A/V switch"
	depends on VIDEO_V4L2 && I2C
	---help---
	 Support for the Mitsubishi M52790 A/V switch.

	 To compile this driver as a module, choose M here: the
	 module will be called m52790.

endmenu # encoder / decoder chips

config VIDEO_VIVI
	tristate "Virtual Video Driver"
	depends on VIDEO_DEV && VIDEO_V4L2 && !SPARC32 && !SPARC64
	depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE
	select FONT_8x16
	select VIDEOBUF2_VMALLOC
	default n
	---help---
	  Enables a virtual video driver. This device shows a color bar
	  and a timestamp, as a real device would generate by using V4L2
	  api.
	  Say Y here if you want to test video apps or debug V4L devices.
	  In doubt, say N.

#
# USB Multimedia device configuration
#

menuconfig V4L_USB_DRIVERS
	bool "V4L USB devices"
	depends on USB
	default y

if V4L_USB_DRIVERS

source "drivers/media/video/uvc/Kconfig"

source "drivers/media/video/gspca/Kconfig"

source "drivers/media/video/pvrusb2/Kconfig"

source "drivers/media/video/hdpvr/Kconfig"

source "drivers/media/video/em28xx/Kconfig"

source "drivers/media/video/tlg2300/Kconfig"

source "drivers/media/video/cx231xx/Kconfig"

source "drivers/media/video/tm6000/Kconfig"

source "drivers/media/video/usbvision/Kconfig"

source "drivers/media/video/et61x251/Kconfig"

source "drivers/media/video/sn9c102/Kconfig"

source "drivers/media/video/pwc/Kconfig"

source "drivers/media/video/cpia2/Kconfig"

config USB_ZR364XX
	tristate "USB ZR364XX Camera support"
	depends on VIDEO_V4L2
	select VIDEOBUF_GEN
	select VIDEOBUF_VMALLOC
	---help---
	  Say Y here if you want to connect this type of camera to your
	  computer's USB port.
	  See <file:Documentation/video4linux/zr364xx.txt> for more info
	  and list of supported cameras.

	  To compile this driver as a module, choose M here: the
	  module will be called zr364xx.

config USB_STKWEBCAM
	tristate "USB Syntek DC1125 Camera support"
	depends on VIDEO_V4L2 && EXPERIMENTAL
	---help---
	  Say Y here if you want to use this type of camera.
	  Supported devices are typically found in some Asus laptops,
	  with USB id 174f:a311 and 05e1:0501. Other Syntek cameras
	  may be supported by the stk11xx driver, from which this is
	  derived, see <http://sourceforge.net/projects/syntekdriver/>

	  To compile this driver as a module, choose M here: the
	  module will be called stkwebcam.

config USB_S2255
	tristate "USB Sensoray 2255 video capture device"
	depends on VIDEO_V4L2
	select VIDEOBUF_VMALLOC
	default n
	help
	  Say Y here if you want support for the Sensoray 2255 USB device.
	  This driver can be compiled as a module, called s2255drv.

endif # V4L_USB_DRIVERS

#
# PCI drivers configuration
#

menuconfig V4L_PCI_DRIVERS
	bool "V4L PCI(e) devices"
	depends on PCI
	default y
	---help---
	  Say Y here to enable support for these PCI(e) drivers.

if V4L_PCI_DRIVERS

source "drivers/media/video/au0828/Kconfig"

source "drivers/media/video/bt8xx/Kconfig"

source "drivers/media/video/cx18/Kconfig"

source "drivers/media/video/cx23885/Kconfig"

source "drivers/media/video/cx25821/Kconfig"

source "drivers/media/video/cx88/Kconfig"

config VIDEO_HEXIUM_GEMINI
	tristate "Hexium Gemini frame grabber"
	depends on PCI && VIDEO_V4L2 && I2C
	select VIDEO_SAA7146_VV
	---help---
	  This is a video4linux driver for the Hexium Gemini frame
	  grabber card by Hexium. Please note that the Gemini Dual
	  card is *not* fully supported.

	  To compile this driver as a module, choose M here: the
	  module will be called hexium_gemini.

config VIDEO_HEXIUM_ORION
	tristate "Hexium HV-PCI6 and Orion frame grabber"
	depends on PCI && VIDEO_V4L2 && I2C
	select VIDEO_SAA7146_VV
	---help---
	  This is a video4linux driver for the Hexium HV-PCI6 and
	  Orion frame grabber cards by Hexium.

	  To compile this driver as a module, choose M here: the
	  module will be called hexium_orion.

source "drivers/media/video/ivtv/Kconfig"

config VIDEO_MEYE
	tristate "Sony Vaio Picturebook Motion Eye Video For Linux"
	depends on PCI && SONY_LAPTOP && VIDEO_V4L2
	---help---
	  This is the video4linux driver for the Motion Eye camera found
	  in the Vaio Picturebook laptops. Please read the material in
	  <file:Documentation/video4linux/meye.txt> for more information.

	  If you say Y or M here, you need to say Y or M to "Sony Laptop
	  Extras" in the misc device section.

	  To compile this driver as a module, choose M here: the
	  module will be called meye.

config VIDEO_MXB
	tristate "Siemens-Nixdorf 'Multimedia eXtension Board'"
	depends on PCI && VIDEO_V4L2 && I2C
	select VIDEO_SAA7146_VV
	select VIDEO_TUNER
	select VIDEO_SAA711X if VIDEO_HELPER_CHIPS_AUTO
	select VIDEO_TDA9840 if VIDEO_HELPER_CHIPS_AUTO
	select VIDEO_TEA6415C if VIDEO_HELPER_CHIPS_AUTO
	select VIDEO_TEA6420 if VIDEO_HELPER_CHIPS_AUTO
	---help---
	  This is a video4linux driver for the 'Multimedia eXtension Board'
	  TV card by Siemens-Nixdorf.

	  To compile this driver as a module, choose M here: the
	  module will be called mxb.

source "drivers/media/video/saa7134/Kconfig"

source "drivers/media/video/saa7164/Kconfig"

source "drivers/media/video/zoran/Kconfig"

endif # V4L_PCI_DRIVERS

#
# ISA & parallel port drivers configuration
#

menuconfig V4L_ISA_PARPORT_DRIVERS
	bool "V4L ISA and parallel port devices"
	depends on ISA || PARPORT
	default n
	---help---
	  Say Y here to enable support for these ISA and parallel port drivers.

if V4L_ISA_PARPORT_DRIVERS

config VIDEO_BWQCAM
	tristate "Quickcam BW Video For Linux"
	depends on PARPORT && VIDEO_V4L2
	help
	  Say Y have if you the black and white version of the QuickCam
	  camera. See the next option for the color version.

	  To compile this driver as a module, choose M here: the
	  module will be called bw-qcam.

config VIDEO_CQCAM
	tristate "QuickCam Colour Video For Linux"
	depends on PARPORT && VIDEO_V4L2
	help
	  This is the video4linux driver for the colour version of the
	  Connectix QuickCam.  If you have one of these cameras, say Y here,
	  otherwise say N.  This driver does not work with the original
	  monochrome QuickCam, QuickCam VC or QuickClip.  It is also available
	  as a module (c-qcam).
	  Read <file:Documentation/video4linux/CQcam.txt> for more information.

config VIDEO_PMS
	tristate "Mediavision Pro Movie Studio Video For Linux"
	depends on ISA && VIDEO_V4L2
	help
	  Say Y if you have the ISA Mediavision Pro Movie Studio
	  capture card.

	  To compile this driver as a module, choose M here: the
	  module will be called pms.

config VIDEO_W9966
	tristate "W9966CF Webcam (FlyCam Supra and others) Video For Linux"
	depends on PARPORT_1284 && PARPORT && VIDEO_V4L2
	help
	  Video4linux driver for Winbond's w9966 based Webcams.
	  Currently tested with the LifeView FlyCam Supra.
	  If you have one of these cameras, say Y here
	  otherwise say N.
	  This driver is also available as a module (w9966).

	  Check out <file:Documentation/video4linux/w9966.txt> for more
	  information.

endif # V4L_ISA_PARPORT_DRIVERS

menuconfig V4L_PLATFORM_DRIVERS
	bool "V4L platform devices"
	default n
	---help---
	  Say Y here to enable support for platform-specific V4L drivers.

if V4L_PLATFORM_DRIVERS

source "drivers/media/video/marvell-ccic/Kconfig"

config VIDEO_VIA_CAMERA
	tristate "VIAFB camera controller support"
	depends on FB_VIA
	select VIDEOBUF_DMA_SG
	select VIDEO_OV7670
	help
	   Driver support for the integrated camera controller in VIA
	   Chrome9 chipsets.  Currently only tested on OLPC xo-1.5 systems
	   with ov7670 sensors.

#
# Platform multimedia device configuration
#

source "drivers/media/video/davinci/Kconfig"

source "drivers/media/video/omap/Kconfig"

source "drivers/media/video/blackfin/Kconfig"

config VIDEO_SH_VOU
	tristate "SuperH VOU video output driver"
	depends on VIDEO_DEV && ARCH_SHMOBILE
	select VIDEOBUF_DMA_CONTIG
	help
	  Support for the Video Output Unit (VOU) on SuperH SoCs.

config VIDEO_VIU
	tristate "Freescale VIU Video Driver"
	depends on VIDEO_V4L2 && PPC_MPC512x
	select VIDEOBUF_DMA_CONTIG
	default y
	---help---
	  Support for Freescale VIU video driver. This device captures
	  video data, or overlays video on DIU frame buffer.

	  Say Y here if you want to enable VIU device on MPC5121e Rev2+.
	  In doubt, say N.

config VIDEO_TIMBERDALE
	tristate "Support for timberdale Video In/LogiWIN"
	depends on VIDEO_V4L2 && I2C && DMADEVICES
	select DMA_ENGINE
	select TIMB_DMA
	select VIDEO_ADV7180
	select VIDEOBUF_DMA_CONTIG
	---help---
	  Add support for the Video In peripherial of the timberdale FPGA.

config VIDEO_VINO
	tristate "SGI Vino Video For Linux"
	depends on I2C && SGI_IP22 && VIDEO_V4L2
	select VIDEO_SAA7191 if VIDEO_HELPER_CHIPS_AUTO
	help
	  Say Y here to build in support for the Vino video input system found
	  on SGI Indy machines.

config VIDEO_M32R_AR
	tristate "AR devices"
	depends on M32R && VIDEO_V4L2
	---help---
	  This is a video4linux driver for the Renesas AR (Artificial Retina)
	  camera module.

config VIDEO_M32R_AR_M64278
	tristate "AR device with color module M64278(VGA)"
	depends on PLAT_M32700UT
	select VIDEO_M32R_AR
	---help---
	  This is a video4linux driver for the Renesas AR (Artificial
	  Retina) with M64278E-800 camera module.
	  This module supports VGA(640x480 pixels) resolutions.

	  To compile this driver as a module, choose M here: the
	  module will be called arv.

config VIDEO_OMAP3
	tristate "OMAP 3 Camera support (EXPERIMENTAL)"
	depends on OMAP_IOVMM && VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3 && EXPERIMENTAL
	---help---
	  Driver for an OMAP 3 camera controller.

config VIDEO_OMAP3_DEBUG
	bool "OMAP 3 Camera debug messages"
	depends on VIDEO_OMAP3
	---help---
	  Enable debug messages on OMAP 3 camera controller driver.

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_IMX074
	tristate "imx074 support"
	depends on SOC_CAMERA && I2C
	help
	  This driver supports IMX074 cameras from Sony

config SOC_CAMERA_MT9M001
	tristate "mt9m001 support"
	depends on SOC_CAMERA && I2C
	select GPIO_PCA953X if MT9M001_PCA9536_SWITCH
	help
	  This driver supports MT9M001 cameras from Micron, monochrome
	  and colour models.

config SOC_CAMERA_MT9M111
	tristate "mt9m111, mt9m112 and mt9m131 support"
	depends on SOC_CAMERA && I2C
	help
	  This driver supports MT9M111, MT9M112 and MT9M131 cameras from
	  Micron/Aptina

config SOC_CAMERA_MT9T031
	tristate "mt9t031 support"
	depends on SOC_CAMERA && I2C
	help
	  This driver supports MT9T031 cameras from Micron.

config SOC_CAMERA_MT9T112
	tristate "mt9t112 support"
	depends on SOC_CAMERA && I2C
	help
	  This driver supports MT9T112 cameras from Aptina.

config SOC_CAMERA_MT9V022
	tristate "mt9v022 support"
	depends on SOC_CAMERA && I2C
	select GPIO_PCA953X if MT9V022_PCA9536_SWITCH
	help
	  This driver supports MT9V022 cameras from Micron

config SOC_CAMERA_RJ54N1
	tristate "rj54n1cb0c support"
	depends on SOC_CAMERA && I2C
	help
	  This is a rj54n1cb0c video driver

config SOC_CAMERA_TW9910
	tristate "tw9910 support"
	depends on SOC_CAMERA && I2C
	help
	  This is a tw9910 video driver

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 SOC_CAMERA_OV2640
	tristate "ov2640 camera support"
	depends on SOC_CAMERA && I2C
	help
	  This is a ov2640 camera driver

config SOC_CAMERA_OV5642
	tristate "ov5642 camera support"
	depends on SOC_CAMERA && I2C
	help
	  This is a V4L2 camera driver for the OmniVision OV5642 sensor

config SOC_CAMERA_OV6650
	tristate "ov6650 sensor support"
	depends on SOC_CAMERA && I2C
	---help---
	  This is a V4L2 SoC camera driver for the OmniVision OV6650 sensor

config SOC_CAMERA_OV772X
	tristate "ov772x camera support"
	depends on SOC_CAMERA && I2C
	help
	  This is a ov772x camera driver

config SOC_CAMERA_OV9640
	tristate "ov9640 camera support"
	depends on SOC_CAMERA && I2C
	help
	  This is a ov9640 camera driver

config SOC_CAMERA_OV9740
	tristate "ov9740 camera support"
	depends on SOC_CAMERA && I2C
	help
	  This is a ov9740 camera driver

config MX1_VIDEO
	bool

config VIDEO_MX1
	tristate "i.MX1/i.MXL CMOS Sensor Interface driver"
	depends on VIDEO_DEV && ARCH_MX1 && SOC_CAMERA
	select FIQ
	select VIDEOBUF_DMA_CONTIG
	select MX1_VIDEO
	---help---
	  This is a v4l2 driver for the i.MX1/i.MXL CMOS Sensor Interface

config MX3_VIDEO
	bool

config VIDEO_MX3
	tristate "i.MX3x Camera Sensor Interface driver"
	depends on VIDEO_DEV && MX3_IPU && SOC_CAMERA
	select VIDEOBUF2_DMA_CONTIG
	select MX3_VIDEO
	---help---
	  This is a v4l2 driver for the i.MX3x Camera Sensor Interface

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

config VIDEO_SH_MOBILE_CSI2
	tristate "SuperH Mobile MIPI CSI-2 Interface driver"
	depends on VIDEO_DEV && SOC_CAMERA && HAVE_CLK
	---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
	select VIDEOBUF2_DMA_CONTIG
	---help---
	  This is a v4l2 driver for the SuperH Mobile CEU Interface

config VIDEO_OMAP1
	tristate "OMAP1 Camera Interface driver"
	depends on VIDEO_DEV && ARCH_OMAP1 && SOC_CAMERA
	select VIDEOBUF_DMA_CONTIG
	select VIDEOBUF_DMA_SG
	---help---
	  This is a v4l2 driver for the TI OMAP1 camera interface

config VIDEO_OMAP2
	tristate "OMAP2 Camera Capture Interface driver"
	depends on VIDEO_DEV && ARCH_OMAP2
	select VIDEOBUF_DMA_SG
	---help---
	  This is a v4l2 driver for the TI OMAP2 camera capture interface

config VIDEO_MX2_HOSTSUPPORT
	bool

config VIDEO_MX2
	tristate "i.MX27/i.MX25 Camera Sensor Interface driver"
	depends on VIDEO_DEV && SOC_CAMERA && (MACH_MX27 || ARCH_MX25)
	select VIDEOBUF2_DMA_CONTIG
	select VIDEO_MX2_HOSTSUPPORT
	---help---
	  This is a v4l2 driver for the i.MX27 and the i.MX25 Camera Sensor
	  Interface

config  VIDEO_SAMSUNG_S5P_FIMC
	tristate "Samsung S5P and EXYNOS4 camera interface driver (EXPERIMENTAL)"
	depends on VIDEO_V4L2 && I2C && PLAT_S5P && PM_RUNTIME && \
		VIDEO_V4L2_SUBDEV_API && EXPERIMENTAL
	select VIDEOBUF2_DMA_CONTIG
	select V4L2_MEM2MEM_DEV
	---help---
	  This is a v4l2 driver for Samsung S5P and EXYNOS4 camera
	  host interface and video postprocessor.

	  To compile this driver as a module, choose M here: the
	  module will be called s5p-fimc.

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

config VIDEO_S5P_MIPI_CSIS
	tristate "Samsung S5P and EXYNOS4 MIPI CSI receiver driver"
	depends on VIDEO_V4L2 && PM_RUNTIME && PLAT_S5P
	depends on VIDEO_V4L2_SUBDEV_API && REGULATOR
	---help---
	  This is a v4l2 driver for Samsung S5P/EXYNOS4 MIPI-CSI receiver.

	  To compile this driver as a module, choose M here: the
	  module will be called s5p-csis.

source "drivers/media/video/s5p-tv/Kconfig"

endif # V4L_PLATFORM_DRIVERS
endif # VIDEO_CAPTURE_DRIVERS

menuconfig V4L_MEM2MEM_DRIVERS
	bool "Memory-to-memory multimedia devices"
	depends on VIDEO_V4L2
	default n
	---help---
	  Say Y here to enable selecting drivers for V4L devices that
	  use system memory for both source and destination buffers, as opposed
	  to capture and output drivers, which use memory buffers for just
	  one of those.

if V4L_MEM2MEM_DRIVERS

config VIDEO_MEM2MEM_TESTDEV
	tristate "Virtual test device for mem2mem framework"
	depends on VIDEO_DEV && VIDEO_V4L2
	select VIDEOBUF2_VMALLOC
	select V4L2_MEM2MEM_DEV
	default n
	---help---
	  This is a virtual test device for the memory-to-memory driver
	  framework.

config VIDEO_SAMSUNG_S5P_G2D
	tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver"
	depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P
	select VIDEOBUF2_DMA_CONTIG
	select V4L2_MEM2MEM_DEV
	default n
	---help---
	  This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D
	  2d graphics accelerator.

config VIDEO_SAMSUNG_S5P_JPEG
	tristate "Samsung S5P/Exynos4 JPEG codec driver (EXPERIMENTAL)"
	depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P && EXPERIMENTAL
	select VIDEOBUF2_DMA_CONTIG
	select V4L2_MEM2MEM_DEV
	---help---
	  This is a v4l2 driver for Samsung S5P and EXYNOS4 JPEG codec

config VIDEO_SAMSUNG_S5P_MFC
	tristate "Samsung S5P MFC 5.1 Video Codec"
	depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P
	select VIDEOBUF2_DMA_CONTIG
	default n
	help
	    MFC 5.1 driver for V4L2.

config VIDEO_MX2_EMMAPRP
	tristate "MX2 eMMa-PrP support"
	depends on VIDEO_DEV && VIDEO_V4L2 && SOC_IMX27
	select VIDEOBUF2_DMA_CONTIG
	select V4L2_MEM2MEM_DEV
	help
	    MX2X chips have a PrP that can be used to process buffers from
	    memory to memory. Operations include resizing and format
	    conversion.

endif # V4L_MEM2MEM_DRIVERS