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"
80 depends on VIDEO_V4L2 && OF && VIDEO_V4L2_SUBDEV_API && MEDIA_CONTROLLER
83 This driver provides support for N:1 video bus multiplexers.
86 tristate "OMAP 3 Camera support"
87 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3
88 depends on HAS_DMA && OF
90 select ARM_DMA_USE_IOMMU
91 select VIDEOBUF2_DMA_CONTIG
95 Driver for an OMAP 3 camera controller.
97 config VIDEO_OMAP3_DEBUG
98 bool "OMAP 3 Camera debug messages"
99 depends on VIDEO_OMAP3
101 Enable debug messages on OMAP 3 camera controller driver.
104 tristate "PXA27x Quick Capture Interface driver"
105 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
106 depends on PXA27x || COMPILE_TEST
107 select VIDEOBUF2_DMA_SG
111 This is a v4l2 driver for the PXA27x Quick Capture Interface
113 config VIDEO_QCOM_CAMSS
114 tristate "Qualcomm 8x16 V4L2 Camera Subsystem driver"
115 depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && HAS_DMA
116 depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
117 select VIDEOBUF2_DMA_SG
120 config VIDEO_S3C_CAMIF
121 tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver"
122 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
124 depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST
126 select VIDEOBUF2_DMA_CONTIG
128 This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera
129 host interface (CAMIF).
131 To compile this driver as a module, choose M here: the module
132 will be called s3c-camif.
134 config VIDEO_STM32_DCMI
135 tristate "STM32 Digital Camera Memory Interface (DCMI) support"
136 depends on VIDEO_V4L2 && OF && HAS_DMA
137 depends on ARCH_STM32 || COMPILE_TEST
138 select VIDEOBUF2_DMA_CONTIG
141 This module makes the STM32 Digital Camera Memory Interface (DCMI)
142 available as a v4l2 device.
144 To compile this driver as a module, choose M here: the module
145 will be called stm32-dcmi.
147 source "drivers/media/platform/soc_camera/Kconfig"
148 source "drivers/media/platform/exynos4-is/Kconfig"
149 source "drivers/media/platform/am437x/Kconfig"
150 source "drivers/media/platform/xilinx/Kconfig"
151 source "drivers/media/platform/rcar-vin/Kconfig"
152 source "drivers/media/platform/atmel/Kconfig"
155 tristate "TI CAL (Camera Adaptation Layer) driver"
156 depends on VIDEO_DEV && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
157 depends on SOC_DRA7XX || COMPILE_TEST
159 select VIDEOBUF2_DMA_CONTIG
163 Support for the TI CAL (Camera Adaptation Layer) block
165 In TI Technical Reference Manual this module is referred as
166 Camera Interface Subsystem (CAMSS).
168 endif # V4L_PLATFORM_DRIVERS
170 menuconfig V4L_MEM2MEM_DRIVERS
171 bool "Memory-to-memory multimedia devices"
172 depends on VIDEO_V4L2
173 depends on MEDIA_CAMERA_SUPPORT
176 Say Y here to enable selecting drivers for V4L devices that
177 use system memory for both source and destination buffers, as opposed
178 to capture and output drivers, which use memory buffers for just
181 if V4L_MEM2MEM_DRIVERS
184 tristate "Chips&Media Coda multi-standard codec IP"
185 depends on VIDEO_DEV && VIDEO_V4L2 && (ARCH_MXC || COMPILE_TEST)
188 select VIDEOBUF2_DMA_CONTIG
189 select VIDEOBUF2_VMALLOC
190 select V4L2_MEM2MEM_DEV
191 select GENERIC_ALLOCATOR
193 Coda is a range of video codec IPs that supports
194 H.264, MPEG-4, and other video formats.
196 config VIDEO_IMX_VDOA
197 def_tristate VIDEO_CODA if SOC_IMX6Q || COMPILE_TEST
199 config VIDEO_MEDIATEK_JPEG
200 tristate "Mediatek JPEG Codec driver"
201 depends on MTK_IOMMU_V1 || COMPILE_TEST
202 depends on VIDEO_DEV && VIDEO_V4L2
203 depends on ARCH_MEDIATEK || COMPILE_TEST
205 select VIDEOBUF2_DMA_CONTIG
206 select V4L2_MEM2MEM_DEV
208 Mediatek jpeg codec driver provides HW capability to decode
211 To compile this driver as a module, choose M here: the
212 module will be called mtk-jpeg
214 config VIDEO_MEDIATEK_VPU
215 tristate "Mediatek Video Processor Unit"
216 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
217 depends on ARCH_MEDIATEK || COMPILE_TEST
219 This driver provides downloading VPU firmware and
220 communicating with VPU. This driver for hw video
221 codec embedded in Mediatek's MT8173 SOCs. It is able
222 to handle video decoding/encoding in a range of formats.
224 To compile this driver as a module, choose M here: the
225 module will be called mtk-vpu.
227 config VIDEO_MEDIATEK_MDP
228 tristate "Mediatek MDP driver"
229 depends on MTK_IOMMU || COMPILE_TEST
230 depends on VIDEO_DEV && VIDEO_V4L2
231 depends on ARCH_MEDIATEK || COMPILE_TEST
233 select VIDEOBUF2_DMA_CONTIG
234 select V4L2_MEM2MEM_DEV
235 select VIDEO_MEDIATEK_VPU
238 It is a v4l2 driver and present in Mediatek MT8173 SoCs.
239 The driver supports for scaling and color space conversion.
241 To compile this driver as a module, choose M here: the
242 module will be called mtk-mdp.
244 config VIDEO_MEDIATEK_VCODEC
245 tristate "Mediatek Video Codec driver"
246 depends on MTK_IOMMU || COMPILE_TEST
247 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
248 depends on ARCH_MEDIATEK || COMPILE_TEST
249 select VIDEOBUF2_DMA_CONTIG
250 select V4L2_MEM2MEM_DEV
251 select VIDEO_MEDIATEK_VPU
254 Mediatek video codec driver provides HW capability to
255 encode and decode in a range of video formats
256 This driver rely on VPU driver to communicate with VPU.
258 To compile this driver as a module, choose M here: the
259 module will be called mtk-vcodec
261 config VIDEO_MEM2MEM_DEINTERLACE
262 tristate "Deinterlace support"
263 depends on VIDEO_DEV && VIDEO_V4L2 && DMA_ENGINE
265 select VIDEOBUF2_DMA_CONTIG
266 select V4L2_MEM2MEM_DEV
268 Generic deinterlacing V4L2 driver.
270 config VIDEO_SAMSUNG_S5P_G2D
271 tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver"
272 depends on VIDEO_DEV && VIDEO_V4L2
273 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
275 select VIDEOBUF2_DMA_CONTIG
276 select V4L2_MEM2MEM_DEV
279 This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D
280 2d graphics accelerator.
282 config VIDEO_SAMSUNG_S5P_JPEG
283 tristate "Samsung S5P/Exynos3250/Exynos4 JPEG codec driver"
284 depends on VIDEO_DEV && VIDEO_V4L2
285 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
287 select VIDEOBUF2_DMA_CONTIG
288 select V4L2_MEM2MEM_DEV
290 This is a v4l2 driver for Samsung S5P, EXYNOS3250
291 and EXYNOS4 JPEG codec
293 config VIDEO_SAMSUNG_S5P_MFC
294 tristate "Samsung S5P MFC Video Codec"
295 depends on VIDEO_DEV && VIDEO_V4L2
296 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
298 select VIDEOBUF2_DMA_CONTIG
301 MFC 5.1 and 6.x driver for V4L2
303 config VIDEO_MX2_EMMAPRP
304 tristate "MX2 eMMa-PrP support"
305 depends on VIDEO_DEV && VIDEO_V4L2
306 depends on SOC_IMX27 || COMPILE_TEST
308 select VIDEOBUF2_DMA_CONTIG
309 select V4L2_MEM2MEM_DEV
311 MX2X chips have a PrP that can be used to process buffers from
312 memory to memory. Operations include resizing and format
315 config VIDEO_SAMSUNG_EXYNOS_GSC
316 tristate "Samsung Exynos G-Scaler driver"
317 depends on VIDEO_DEV && VIDEO_V4L2
318 depends on ARCH_EXYNOS || COMPILE_TEST
320 select VIDEOBUF2_DMA_CONTIG
321 select V4L2_MEM2MEM_DEV
323 This is a v4l2 driver for Samsung EXYNOS5 SoC G-Scaler.
325 config VIDEO_STI_BDISP
326 tristate "STMicroelectronics BDISP 2D blitter driver"
327 depends on VIDEO_DEV && VIDEO_V4L2
329 depends on ARCH_STI || COMPILE_TEST
330 select VIDEOBUF2_DMA_CONTIG
331 select V4L2_MEM2MEM_DEV
333 This v4l2 mem2mem driver is a 2D blitter for STMicroelectronics SoC.
336 tristate "STMicroelectronics HVA multi-format video encoder V4L2 driver"
337 depends on VIDEO_DEV && VIDEO_V4L2
339 depends on ARCH_STI || COMPILE_TEST
340 select VIDEOBUF2_DMA_CONTIG
341 select V4L2_MEM2MEM_DEV
343 This V4L2 driver enables HVA (Hardware Video Accelerator) multi-format
344 video encoder of STMicroelectronics SoC, allowing hardware encoding of
345 raw uncompressed formats in various compressed video bitstreams format.
347 To compile this driver as a module, choose M here:
348 the module will be called st-hva.
350 config VIDEO_STI_HVA_DEBUGFS
351 bool "Export STMicroelectronics HVA internals in debugfs"
352 depends on VIDEO_STI_HVA
355 Select this to see information about the internal state and the last
356 operation of STMicroelectronics HVA multi-format video encoder in
359 Choose N unless you know you need this.
361 config VIDEO_STI_DELTA
362 tristate "STMicroelectronics DELTA multi-format video decoder V4L2 driver"
363 depends on VIDEO_DEV && VIDEO_V4L2
364 depends on ARCH_STI || COMPILE_TEST
367 This V4L2 driver enables DELTA multi-format video decoder
368 of STMicroelectronics STiH4xx SoC series allowing hardware
369 decoding of various compressed video bitstream format in
370 raw uncompressed format.
372 Use this option to see the decoders available for such
375 Please notice that the driver will only be built if
376 at least one of the DELTA decoder below is selected.
380 config VIDEO_STI_DELTA_MJPEG
381 bool "STMicroelectronics DELTA MJPEG support"
384 Enables DELTA MJPEG hardware support.
386 To compile this driver as a module, choose M here:
387 the module will be called st-delta.
389 config VIDEO_STI_DELTA_DRIVER
391 depends on VIDEO_STI_DELTA
392 depends on VIDEO_STI_DELTA_MJPEG
393 default VIDEO_STI_DELTA_MJPEG
394 select VIDEOBUF2_DMA_CONTIG
395 select V4L2_MEM2MEM_DEV
398 endif # VIDEO_STI_DELTA
401 tristate "SuperH VEU mem2mem video processing driver"
402 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
403 select VIDEOBUF2_DMA_CONTIG
404 select V4L2_MEM2MEM_DEV
406 Support for the Video Engine Unit (VEU) on SuperH and
409 config VIDEO_RENESAS_FDP1
410 tristate "Renesas Fine Display Processor"
411 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
412 depends on ARCH_SHMOBILE || COMPILE_TEST
413 depends on (!ARCH_RENESAS && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
414 select VIDEOBUF2_DMA_CONTIG
415 select V4L2_MEM2MEM_DEV
417 This is a V4L2 driver for the Renesas Fine Display Processor
418 providing colour space conversion, and de-interlacing features.
420 To compile this driver as a module, choose M here: the module
421 will be called rcar_fdp1.
423 config VIDEO_RENESAS_JPU
424 tristate "Renesas JPEG Processing Unit"
425 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
426 depends on ARCH_RENESAS || COMPILE_TEST
427 select VIDEOBUF2_DMA_CONTIG
428 select V4L2_MEM2MEM_DEV
430 This is a V4L2 driver for the Renesas JPEG Processing Unit.
432 To compile this driver as a module, choose M here: the module
433 will be called rcar_jpu.
435 config VIDEO_RENESAS_FCP
436 tristate "Renesas Frame Compression Processor"
437 depends on ARCH_RENESAS || COMPILE_TEST
440 This is a driver for the Renesas Frame Compression Processor (FCP).
441 The FCP is a companion module of video processing modules in the
442 Renesas R-Car Gen3 SoCs. It handles memory access for the codec,
445 To compile this driver as a module, choose M here: the module
446 will be called rcar-fcp.
448 config VIDEO_RENESAS_VSP1
449 tristate "Renesas VSP1 Video Processing Engine"
450 depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && HAS_DMA
451 depends on (ARCH_RENESAS && OF) || COMPILE_TEST
452 depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
453 select VIDEOBUF2_DMA_CONTIG
454 select VIDEOBUF2_VMALLOC
456 This is a V4L2 driver for the Renesas VSP1 video processing engine.
458 To compile this driver as a module, choose M here: the module
462 tristate "TI VPE (Video Processing Engine) driver"
463 depends on VIDEO_DEV && VIDEO_V4L2
464 depends on SOC_DRA7XX || COMPILE_TEST
466 select VIDEOBUF2_DMA_CONTIG
467 select V4L2_MEM2MEM_DEV
468 select VIDEO_TI_VPDMA
473 Support for the TI VPE(Video Processing Engine) block
476 config VIDEO_TI_VPE_DEBUG
477 bool "VPE debug messages"
478 depends on VIDEO_TI_VPE
480 Enable debug messages on VPE driver.
482 config VIDEO_QCOM_VENUS
483 tristate "Qualcomm Venus V4L2 encoder/decoder driver"
484 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
485 depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
486 select QCOM_MDT_LOADER if ARCH_QCOM
487 select QCOM_SCM if ARCH_QCOM
488 select VIDEOBUF2_DMA_SG
489 select V4L2_MEM2MEM_DEV
491 This is a V4L2 driver for Qualcomm Venus video accelerator
492 hardware. It accelerates encoding and decoding operations
493 on various Qualcomm SoCs.
494 To compile this driver as a module choose m here.
496 endif # V4L_MEM2MEM_DRIVERS
498 # TI VIDEO PORT Helper Modules
499 # These will be selected by VPE and VIP
500 config VIDEO_TI_VPDMA
509 menuconfig V4L_TEST_DRIVERS
510 bool "Media test drivers"
511 depends on MEDIA_CAMERA_SUPPORT
515 source "drivers/media/platform/vimc/Kconfig"
517 source "drivers/media/platform/vivid/Kconfig"
520 tristate "Virtual Memory-to-Memory Driver"
521 depends on VIDEO_DEV && VIDEO_V4L2
522 select VIDEOBUF2_VMALLOC
523 select V4L2_MEM2MEM_DEV
526 This is a virtual test device for the memory-to-memory driver
528 endif #V4L_TEST_DRIVERS
530 menuconfig DVB_PLATFORM_DRIVERS
531 bool "DVB platform devices"
532 depends on MEDIA_DIGITAL_TV_SUPPORT
535 Say Y here to enable support for platform-specific Digital TV drivers.
537 if DVB_PLATFORM_DRIVERS
538 source "drivers/media/platform/sti/c8sectpfe/Kconfig"
539 endif #DVB_PLATFORM_DRIVERS
541 menuconfig CEC_PLATFORM_DRIVERS
542 bool "CEC platform devices"
543 depends on MEDIA_CEC_SUPPORT
545 if CEC_PLATFORM_DRIVERS
547 config VIDEO_MESON_AO_CEC
548 tristate "Amlogic Meson AO CEC driver"
549 depends on ARCH_MESON || COMPILE_TEST
553 This is a driver for Amlogic Meson SoCs AO CEC interface. It uses the
554 generic CEC framework interface.
555 CEC bus is present in the HDMI connector and enables communication
556 between compatible devices.
558 config VIDEO_SAMSUNG_S5P_CEC
559 tristate "Samsung S5P CEC driver"
560 depends on PLAT_S5P || ARCH_EXYNOS || COMPILE_TEST
564 This is a driver for Samsung S5P HDMI CEC interface. It uses the
565 generic CEC framework interface.
566 CEC bus is present in the HDMI connector and enables communication
567 between compatible devices.
569 config VIDEO_STI_HDMI_CEC
570 tristate "STMicroelectronics STiH4xx HDMI CEC driver"
571 depends on ARCH_STI || COMPILE_TEST
575 This is a driver for STIH4xx HDMI CEC interface. It uses the
576 generic CEC framework interface.
577 CEC bus is present in the HDMI connector and enables communication
578 between compatible devices.
580 config VIDEO_STM32_HDMI_CEC
581 tristate "STMicroelectronics STM32 HDMI CEC driver"
582 depends on ARCH_STM32 || COMPILE_TEST
587 This is a driver for STM32 interface. It uses the
588 generic CEC framework interface.
589 CEC bus is present in the HDMI connector and enables communication
590 between compatible devices.
592 endif #CEC_PLATFORM_DRIVERS
594 menuconfig SDR_PLATFORM_DRIVERS
595 bool "SDR platform devices"
596 depends on MEDIA_SDR_SUPPORT
599 Say Y here to enable support for platform-specific SDR Drivers.
601 if SDR_PLATFORM_DRIVERS
603 config VIDEO_RCAR_DRIF
604 tristate "Renesas Digitial Radio Interface (DRIF)"
605 depends on VIDEO_V4L2 && HAS_DMA
606 depends on ARCH_RENESAS || COMPILE_TEST
607 select VIDEOBUF2_VMALLOC
609 Say Y if you want to enable R-Car Gen3 DRIF support. DRIF is Digital
610 Radio Interface that interfaces with an RF front end chip. It is a
611 receiver of digital data which uses DMA to transfer received data to
612 a configured location for an application to use.
614 To compile this driver as a module, choose M here; the module
615 will be called rcar_drif.
617 endif # SDR_PLATFORM_DRIVERS