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"
36 source "drivers/media/platform/exynos/fimc-is/Kconfig"
39 tristate "SuperH VOU video output driver"
40 depends on MEDIA_CAMERA_SUPPORT
41 depends on VIDEO_DEV && I2C && HAS_DMA
42 depends on ARCH_SHMOBILE || COMPILE_TEST
43 select VIDEOBUF2_DMA_CONTIG
45 Support for the Video Output Unit (VOU) on SuperH SoCs.
48 tristate "Freescale VIU Video Driver"
49 depends on VIDEO_V4L2 && PPC_MPC512x
50 select VIDEOBUF_DMA_CONTIG
53 Support for Freescale VIU video driver. This device captures
54 video data, or overlays video on DIU frame buffer.
56 Say Y here if you want to enable VIU device on MPC5121e Rev2+.
62 depends on M32R || COMPILE_TEST
64 This is a video4linux driver for the Renesas AR (Artificial Retina)
67 config VIDEO_M32R_AR_M64278
68 tristate "AR device with color module M64278(VGA)"
69 depends on PLAT_M32700UT
72 This is a video4linux driver for the Renesas AR (Artificial
73 Retina) with M64278E-800 camera module.
74 This module supports VGA(640x480 pixels) resolutions.
76 To compile this driver as a module, choose M here: the
77 module will be called arv.
80 tristate "Video Multiplexer"
82 depends on VIDEO_V4L2 && OF && VIDEO_V4L2_SUBDEV_API && MEDIA_CONTROLLER
85 This driver provides support for N:1 video bus multiplexers.
88 tristate "OMAP 3 Camera support"
89 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3
90 depends on HAS_DMA && OF
92 select ARM_DMA_USE_IOMMU
93 select VIDEOBUF2_DMA_CONTIG
97 Driver for an OMAP 3 camera controller.
99 config VIDEO_OMAP3_DEBUG
100 bool "OMAP 3 Camera debug messages"
101 depends on VIDEO_OMAP3
103 Enable debug messages on OMAP 3 camera controller driver.
106 tristate "PXA27x Quick Capture Interface driver"
107 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
108 depends on PXA27x || COMPILE_TEST
109 select VIDEOBUF2_DMA_SG
113 This is a v4l2 driver for the PXA27x Quick Capture Interface
115 config VIDEO_QCOM_CAMSS
116 tristate "Qualcomm 8x16 V4L2 Camera Subsystem driver"
117 depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && HAS_DMA
118 depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
119 select VIDEOBUF2_DMA_SG
122 config VIDEO_S3C_CAMIF
123 tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver"
124 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
126 depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST
128 select VIDEOBUF2_DMA_CONTIG
130 This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera
131 host interface (CAMIF).
133 To compile this driver as a module, choose M here: the module
134 will be called s3c-camif.
136 config VIDEO_STM32_DCMI
137 tristate "STM32 Digital Camera Memory Interface (DCMI) support"
138 depends on VIDEO_V4L2 && OF && HAS_DMA
139 depends on ARCH_STM32 || COMPILE_TEST
140 select VIDEOBUF2_DMA_CONTIG
143 This module makes the STM32 Digital Camera Memory Interface (DCMI)
144 available as a v4l2 device.
146 To compile this driver as a module, choose M here: the module
147 will be called stm32-dcmi.
149 source "drivers/media/platform/soc_camera/Kconfig"
150 source "drivers/media/platform/exynos4-is/Kconfig"
151 source "drivers/media/platform/am437x/Kconfig"
152 source "drivers/media/platform/xilinx/Kconfig"
153 source "drivers/media/platform/rcar-vin/Kconfig"
154 source "drivers/media/platform/atmel/Kconfig"
157 tristate "TI CAL (Camera Adaptation Layer) driver"
158 depends on VIDEO_DEV && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
159 depends on SOC_DRA7XX || COMPILE_TEST
161 select VIDEOBUF2_DMA_CONTIG
165 Support for the TI CAL (Camera Adaptation Layer) block
167 In TI Technical Reference Manual this module is referred as
168 Camera Interface Subsystem (CAMSS).
170 endif # V4L_PLATFORM_DRIVERS
172 menuconfig V4L_MEM2MEM_DRIVERS
173 bool "Memory-to-memory multimedia devices"
174 depends on VIDEO_V4L2
175 depends on MEDIA_CAMERA_SUPPORT
178 Say Y here to enable selecting drivers for V4L devices that
179 use system memory for both source and destination buffers, as opposed
180 to capture and output drivers, which use memory buffers for just
183 if V4L_MEM2MEM_DRIVERS
186 tristate "Chips&Media Coda multi-standard codec IP"
187 depends on VIDEO_DEV && VIDEO_V4L2 && (ARCH_MXC || COMPILE_TEST)
190 select VIDEOBUF2_DMA_CONTIG
191 select VIDEOBUF2_VMALLOC
192 select V4L2_MEM2MEM_DEV
193 select GENERIC_ALLOCATOR
195 Coda is a range of video codec IPs that supports
196 H.264, MPEG-4, and other video formats.
198 config VIDEO_IMX_VDOA
199 def_tristate VIDEO_CODA if SOC_IMX6Q || COMPILE_TEST
201 config VIDEO_MEDIATEK_JPEG
202 tristate "Mediatek JPEG Codec driver"
203 depends on MTK_IOMMU_V1 || COMPILE_TEST
204 depends on VIDEO_DEV && VIDEO_V4L2
205 depends on ARCH_MEDIATEK || COMPILE_TEST
207 select VIDEOBUF2_DMA_CONTIG
208 select V4L2_MEM2MEM_DEV
210 Mediatek jpeg codec driver provides HW capability to decode
213 To compile this driver as a module, choose M here: the
214 module will be called mtk-jpeg
216 config VIDEO_MEDIATEK_VPU
217 tristate "Mediatek Video Processor Unit"
218 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
219 depends on ARCH_MEDIATEK || COMPILE_TEST
221 This driver provides downloading VPU firmware and
222 communicating with VPU. This driver for hw video
223 codec embedded in Mediatek's MT8173 SOCs. It is able
224 to handle video decoding/encoding in a range of formats.
226 To compile this driver as a module, choose M here: the
227 module will be called mtk-vpu.
229 config VIDEO_MEDIATEK_MDP
230 tristate "Mediatek MDP driver"
231 depends on MTK_IOMMU || COMPILE_TEST
232 depends on VIDEO_DEV && VIDEO_V4L2
233 depends on ARCH_MEDIATEK || COMPILE_TEST
235 select VIDEOBUF2_DMA_CONTIG
236 select V4L2_MEM2MEM_DEV
237 select VIDEO_MEDIATEK_VPU
240 It is a v4l2 driver and present in Mediatek MT8173 SoCs.
241 The driver supports for scaling and color space conversion.
243 To compile this driver as a module, choose M here: the
244 module will be called mtk-mdp.
246 config VIDEO_MEDIATEK_VCODEC
247 tristate "Mediatek Video Codec driver"
248 depends on MTK_IOMMU || COMPILE_TEST
249 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
250 depends on ARCH_MEDIATEK || COMPILE_TEST
251 select VIDEOBUF2_DMA_CONTIG
252 select V4L2_MEM2MEM_DEV
253 select VIDEO_MEDIATEK_VPU
256 Mediatek video codec driver provides HW capability to
257 encode and decode in a range of video formats
258 This driver rely on VPU driver to communicate with VPU.
260 To compile this driver as a module, choose M here: the
261 module will be called mtk-vcodec
263 config VIDEO_MEM2MEM_DEINTERLACE
264 tristate "Deinterlace support"
265 depends on VIDEO_DEV && VIDEO_V4L2 && DMA_ENGINE
267 select VIDEOBUF2_DMA_CONTIG
268 select V4L2_MEM2MEM_DEV
270 Generic deinterlacing V4L2 driver.
272 config VIDEO_SAMSUNG_S5P_G2D
273 tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver"
274 depends on VIDEO_DEV && VIDEO_V4L2
275 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
277 select VIDEOBUF2_DMA_CONTIG
278 select V4L2_MEM2MEM_DEV
281 This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D
282 2d graphics accelerator.
284 config VIDEO_SAMSUNG_S5P_JPEG
285 tristate "Samsung S5P/Exynos3250/Exynos4 JPEG codec driver"
286 depends on VIDEO_DEV && VIDEO_V4L2
287 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
289 select VIDEOBUF2_DMA_CONTIG
290 select V4L2_MEM2MEM_DEV
292 This is a v4l2 driver for Samsung S5P, EXYNOS3250
293 and EXYNOS4 JPEG codec
295 config VIDEO_SAMSUNG_S5P_MFC
296 tristate "Samsung S5P MFC Video Codec"
297 depends on VIDEO_DEV && VIDEO_V4L2
298 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
300 select VIDEOBUF2_DMA_CONTIG
303 MFC 5.1 and 6.x driver for V4L2
305 config VIDEO_MX2_EMMAPRP
306 tristate "MX2 eMMa-PrP support"
307 depends on VIDEO_DEV && VIDEO_V4L2
308 depends on SOC_IMX27 || COMPILE_TEST
310 select VIDEOBUF2_DMA_CONTIG
311 select V4L2_MEM2MEM_DEV
313 MX2X chips have a PrP that can be used to process buffers from
314 memory to memory. Operations include resizing and format
317 config VIDEO_SAMSUNG_EXYNOS_GSC
318 tristate "Samsung Exynos G-Scaler driver"
319 depends on VIDEO_DEV && VIDEO_V4L2
320 depends on ARCH_EXYNOS || COMPILE_TEST
322 select VIDEOBUF2_DMA_CONTIG
323 select V4L2_MEM2MEM_DEV
325 This is a v4l2 driver for Samsung EXYNOS5 SoC G-Scaler.
327 config VIDEO_STI_BDISP
328 tristate "STMicroelectronics BDISP 2D blitter 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 mem2mem driver is a 2D blitter for STMicroelectronics SoC.
338 tristate "STMicroelectronics HVA multi-format video encoder V4L2 driver"
339 depends on VIDEO_DEV && VIDEO_V4L2
341 depends on ARCH_STI || COMPILE_TEST
342 select VIDEOBUF2_DMA_CONTIG
343 select V4L2_MEM2MEM_DEV
345 This V4L2 driver enables HVA (Hardware Video Accelerator) multi-format
346 video encoder of STMicroelectronics SoC, allowing hardware encoding of
347 raw uncompressed formats in various compressed video bitstreams format.
349 To compile this driver as a module, choose M here:
350 the module will be called st-hva.
352 config VIDEO_STI_HVA_DEBUGFS
353 bool "Export STMicroelectronics HVA internals in debugfs"
354 depends on VIDEO_STI_HVA
357 Select this to see information about the internal state and the last
358 operation of STMicroelectronics HVA multi-format video encoder in
361 Choose N unless you know you need this.
363 config VIDEO_STI_DELTA
364 tristate "STMicroelectronics DELTA multi-format video decoder V4L2 driver"
365 depends on VIDEO_DEV && VIDEO_V4L2
366 depends on ARCH_STI || COMPILE_TEST
369 This V4L2 driver enables DELTA multi-format video decoder
370 of STMicroelectronics STiH4xx SoC series allowing hardware
371 decoding of various compressed video bitstream format in
372 raw uncompressed format.
374 Use this option to see the decoders available for such
377 Please notice that the driver will only be built if
378 at least one of the DELTA decoder below is selected.
382 config VIDEO_STI_DELTA_MJPEG
383 bool "STMicroelectronics DELTA MJPEG support"
386 Enables DELTA MJPEG hardware support.
388 To compile this driver as a module, choose M here:
389 the module will be called st-delta.
391 config VIDEO_STI_DELTA_DRIVER
393 depends on VIDEO_STI_DELTA
394 depends on VIDEO_STI_DELTA_MJPEG
395 default VIDEO_STI_DELTA_MJPEG
396 select VIDEOBUF2_DMA_CONTIG
397 select V4L2_MEM2MEM_DEV
400 endif # VIDEO_STI_DELTA
403 tristate "SuperH VEU mem2mem video processing driver"
404 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
405 select VIDEOBUF2_DMA_CONTIG
406 select V4L2_MEM2MEM_DEV
408 Support for the Video Engine Unit (VEU) on SuperH and
411 config VIDEO_RENESAS_FDP1
412 tristate "Renesas Fine Display Processor"
413 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
414 depends on ARCH_SHMOBILE || COMPILE_TEST
415 depends on (!ARCH_RENESAS && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
416 select VIDEOBUF2_DMA_CONTIG
417 select V4L2_MEM2MEM_DEV
419 This is a V4L2 driver for the Renesas Fine Display Processor
420 providing colour space conversion, and de-interlacing features.
422 To compile this driver as a module, choose M here: the module
423 will be called rcar_fdp1.
425 config VIDEO_RENESAS_JPU
426 tristate "Renesas JPEG Processing Unit"
427 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
428 depends on ARCH_RENESAS || COMPILE_TEST
429 select VIDEOBUF2_DMA_CONTIG
430 select V4L2_MEM2MEM_DEV
432 This is a V4L2 driver for the Renesas JPEG Processing Unit.
434 To compile this driver as a module, choose M here: the module
435 will be called rcar_jpu.
437 config VIDEO_RENESAS_FCP
438 tristate "Renesas Frame Compression Processor"
439 depends on ARCH_RENESAS || COMPILE_TEST
442 This is a driver for the Renesas Frame Compression Processor (FCP).
443 The FCP is a companion module of video processing modules in the
444 Renesas R-Car Gen3 SoCs. It handles memory access for the codec,
447 To compile this driver as a module, choose M here: the module
448 will be called rcar-fcp.
450 config VIDEO_RENESAS_VSP1
451 tristate "Renesas VSP1 Video Processing Engine"
452 depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && HAS_DMA
453 depends on (ARCH_RENESAS && OF) || COMPILE_TEST
454 depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
455 select VIDEOBUF2_DMA_CONTIG
456 select VIDEOBUF2_VMALLOC
458 This is a V4L2 driver for the Renesas VSP1 video processing engine.
460 To compile this driver as a module, choose M here: the module
464 tristate "TI VPE (Video Processing Engine) driver"
465 depends on VIDEO_DEV && VIDEO_V4L2
466 depends on SOC_DRA7XX || COMPILE_TEST
468 select VIDEOBUF2_DMA_CONTIG
469 select V4L2_MEM2MEM_DEV
470 select VIDEO_TI_VPDMA
475 Support for the TI VPE(Video Processing Engine) block
478 config VIDEO_TI_VPE_DEBUG
479 bool "VPE debug messages"
480 depends on VIDEO_TI_VPE
482 Enable debug messages on VPE driver.
484 config VIDEO_QCOM_VENUS
485 tristate "Qualcomm Venus V4L2 encoder/decoder driver"
486 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
487 depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
488 select QCOM_MDT_LOADER if ARCH_QCOM
489 select QCOM_SCM if ARCH_QCOM
490 select VIDEOBUF2_DMA_SG
491 select V4L2_MEM2MEM_DEV
493 This is a V4L2 driver for Qualcomm Venus video accelerator
494 hardware. It accelerates encoding and decoding operations
495 on various Qualcomm SoCs.
496 To compile this driver as a module choose m here.
498 endif # V4L_MEM2MEM_DRIVERS
500 # TI VIDEO PORT Helper Modules
501 # These will be selected by VPE and VIP
502 config VIDEO_TI_VPDMA
511 menuconfig V4L_TEST_DRIVERS
512 bool "Media test drivers"
513 depends on MEDIA_CAMERA_SUPPORT
517 source "drivers/media/platform/vimc/Kconfig"
519 source "drivers/media/platform/vivid/Kconfig"
522 tristate "Virtual Memory-to-Memory Driver"
523 depends on VIDEO_DEV && VIDEO_V4L2
524 select VIDEOBUF2_VMALLOC
525 select V4L2_MEM2MEM_DEV
528 This is a virtual test device for the memory-to-memory driver
530 endif #V4L_TEST_DRIVERS
532 menuconfig DVB_PLATFORM_DRIVERS
533 bool "DVB platform devices"
534 depends on MEDIA_DIGITAL_TV_SUPPORT
537 Say Y here to enable support for platform-specific Digital TV drivers.
539 if DVB_PLATFORM_DRIVERS
540 source "drivers/media/platform/sti/c8sectpfe/Kconfig"
541 endif #DVB_PLATFORM_DRIVERS
543 menuconfig CEC_PLATFORM_DRIVERS
544 bool "CEC platform devices"
545 depends on MEDIA_CEC_SUPPORT
547 if CEC_PLATFORM_DRIVERS
549 config VIDEO_MESON_AO_CEC
550 tristate "Amlogic Meson AO CEC driver"
551 depends on ARCH_MESON || COMPILE_TEST
555 This is a driver for Amlogic Meson SoCs AO CEC interface. It uses the
556 generic CEC framework interface.
557 CEC bus is present in the HDMI connector and enables communication
558 between compatible devices.
560 config VIDEO_SAMSUNG_S5P_CEC
561 tristate "Samsung S5P CEC driver"
562 depends on PLAT_S5P || ARCH_EXYNOS || COMPILE_TEST
566 This is a driver for Samsung S5P HDMI CEC interface. It uses the
567 generic CEC framework interface.
568 CEC bus is present in the HDMI connector and enables communication
569 between compatible devices.
571 config VIDEO_STI_HDMI_CEC
572 tristate "STMicroelectronics STiH4xx HDMI CEC driver"
573 depends on ARCH_STI || COMPILE_TEST
577 This is a driver for STIH4xx HDMI CEC interface. It uses the
578 generic CEC framework interface.
579 CEC bus is present in the HDMI connector and enables communication
580 between compatible devices.
582 config VIDEO_STM32_HDMI_CEC
583 tristate "STMicroelectronics STM32 HDMI CEC driver"
584 depends on ARCH_STM32 || COMPILE_TEST
589 This is a driver for STM32 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 endif #CEC_PLATFORM_DRIVERS
596 menuconfig SDR_PLATFORM_DRIVERS
597 bool "SDR platform devices"
598 depends on MEDIA_SDR_SUPPORT
601 Say Y here to enable support for platform-specific SDR Drivers.
603 if SDR_PLATFORM_DRIVERS
605 config VIDEO_RCAR_DRIF
606 tristate "Renesas Digitial Radio Interface (DRIF)"
607 depends on VIDEO_V4L2 && HAS_DMA
608 depends on ARCH_RENESAS || COMPILE_TEST
609 select VIDEOBUF2_VMALLOC
611 Say Y if you want to enable R-Car Gen3 DRIF support. DRIF is Digital
612 Radio Interface that interfaces with an RF front end chip. It is a
613 receiver of digital data which uses DMA to transfer received data to
614 a configured location for an application to use.
616 To compile this driver as a module, choose M here; the module
617 will be called rcar_drif.
619 endif # SDR_PLATFORM_DRIVERS