3 # Most drivers here are currently for webcam support
5 menuconfig V4L_PLATFORM_DRIVERS
6 bool "V4L platform devices"
7 depends on MEDIA_CAMERA_SUPPORT
10 Say Y here to enable support for platform-specific V4L drivers.
12 if V4L_PLATFORM_DRIVERS
14 source "drivers/media/platform/marvell-ccic/Kconfig"
16 config VIDEO_VIA_CAMERA
17 tristate "VIAFB camera controller support"
19 select VIDEOBUF_DMA_SG
22 Driver support for the integrated camera controller in VIA
23 Chrome9 chipsets. Currently only tested on OLPC xo-1.5 systems
27 # Platform multimedia device configuration
30 source "drivers/media/platform/davinci/Kconfig"
32 source "drivers/media/platform/omap/Kconfig"
34 source "drivers/media/platform/blackfin/Kconfig"
37 tristate "SuperH VOU video output driver"
38 depends on MEDIA_CAMERA_SUPPORT
39 depends on VIDEO_DEV && I2C && HAS_DMA
40 depends on ARCH_SHMOBILE || COMPILE_TEST
41 select VIDEOBUF2_DMA_CONTIG
43 Support for the Video Output Unit (VOU) on SuperH SoCs.
46 tristate "Freescale VIU Video Driver"
47 depends on VIDEO_V4L2 && PPC_MPC512x
48 select VIDEOBUF_DMA_CONTIG
51 Support for Freescale VIU video driver. This device captures
52 video data, or overlays video on DIU frame buffer.
54 Say Y here if you want to enable VIU device on MPC5121e Rev2+.
60 depends on M32R || COMPILE_TEST
62 This is a video4linux driver for the Renesas AR (Artificial Retina)
65 config VIDEO_M32R_AR_M64278
66 tristate "AR device with color module M64278(VGA)"
67 depends on PLAT_M32700UT
70 This is a video4linux driver for the Renesas AR (Artificial
71 Retina) with M64278E-800 camera module.
72 This module supports VGA(640x480 pixels) resolutions.
74 To compile this driver as a module, choose M here: the
75 module will be called arv.
78 tristate "Video Multiplexer"
79 depends on OF && VIDEO_V4L2_SUBDEV_API && MEDIA_CONTROLLER
82 This driver provides support for N:1 video bus multiplexers.
85 tristate "OMAP 3 Camera support"
86 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3
87 depends on HAS_DMA && OF
89 select ARM_DMA_USE_IOMMU
90 select VIDEOBUF2_DMA_CONTIG
94 Driver for an OMAP 3 camera controller.
96 config VIDEO_OMAP3_DEBUG
97 bool "OMAP 3 Camera debug messages"
98 depends on VIDEO_OMAP3
100 Enable debug messages on OMAP 3 camera controller driver.
103 tristate "PXA27x Quick Capture Interface driver"
104 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
105 depends on PXA27x || COMPILE_TEST
106 select VIDEOBUF2_DMA_SG
110 This is a v4l2 driver for the PXA27x Quick Capture Interface
112 config VIDEO_S3C_CAMIF
113 tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver"
114 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
116 depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST
118 select VIDEOBUF2_DMA_CONTIG
120 This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera
121 host interface (CAMIF).
123 To compile this driver as a module, choose M here: the module
124 will be called s3c-camif.
126 config VIDEO_STM32_DCMI
127 tristate "STM32 Digital Camera Memory Interface (DCMI) support"
128 depends on VIDEO_V4L2 && OF && HAS_DMA
129 depends on ARCH_STM32 || COMPILE_TEST
130 select VIDEOBUF2_DMA_CONTIG
133 This module makes the STM32 Digital Camera Memory Interface (DCMI)
134 available as a v4l2 device.
136 To compile this driver as a module, choose M here: the module
137 will be called stm32-dcmi.
139 source "drivers/media/platform/soc_camera/Kconfig"
140 source "drivers/media/platform/exynos4-is/Kconfig"
141 source "drivers/media/platform/am437x/Kconfig"
142 source "drivers/media/platform/xilinx/Kconfig"
143 source "drivers/media/platform/rcar-vin/Kconfig"
144 source "drivers/media/platform/atmel/Kconfig"
147 tristate "TI CAL (Camera Adaptation Layer) driver"
148 depends on VIDEO_DEV && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
149 depends on SOC_DRA7XX || COMPILE_TEST
151 select VIDEOBUF2_DMA_CONTIG
155 Support for the TI CAL (Camera Adaptation Layer) block
157 In TI Technical Reference Manual this module is referred as
158 Camera Interface Subsystem (CAMSS).
160 endif # V4L_PLATFORM_DRIVERS
162 menuconfig V4L_MEM2MEM_DRIVERS
163 bool "Memory-to-memory multimedia devices"
164 depends on VIDEO_V4L2
165 depends on MEDIA_CAMERA_SUPPORT
168 Say Y here to enable selecting drivers for V4L devices that
169 use system memory for both source and destination buffers, as opposed
170 to capture and output drivers, which use memory buffers for just
173 if V4L_MEM2MEM_DRIVERS
176 tristate "Chips&Media Coda multi-standard codec IP"
177 depends on VIDEO_DEV && VIDEO_V4L2 && (ARCH_MXC || COMPILE_TEST)
180 select VIDEOBUF2_DMA_CONTIG
181 select VIDEOBUF2_VMALLOC
182 select V4L2_MEM2MEM_DEV
183 select GENERIC_ALLOCATOR
185 Coda is a range of video codec IPs that supports
186 H.264, MPEG-4, and other video formats.
188 config VIDEO_IMX_VDOA
189 def_tristate VIDEO_CODA if SOC_IMX6Q || COMPILE_TEST
191 config VIDEO_MEDIATEK_JPEG
192 tristate "Mediatek JPEG Codec driver"
193 depends on MTK_IOMMU_V1 || COMPILE_TEST
194 depends on VIDEO_DEV && VIDEO_V4L2
195 depends on ARCH_MEDIATEK || COMPILE_TEST
197 select VIDEOBUF2_DMA_CONTIG
198 select V4L2_MEM2MEM_DEV
200 Mediatek jpeg codec driver provides HW capability to decode
203 To compile this driver as a module, choose M here: the
204 module will be called mtk-jpeg
206 config VIDEO_MEDIATEK_VPU
207 tristate "Mediatek Video Processor Unit"
208 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
209 depends on ARCH_MEDIATEK || COMPILE_TEST
211 This driver provides downloading VPU firmware and
212 communicating with VPU. This driver for hw video
213 codec embedded in Mediatek's MT8173 SOCs. It is able
214 to handle video decoding/encoding in a range of formats.
216 To compile this driver as a module, choose M here: the
217 module will be called mtk-vpu.
219 config VIDEO_MEDIATEK_MDP
220 tristate "Mediatek MDP driver"
221 depends on MTK_IOMMU || COMPILE_TEST
222 depends on VIDEO_DEV && VIDEO_V4L2
223 depends on ARCH_MEDIATEK || COMPILE_TEST
225 select VIDEOBUF2_DMA_CONTIG
226 select V4L2_MEM2MEM_DEV
227 select VIDEO_MEDIATEK_VPU
230 It is a v4l2 driver and present in Mediatek MT8173 SoCs.
231 The driver supports for scaling and color space conversion.
233 To compile this driver as a module, choose M here: the
234 module will be called mtk-mdp.
236 config VIDEO_MEDIATEK_VCODEC
237 tristate "Mediatek Video Codec driver"
238 depends on MTK_IOMMU || COMPILE_TEST
239 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
240 depends on ARCH_MEDIATEK || COMPILE_TEST
241 select VIDEOBUF2_DMA_CONTIG
242 select V4L2_MEM2MEM_DEV
243 select VIDEO_MEDIATEK_VPU
246 Mediatek video codec driver provides HW capability to
247 encode and decode in a range of video formats
248 This driver rely on VPU driver to communicate with VPU.
250 To compile this driver as a module, choose M here: the
251 module will be called mtk-vcodec
253 config VIDEO_MEM2MEM_DEINTERLACE
254 tristate "Deinterlace support"
255 depends on VIDEO_DEV && VIDEO_V4L2 && DMA_ENGINE
257 select VIDEOBUF2_DMA_CONTIG
258 select V4L2_MEM2MEM_DEV
260 Generic deinterlacing V4L2 driver.
262 config VIDEO_SAMSUNG_S5P_G2D
263 tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver"
264 depends on VIDEO_DEV && VIDEO_V4L2
265 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
267 select VIDEOBUF2_DMA_CONTIG
268 select V4L2_MEM2MEM_DEV
271 This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D
272 2d graphics accelerator.
274 config VIDEO_SAMSUNG_S5P_JPEG
275 tristate "Samsung S5P/Exynos3250/Exynos4 JPEG codec driver"
276 depends on VIDEO_DEV && VIDEO_V4L2
277 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
279 select VIDEOBUF2_DMA_CONTIG
280 select V4L2_MEM2MEM_DEV
282 This is a v4l2 driver for Samsung S5P, EXYNOS3250
283 and EXYNOS4 JPEG codec
285 config VIDEO_SAMSUNG_S5P_MFC
286 tristate "Samsung S5P MFC Video Codec"
287 depends on VIDEO_DEV && VIDEO_V4L2
288 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
290 select VIDEOBUF2_DMA_CONTIG
293 MFC 5.1 and 6.x driver for V4L2
295 config VIDEO_MX2_EMMAPRP
296 tristate "MX2 eMMa-PrP support"
297 depends on VIDEO_DEV && VIDEO_V4L2
298 depends on SOC_IMX27 || COMPILE_TEST
300 select VIDEOBUF2_DMA_CONTIG
301 select V4L2_MEM2MEM_DEV
303 MX2X chips have a PrP that can be used to process buffers from
304 memory to memory. Operations include resizing and format
307 config VIDEO_SAMSUNG_EXYNOS_GSC
308 tristate "Samsung Exynos G-Scaler driver"
309 depends on VIDEO_DEV && VIDEO_V4L2
310 depends on ARCH_EXYNOS || COMPILE_TEST
312 select VIDEOBUF2_DMA_CONTIG
313 select V4L2_MEM2MEM_DEV
315 This is a v4l2 driver for Samsung EXYNOS5 SoC G-Scaler.
317 config VIDEO_STI_BDISP
318 tristate "STMicroelectronics BDISP 2D blitter driver"
319 depends on VIDEO_DEV && VIDEO_V4L2
321 depends on ARCH_STI || COMPILE_TEST
322 select VIDEOBUF2_DMA_CONTIG
323 select V4L2_MEM2MEM_DEV
325 This v4l2 mem2mem driver is a 2D blitter for STMicroelectronics SoC.
328 tristate "STMicroelectronics HVA multi-format video encoder V4L2 driver"
329 depends on VIDEO_DEV && VIDEO_V4L2
331 depends on ARCH_STI || COMPILE_TEST
332 select VIDEOBUF2_DMA_CONTIG
333 select V4L2_MEM2MEM_DEV
335 This V4L2 driver enables HVA (Hardware Video Accelerator) multi-format
336 video encoder of STMicroelectronics SoC, allowing hardware encoding of
337 raw uncompressed formats in various compressed video bitstreams format.
339 To compile this driver as a module, choose M here:
340 the module will be called st-hva.
342 config VIDEO_STI_HVA_DEBUGFS
343 bool "Export STMicroelectronics HVA internals in debugfs"
344 depends on VIDEO_STI_HVA
347 Select this to see information about the internal state and the last
348 operation of STMicroelectronics HVA multi-format video encoder in
351 Choose N unless you know you need this.
353 config VIDEO_STI_DELTA
354 tristate "STMicroelectronics DELTA multi-format video decoder V4L2 driver"
355 depends on VIDEO_DEV && VIDEO_V4L2
356 depends on ARCH_STI || COMPILE_TEST
359 This V4L2 driver enables DELTA multi-format video decoder
360 of STMicroelectronics STiH4xx SoC series allowing hardware
361 decoding of various compressed video bitstream format in
362 raw uncompressed format.
364 Use this option to see the decoders available for such
367 Please notice that the driver will only be built if
368 at least one of the DELTA decoder below is selected.
372 config VIDEO_STI_DELTA_MJPEG
373 bool "STMicroelectronics DELTA MJPEG support"
376 Enables DELTA MJPEG hardware support.
378 To compile this driver as a module, choose M here:
379 the module will be called st-delta.
381 config VIDEO_STI_DELTA_DRIVER
383 depends on VIDEO_STI_DELTA
384 depends on VIDEO_STI_DELTA_MJPEG
385 default VIDEO_STI_DELTA_MJPEG
386 select VIDEOBUF2_DMA_CONTIG
387 select V4L2_MEM2MEM_DEV
390 endif # VIDEO_STI_DELTA
393 tristate "SuperH VEU mem2mem video processing driver"
394 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
395 select VIDEOBUF2_DMA_CONTIG
396 select V4L2_MEM2MEM_DEV
398 Support for the Video Engine Unit (VEU) on SuperH and
401 config VIDEO_RENESAS_FDP1
402 tristate "Renesas Fine Display Processor"
403 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
404 depends on ARCH_SHMOBILE || COMPILE_TEST
405 depends on (!ARCH_RENESAS && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
406 select VIDEOBUF2_DMA_CONTIG
407 select V4L2_MEM2MEM_DEV
409 This is a V4L2 driver for the Renesas Fine Display Processor
410 providing colour space conversion, and de-interlacing features.
412 To compile this driver as a module, choose M here: the module
413 will be called rcar_fdp1.
415 config VIDEO_RENESAS_JPU
416 tristate "Renesas JPEG Processing Unit"
417 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
418 depends on ARCH_RENESAS || COMPILE_TEST
419 select VIDEOBUF2_DMA_CONTIG
420 select V4L2_MEM2MEM_DEV
422 This is a V4L2 driver for the Renesas JPEG Processing Unit.
424 To compile this driver as a module, choose M here: the module
425 will be called rcar_jpu.
427 config VIDEO_RENESAS_FCP
428 tristate "Renesas Frame Compression Processor"
429 depends on ARCH_RENESAS || COMPILE_TEST
432 This is a driver for the Renesas Frame Compression Processor (FCP).
433 The FCP is a companion module of video processing modules in the
434 Renesas R-Car Gen3 SoCs. It handles memory access for the codec,
437 To compile this driver as a module, choose M here: the module
438 will be called rcar-fcp.
440 config VIDEO_RENESAS_VSP1
441 tristate "Renesas VSP1 Video Processing Engine"
442 depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && HAS_DMA
443 depends on (ARCH_RENESAS && OF) || COMPILE_TEST
444 depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
445 select VIDEOBUF2_DMA_CONTIG
446 select VIDEOBUF2_VMALLOC
448 This is a V4L2 driver for the Renesas VSP1 video processing engine.
450 To compile this driver as a module, choose M here: the module
454 tristate "TI VPE (Video Processing Engine) driver"
455 depends on VIDEO_DEV && VIDEO_V4L2
456 depends on SOC_DRA7XX || COMPILE_TEST
458 select VIDEOBUF2_DMA_CONTIG
459 select V4L2_MEM2MEM_DEV
460 select VIDEO_TI_VPDMA
465 Support for the TI VPE(Video Processing Engine) block
468 config VIDEO_TI_VPE_DEBUG
469 bool "VPE debug messages"
470 depends on VIDEO_TI_VPE
472 Enable debug messages on VPE driver.
474 config VIDEO_QCOM_VENUS
475 tristate "Qualcomm Venus V4L2 encoder/decoder driver"
476 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
477 depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
478 select QCOM_MDT_LOADER if (ARM || ARM64)
479 select QCOM_SCM if (ARM || ARM64)
480 select VIDEOBUF2_DMA_SG
481 select V4L2_MEM2MEM_DEV
483 This is a V4L2 driver for Qualcomm Venus video accelerator
484 hardware. It accelerates encoding and decoding operations
485 on various Qualcomm SoCs.
486 To compile this driver as a module choose m here.
488 endif # V4L_MEM2MEM_DRIVERS
490 # TI VIDEO PORT Helper Modules
491 # These will be selected by VPE and VIP
492 config VIDEO_TI_VPDMA
501 menuconfig V4L_TEST_DRIVERS
502 bool "Media test drivers"
503 depends on MEDIA_CAMERA_SUPPORT
507 source "drivers/media/platform/vimc/Kconfig"
509 source "drivers/media/platform/vivid/Kconfig"
512 tristate "Virtual Memory-to-Memory Driver"
513 depends on VIDEO_DEV && VIDEO_V4L2
514 select VIDEOBUF2_VMALLOC
515 select V4L2_MEM2MEM_DEV
518 This is a virtual test device for the memory-to-memory driver
520 endif #V4L_TEST_DRIVERS
522 menuconfig DVB_PLATFORM_DRIVERS
523 bool "DVB platform devices"
524 depends on MEDIA_DIGITAL_TV_SUPPORT
527 Say Y here to enable support for platform-specific Digital TV drivers.
529 if DVB_PLATFORM_DRIVERS
530 source "drivers/media/platform/sti/c8sectpfe/Kconfig"
531 endif #DVB_PLATFORM_DRIVERS
533 menuconfig CEC_PLATFORM_DRIVERS
534 bool "CEC platform devices"
535 depends on MEDIA_CEC_SUPPORT
537 if CEC_PLATFORM_DRIVERS
539 config VIDEO_SAMSUNG_S5P_CEC
540 tristate "Samsung S5P CEC driver"
541 depends on PLAT_S5P || ARCH_EXYNOS || COMPILE_TEST
545 This is a driver for Samsung S5P HDMI CEC interface. It uses the
546 generic CEC framework interface.
547 CEC bus is present in the HDMI connector and enables communication
548 between compatible devices.
550 config VIDEO_STI_HDMI_CEC
551 tristate "STMicroelectronics STiH4xx HDMI CEC driver"
552 depends on ARCH_STI || COMPILE_TEST
556 This is a driver for STIH4xx HDMI CEC interface. It uses the
557 generic CEC framework interface.
558 CEC bus is present in the HDMI connector and enables communication
559 between compatible devices.
561 config VIDEO_STM32_HDMI_CEC
562 tristate "STMicroelectronics STM32 HDMI CEC driver"
563 depends on ARCH_STM32 || COMPILE_TEST
568 This is a driver for STM32 interface. It uses the
569 generic CEC framework interface.
570 CEC bus is present in the HDMI connector and enables communication
571 between compatible devices.
573 endif #CEC_PLATFORM_DRIVERS
575 menuconfig SDR_PLATFORM_DRIVERS
576 bool "SDR platform devices"
577 depends on MEDIA_SDR_SUPPORT
580 Say Y here to enable support for platform-specific SDR Drivers.
582 if SDR_PLATFORM_DRIVERS
584 config VIDEO_RCAR_DRIF
585 tristate "Renesas Digitial Radio Interface (DRIF)"
586 depends on VIDEO_V4L2 && HAS_DMA
587 depends on ARCH_RENESAS || COMPILE_TEST
588 select VIDEOBUF2_VMALLOC
590 Say Y if you want to enable R-Car Gen3 DRIF support. DRIF is Digital
591 Radio Interface that interfaces with an RF front end chip. It is a
592 receiver of digital data which uses DMA to transfer received data to
593 a configured location for an application to use.
595 To compile this driver as a module, choose M here; the module
596 will be called rcar_drif.
598 endif # SDR_PLATFORM_DRIVERS