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
461 config VIDEO_ROCKCHIP_RGA
462 tristate "Rockchip Raster 2d Graphic Acceleration Unit"
463 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
464 depends on ARCH_ROCKCHIP || COMPILE_TEST
465 select VIDEOBUF2_DMA_SG
466 select V4L2_MEM2MEM_DEV
469 This is a v4l2 driver for Rockchip SOC RGA 2d graphics accelerator.
470 Rockchip RGA is a separate 2D raster graphic acceleration unit.
471 It accelerates 2D graphics operations, such as point/line drawing,
472 image scaling, rotation, BitBLT, alpha blending and image blur/sharpness.
474 To compile this driver as a module choose m here.
477 tristate "TI VPE (Video Processing Engine) driver"
478 depends on VIDEO_DEV && VIDEO_V4L2
479 depends on SOC_DRA7XX || COMPILE_TEST
481 select VIDEOBUF2_DMA_CONTIG
482 select V4L2_MEM2MEM_DEV
483 select VIDEO_TI_VPDMA
488 Support for the TI VPE(Video Processing Engine) block
491 config VIDEO_TI_VPE_DEBUG
492 bool "VPE debug messages"
493 depends on VIDEO_TI_VPE
495 Enable debug messages on VPE driver.
497 config VIDEO_QCOM_VENUS
498 tristate "Qualcomm Venus V4L2 encoder/decoder driver"
499 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
500 depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
501 select QCOM_MDT_LOADER if ARCH_QCOM
502 select QCOM_SCM if ARCH_QCOM
503 select VIDEOBUF2_DMA_SG
504 select V4L2_MEM2MEM_DEV
506 This is a V4L2 driver for Qualcomm Venus video accelerator
507 hardware. It accelerates encoding and decoding operations
508 on various Qualcomm SoCs.
509 To compile this driver as a module choose m here.
511 endif # V4L_MEM2MEM_DRIVERS
513 # TI VIDEO PORT Helper Modules
514 # These will be selected by VPE and VIP
515 config VIDEO_TI_VPDMA
524 menuconfig V4L_TEST_DRIVERS
525 bool "Media test drivers"
526 depends on MEDIA_CAMERA_SUPPORT
530 source "drivers/media/platform/vimc/Kconfig"
532 source "drivers/media/platform/vivid/Kconfig"
535 tristate "Virtual Memory-to-Memory Driver"
536 depends on VIDEO_DEV && VIDEO_V4L2
537 select VIDEOBUF2_VMALLOC
538 select V4L2_MEM2MEM_DEV
541 This is a virtual test device for the memory-to-memory driver
543 endif #V4L_TEST_DRIVERS
545 menuconfig DVB_PLATFORM_DRIVERS
546 bool "DVB platform devices"
547 depends on MEDIA_DIGITAL_TV_SUPPORT
550 Say Y here to enable support for platform-specific Digital TV drivers.
552 if DVB_PLATFORM_DRIVERS
553 source "drivers/media/platform/sti/c8sectpfe/Kconfig"
554 endif #DVB_PLATFORM_DRIVERS
556 menuconfig CEC_PLATFORM_DRIVERS
557 bool "CEC platform devices"
558 depends on MEDIA_CEC_SUPPORT
560 if CEC_PLATFORM_DRIVERS
562 config VIDEO_MESON_AO_CEC
563 tristate "Amlogic Meson AO CEC driver"
564 depends on ARCH_MESON || COMPILE_TEST
568 This is a driver for Amlogic Meson SoCs AO CEC interface. It uses the
569 generic CEC framework interface.
570 CEC bus is present in the HDMI connector and enables communication
573 tristate "Generic GPIO-based CEC driver"
579 This is a generic GPIO-based CEC driver.
580 The CEC bus is present in the HDMI connector and enables communication
581 between compatible devices.
583 config VIDEO_SAMSUNG_S5P_CEC
584 tristate "Samsung S5P CEC driver"
585 depends on PLAT_S5P || ARCH_EXYNOS || COMPILE_TEST
589 This is a driver for Samsung S5P HDMI CEC interface. It uses the
590 generic CEC framework interface.
591 CEC bus is present in the HDMI connector and enables communication
592 between compatible devices.
594 config VIDEO_STI_HDMI_CEC
595 tristate "STMicroelectronics STiH4xx HDMI CEC driver"
596 depends on ARCH_STI || COMPILE_TEST
600 This is a driver for STIH4xx HDMI CEC interface. It uses the
601 generic CEC framework interface.
602 CEC bus is present in the HDMI connector and enables communication
603 between compatible devices.
605 config VIDEO_STM32_HDMI_CEC
606 tristate "STMicroelectronics STM32 HDMI CEC driver"
607 depends on ARCH_STM32 || COMPILE_TEST
612 This is a driver for STM32 interface. It uses the
613 generic CEC framework interface.
614 CEC bus is present in the HDMI connector and enables communication
615 between compatible devices.
617 config VIDEO_TEGRA_HDMI_CEC
618 tristate "Tegra HDMI CEC driver"
619 depends on ARCH_TEGRA || COMPILE_TEST
623 This is a driver for the Tegra HDMI CEC interface. It uses the
624 generic CEC framework interface.
625 The CEC bus is present in the HDMI connector and enables communication
626 between compatible devices.
628 endif #CEC_PLATFORM_DRIVERS
630 menuconfig SDR_PLATFORM_DRIVERS
631 bool "SDR platform devices"
632 depends on MEDIA_SDR_SUPPORT
635 Say Y here to enable support for platform-specific SDR Drivers.
637 if SDR_PLATFORM_DRIVERS
639 config VIDEO_RCAR_DRIF
640 tristate "Renesas Digitial Radio Interface (DRIF)"
641 depends on VIDEO_V4L2 && HAS_DMA
642 depends on ARCH_RENESAS || COMPILE_TEST
643 select VIDEOBUF2_VMALLOC
645 Say Y if you want to enable R-Car Gen3 DRIF support. DRIF is Digital
646 Radio Interface that interfaces with an RF front end chip. It is a
647 receiver of digital data which uses DMA to transfer received data to
648 a configured location for an application to use.
650 To compile this driver as a module, choose M here; the module
651 will be called rcar_drif.
653 endif # SDR_PLATFORM_DRIVERS