1# 2# Platform drivers 3# Most drivers here are currently for webcam support 4 5menuconfig V4L_PLATFORM_DRIVERS 6 bool "V4L platform devices" 7 depends on MEDIA_CAMERA_SUPPORT 8 default n 9 ---help--- 10 Say Y here to enable support for platform-specific V4L drivers. 11 12if V4L_PLATFORM_DRIVERS 13 14source "drivers/media/platform/marvell-ccic/Kconfig" 15 16config VIDEO_VIA_CAMERA 17 tristate "VIAFB camera controller support" 18 depends on FB_VIA 19 select VIDEOBUF_DMA_SG 20 select VIDEO_OV7670 21 help 22 Driver support for the integrated camera controller in VIA 23 Chrome9 chipsets. Currently only tested on OLPC xo-1.5 systems 24 with ov7670 sensors. 25 26# 27# Platform multimedia device configuration 28# 29 30source "drivers/media/platform/davinci/Kconfig" 31 32source "drivers/media/platform/omap/Kconfig" 33 34source "drivers/media/platform/blackfin/Kconfig" 35 36config VIDEO_SH_VOU 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 42 help 43 Support for the Video Output Unit (VOU) on SuperH SoCs. 44 45config VIDEO_VIU 46 tristate "Freescale VIU Video Driver" 47 depends on VIDEO_V4L2 && PPC_MPC512x 48 select VIDEOBUF_DMA_CONTIG 49 default y 50 ---help--- 51 Support for Freescale VIU video driver. This device captures 52 video data, or overlays video on DIU frame buffer. 53 54 Say Y here if you want to enable VIU device on MPC5121e Rev2+. 55 In doubt, say N. 56 57config VIDEO_M32R_AR 58 tristate "AR devices" 59 depends on VIDEO_V4L2 60 depends on M32R || COMPILE_TEST 61 ---help--- 62 This is a video4linux driver for the Renesas AR (Artificial Retina) 63 camera module. 64 65config VIDEO_M32R_AR_M64278 66 tristate "AR device with color module M64278(VGA)" 67 depends on PLAT_M32700UT 68 select VIDEO_M32R_AR 69 ---help--- 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. 73 74 To compile this driver as a module, choose M here: the 75 module will be called arv. 76 77config VIDEO_MUX 78 tristate "Video Multiplexer" 79 select MULTIPLEXER 80 depends on VIDEO_V4L2 && OF && VIDEO_V4L2_SUBDEV_API && MEDIA_CONTROLLER 81 select REGMAP 82 help 83 This driver provides support for N:1 video bus multiplexers. 84 85config VIDEO_OMAP3 86 tristate "OMAP 3 Camera support" 87 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3 88 depends on HAS_DMA && OF 89 depends on OMAP_IOMMU 90 select ARM_DMA_USE_IOMMU 91 select VIDEOBUF2_DMA_CONTIG 92 select MFD_SYSCON 93 select V4L2_FWNODE 94 ---help--- 95 Driver for an OMAP 3 camera controller. 96 97config VIDEO_OMAP3_DEBUG 98 bool "OMAP 3 Camera debug messages" 99 depends on VIDEO_OMAP3 100 ---help--- 101 Enable debug messages on OMAP 3 camera controller driver. 102 103config VIDEO_PXA27x 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 108 select SG_SPLIT 109 select V4L2_FWNODE 110 ---help--- 111 This is a v4l2 driver for the PXA27x Quick Capture Interface 112 113config VIDEO_S3C_CAMIF 114 tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver" 115 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API 116 depends on PM 117 depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST 118 depends on HAS_DMA 119 select VIDEOBUF2_DMA_CONTIG 120 ---help--- 121 This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera 122 host interface (CAMIF). 123 124 To compile this driver as a module, choose M here: the module 125 will be called s3c-camif. 126 127config VIDEO_STM32_DCMI 128 tristate "STM32 Digital Camera Memory Interface (DCMI) support" 129 depends on VIDEO_V4L2 && OF && HAS_DMA 130 depends on ARCH_STM32 || COMPILE_TEST 131 select VIDEOBUF2_DMA_CONTIG 132 select V4L2_FWNODE 133 ---help--- 134 This module makes the STM32 Digital Camera Memory Interface (DCMI) 135 available as a v4l2 device. 136 137 To compile this driver as a module, choose M here: the module 138 will be called stm32-dcmi. 139 140source "drivers/media/platform/soc_camera/Kconfig" 141source "drivers/media/platform/exynos4-is/Kconfig" 142source "drivers/media/platform/am437x/Kconfig" 143source "drivers/media/platform/xilinx/Kconfig" 144source "drivers/media/platform/rcar-vin/Kconfig" 145source "drivers/media/platform/atmel/Kconfig" 146 147config VIDEO_TI_CAL 148 tristate "TI CAL (Camera Adaptation Layer) driver" 149 depends on VIDEO_DEV && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API 150 depends on SOC_DRA7XX || COMPILE_TEST 151 depends on HAS_DMA 152 select VIDEOBUF2_DMA_CONTIG 153 select V4L2_FWNODE 154 default n 155 ---help--- 156 Support for the TI CAL (Camera Adaptation Layer) block 157 found on DRA72X SoC. 158 In TI Technical Reference Manual this module is referred as 159 Camera Interface Subsystem (CAMSS). 160 161endif # V4L_PLATFORM_DRIVERS 162 163menuconfig V4L_MEM2MEM_DRIVERS 164 bool "Memory-to-memory multimedia devices" 165 depends on VIDEO_V4L2 166 depends on MEDIA_CAMERA_SUPPORT 167 default n 168 ---help--- 169 Say Y here to enable selecting drivers for V4L devices that 170 use system memory for both source and destination buffers, as opposed 171 to capture and output drivers, which use memory buffers for just 172 one of those. 173 174if V4L_MEM2MEM_DRIVERS 175 176config VIDEO_CODA 177 tristate "Chips&Media Coda multi-standard codec IP" 178 depends on VIDEO_DEV && VIDEO_V4L2 && (ARCH_MXC || COMPILE_TEST) 179 depends on HAS_DMA 180 select SRAM 181 select VIDEOBUF2_DMA_CONTIG 182 select VIDEOBUF2_VMALLOC 183 select V4L2_MEM2MEM_DEV 184 select GENERIC_ALLOCATOR 185 ---help--- 186 Coda is a range of video codec IPs that supports 187 H.264, MPEG-4, and other video formats. 188 189config VIDEO_IMX_VDOA 190 def_tristate VIDEO_CODA if SOC_IMX6Q || COMPILE_TEST 191 192config VIDEO_MEDIATEK_JPEG 193 tristate "Mediatek JPEG Codec driver" 194 depends on MTK_IOMMU_V1 || COMPILE_TEST 195 depends on VIDEO_DEV && VIDEO_V4L2 196 depends on ARCH_MEDIATEK || COMPILE_TEST 197 depends on HAS_DMA 198 select VIDEOBUF2_DMA_CONTIG 199 select V4L2_MEM2MEM_DEV 200 ---help--- 201 Mediatek jpeg codec driver provides HW capability to decode 202 JPEG format 203 204 To compile this driver as a module, choose M here: the 205 module will be called mtk-jpeg 206 207config VIDEO_MEDIATEK_VPU 208 tristate "Mediatek Video Processor Unit" 209 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA 210 depends on ARCH_MEDIATEK || COMPILE_TEST 211 ---help--- 212 This driver provides downloading VPU firmware and 213 communicating with VPU. This driver for hw video 214 codec embedded in Mediatek's MT8173 SOCs. It is able 215 to handle video decoding/encoding in a range of formats. 216 217 To compile this driver as a module, choose M here: the 218 module will be called mtk-vpu. 219 220config VIDEO_MEDIATEK_MDP 221 tristate "Mediatek MDP driver" 222 depends on MTK_IOMMU || COMPILE_TEST 223 depends on VIDEO_DEV && VIDEO_V4L2 224 depends on ARCH_MEDIATEK || COMPILE_TEST 225 depends on HAS_DMA 226 select VIDEOBUF2_DMA_CONTIG 227 select V4L2_MEM2MEM_DEV 228 select VIDEO_MEDIATEK_VPU 229 default n 230 ---help--- 231 It is a v4l2 driver and present in Mediatek MT8173 SoCs. 232 The driver supports for scaling and color space conversion. 233 234 To compile this driver as a module, choose M here: the 235 module will be called mtk-mdp. 236 237config VIDEO_MEDIATEK_VCODEC 238 tristate "Mediatek Video Codec driver" 239 depends on MTK_IOMMU || COMPILE_TEST 240 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA 241 depends on ARCH_MEDIATEK || COMPILE_TEST 242 select VIDEOBUF2_DMA_CONTIG 243 select V4L2_MEM2MEM_DEV 244 select VIDEO_MEDIATEK_VPU 245 default n 246 ---help--- 247 Mediatek video codec driver provides HW capability to 248 encode and decode in a range of video formats 249 This driver rely on VPU driver to communicate with VPU. 250 251 To compile this driver as a module, choose M here: the 252 module will be called mtk-vcodec 253 254config VIDEO_MEM2MEM_DEINTERLACE 255 tristate "Deinterlace support" 256 depends on VIDEO_DEV && VIDEO_V4L2 && DMA_ENGINE 257 depends on HAS_DMA 258 select VIDEOBUF2_DMA_CONTIG 259 select V4L2_MEM2MEM_DEV 260 help 261 Generic deinterlacing V4L2 driver. 262 263config VIDEO_SAMSUNG_S5P_G2D 264 tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver" 265 depends on VIDEO_DEV && VIDEO_V4L2 266 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST 267 depends on HAS_DMA 268 select VIDEOBUF2_DMA_CONTIG 269 select V4L2_MEM2MEM_DEV 270 default n 271 ---help--- 272 This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D 273 2d graphics accelerator. 274 275config VIDEO_SAMSUNG_S5P_JPEG 276 tristate "Samsung S5P/Exynos3250/Exynos4 JPEG codec driver" 277 depends on VIDEO_DEV && VIDEO_V4L2 278 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST 279 depends on HAS_DMA 280 select VIDEOBUF2_DMA_CONTIG 281 select V4L2_MEM2MEM_DEV 282 ---help--- 283 This is a v4l2 driver for Samsung S5P, EXYNOS3250 284 and EXYNOS4 JPEG codec 285 286config VIDEO_SAMSUNG_S5P_MFC 287 tristate "Samsung S5P MFC Video Codec" 288 depends on VIDEO_DEV && VIDEO_V4L2 289 depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST 290 depends on HAS_DMA 291 select VIDEOBUF2_DMA_CONTIG 292 default n 293 help 294 MFC 5.1 and 6.x driver for V4L2 295 296config VIDEO_MX2_EMMAPRP 297 tristate "MX2 eMMa-PrP support" 298 depends on VIDEO_DEV && VIDEO_V4L2 299 depends on SOC_IMX27 || COMPILE_TEST 300 depends on HAS_DMA 301 select VIDEOBUF2_DMA_CONTIG 302 select V4L2_MEM2MEM_DEV 303 help 304 MX2X chips have a PrP that can be used to process buffers from 305 memory to memory. Operations include resizing and format 306 conversion. 307 308config VIDEO_SAMSUNG_EXYNOS_GSC 309 tristate "Samsung Exynos G-Scaler driver" 310 depends on VIDEO_DEV && VIDEO_V4L2 311 depends on ARCH_EXYNOS || COMPILE_TEST 312 depends on HAS_DMA 313 select VIDEOBUF2_DMA_CONTIG 314 select V4L2_MEM2MEM_DEV 315 help 316 This is a v4l2 driver for Samsung EXYNOS5 SoC G-Scaler. 317 318config VIDEO_STI_BDISP 319 tristate "STMicroelectronics BDISP 2D blitter driver" 320 depends on VIDEO_DEV && VIDEO_V4L2 321 depends on HAS_DMA 322 depends on ARCH_STI || COMPILE_TEST 323 select VIDEOBUF2_DMA_CONTIG 324 select V4L2_MEM2MEM_DEV 325 help 326 This v4l2 mem2mem driver is a 2D blitter for STMicroelectronics SoC. 327 328config VIDEO_STI_HVA 329 tristate "STMicroelectronics HVA multi-format video encoder V4L2 driver" 330 depends on VIDEO_DEV && VIDEO_V4L2 331 depends on HAS_DMA 332 depends on ARCH_STI || COMPILE_TEST 333 select VIDEOBUF2_DMA_CONTIG 334 select V4L2_MEM2MEM_DEV 335 help 336 This V4L2 driver enables HVA (Hardware Video Accelerator) multi-format 337 video encoder of STMicroelectronics SoC, allowing hardware encoding of 338 raw uncompressed formats in various compressed video bitstreams format. 339 340 To compile this driver as a module, choose M here: 341 the module will be called st-hva. 342 343config VIDEO_STI_HVA_DEBUGFS 344 bool "Export STMicroelectronics HVA internals in debugfs" 345 depends on VIDEO_STI_HVA 346 depends on DEBUG_FS 347 help 348 Select this to see information about the internal state and the last 349 operation of STMicroelectronics HVA multi-format video encoder in 350 debugfs. 351 352 Choose N unless you know you need this. 353 354config VIDEO_STI_DELTA 355 tristate "STMicroelectronics DELTA multi-format video decoder V4L2 driver" 356 depends on VIDEO_DEV && VIDEO_V4L2 357 depends on ARCH_STI || COMPILE_TEST 358 depends on HAS_DMA 359 help 360 This V4L2 driver enables DELTA multi-format video decoder 361 of STMicroelectronics STiH4xx SoC series allowing hardware 362 decoding of various compressed video bitstream format in 363 raw uncompressed format. 364 365 Use this option to see the decoders available for such 366 hardware. 367 368 Please notice that the driver will only be built if 369 at least one of the DELTA decoder below is selected. 370 371if VIDEO_STI_DELTA 372 373config VIDEO_STI_DELTA_MJPEG 374 bool "STMicroelectronics DELTA MJPEG support" 375 default y 376 help 377 Enables DELTA MJPEG hardware support. 378 379 To compile this driver as a module, choose M here: 380 the module will be called st-delta. 381 382config VIDEO_STI_DELTA_DRIVER 383 tristate 384 depends on VIDEO_STI_DELTA 385 depends on VIDEO_STI_DELTA_MJPEG 386 default VIDEO_STI_DELTA_MJPEG 387 select VIDEOBUF2_DMA_CONTIG 388 select V4L2_MEM2MEM_DEV 389 select RPMSG 390 391endif # VIDEO_STI_DELTA 392 393config VIDEO_SH_VEU 394 tristate "SuperH VEU mem2mem video processing driver" 395 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA 396 select VIDEOBUF2_DMA_CONTIG 397 select V4L2_MEM2MEM_DEV 398 help 399 Support for the Video Engine Unit (VEU) on SuperH and 400 SH-Mobile SoCs. 401 402config VIDEO_RENESAS_FDP1 403 tristate "Renesas Fine Display Processor" 404 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA 405 depends on ARCH_SHMOBILE || COMPILE_TEST 406 depends on (!ARCH_RENESAS && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP 407 select VIDEOBUF2_DMA_CONTIG 408 select V4L2_MEM2MEM_DEV 409 ---help--- 410 This is a V4L2 driver for the Renesas Fine Display Processor 411 providing colour space conversion, and de-interlacing features. 412 413 To compile this driver as a module, choose M here: the module 414 will be called rcar_fdp1. 415 416config VIDEO_RENESAS_JPU 417 tristate "Renesas JPEG Processing Unit" 418 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA 419 depends on ARCH_RENESAS || COMPILE_TEST 420 select VIDEOBUF2_DMA_CONTIG 421 select V4L2_MEM2MEM_DEV 422 ---help--- 423 This is a V4L2 driver for the Renesas JPEG Processing Unit. 424 425 To compile this driver as a module, choose M here: the module 426 will be called rcar_jpu. 427 428config VIDEO_RENESAS_FCP 429 tristate "Renesas Frame Compression Processor" 430 depends on ARCH_RENESAS || COMPILE_TEST 431 depends on OF 432 ---help--- 433 This is a driver for the Renesas Frame Compression Processor (FCP). 434 The FCP is a companion module of video processing modules in the 435 Renesas R-Car Gen3 SoCs. It handles memory access for the codec, 436 VSP and FDP modules. 437 438 To compile this driver as a module, choose M here: the module 439 will be called rcar-fcp. 440 441config VIDEO_RENESAS_VSP1 442 tristate "Renesas VSP1 Video Processing Engine" 443 depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && HAS_DMA 444 depends on (ARCH_RENESAS && OF) || COMPILE_TEST 445 depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP 446 select VIDEOBUF2_DMA_CONTIG 447 select VIDEOBUF2_VMALLOC 448 ---help--- 449 This is a V4L2 driver for the Renesas VSP1 video processing engine. 450 451 To compile this driver as a module, choose M here: the module 452 will be called vsp1. 453 454config VIDEO_TI_VPE 455 tristate "TI VPE (Video Processing Engine) driver" 456 depends on VIDEO_DEV && VIDEO_V4L2 457 depends on SOC_DRA7XX || COMPILE_TEST 458 depends on HAS_DMA 459 select VIDEOBUF2_DMA_CONTIG 460 select V4L2_MEM2MEM_DEV 461 select VIDEO_TI_VPDMA 462 select VIDEO_TI_SC 463 select VIDEO_TI_CSC 464 default n 465 ---help--- 466 Support for the TI VPE(Video Processing Engine) block 467 found on DRA7XX SoC. 468 469config VIDEO_TI_VPE_DEBUG 470 bool "VPE debug messages" 471 depends on VIDEO_TI_VPE 472 ---help--- 473 Enable debug messages on VPE driver. 474 475config VIDEO_QCOM_VENUS 476 tristate "Qualcomm Venus V4L2 encoder/decoder driver" 477 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA 478 depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST 479 select QCOM_MDT_LOADER if ARCH_QCOM 480 select QCOM_SCM if ARCH_QCOM 481 select VIDEOBUF2_DMA_SG 482 select V4L2_MEM2MEM_DEV 483 ---help--- 484 This is a V4L2 driver for Qualcomm Venus video accelerator 485 hardware. It accelerates encoding and decoding operations 486 on various Qualcomm SoCs. 487 To compile this driver as a module choose m here. 488 489endif # V4L_MEM2MEM_DRIVERS 490 491# TI VIDEO PORT Helper Modules 492# These will be selected by VPE and VIP 493config VIDEO_TI_VPDMA 494 tristate 495 496config VIDEO_TI_SC 497 tristate 498 499config VIDEO_TI_CSC 500 tristate 501 502menuconfig V4L_TEST_DRIVERS 503 bool "Media test drivers" 504 depends on MEDIA_CAMERA_SUPPORT 505 506if V4L_TEST_DRIVERS 507 508source "drivers/media/platform/vimc/Kconfig" 509 510source "drivers/media/platform/vivid/Kconfig" 511 512config VIDEO_VIM2M 513 tristate "Virtual Memory-to-Memory Driver" 514 depends on VIDEO_DEV && VIDEO_V4L2 515 select VIDEOBUF2_VMALLOC 516 select V4L2_MEM2MEM_DEV 517 default n 518 ---help--- 519 This is a virtual test device for the memory-to-memory driver 520 framework. 521endif #V4L_TEST_DRIVERS 522 523menuconfig DVB_PLATFORM_DRIVERS 524 bool "DVB platform devices" 525 depends on MEDIA_DIGITAL_TV_SUPPORT 526 default n 527 ---help--- 528 Say Y here to enable support for platform-specific Digital TV drivers. 529 530if DVB_PLATFORM_DRIVERS 531source "drivers/media/platform/sti/c8sectpfe/Kconfig" 532endif #DVB_PLATFORM_DRIVERS 533 534menuconfig CEC_PLATFORM_DRIVERS 535 bool "CEC platform devices" 536 depends on MEDIA_CEC_SUPPORT 537 538if CEC_PLATFORM_DRIVERS 539 540config VIDEO_SAMSUNG_S5P_CEC 541 tristate "Samsung S5P CEC driver" 542 depends on PLAT_S5P || ARCH_EXYNOS || COMPILE_TEST 543 select CEC_CORE 544 select CEC_NOTIFIER 545 ---help--- 546 This is a driver for Samsung S5P HDMI CEC interface. It uses the 547 generic CEC framework interface. 548 CEC bus is present in the HDMI connector and enables communication 549 between compatible devices. 550 551config VIDEO_STI_HDMI_CEC 552 tristate "STMicroelectronics STiH4xx HDMI CEC driver" 553 depends on ARCH_STI || COMPILE_TEST 554 select CEC_CORE 555 select CEC_NOTIFIER 556 ---help--- 557 This is a driver for STIH4xx HDMI CEC interface. It uses the 558 generic CEC framework interface. 559 CEC bus is present in the HDMI connector and enables communication 560 between compatible devices. 561 562config VIDEO_STM32_HDMI_CEC 563 tristate "STMicroelectronics STM32 HDMI CEC driver" 564 depends on ARCH_STM32 || COMPILE_TEST 565 select REGMAP 566 select REGMAP_MMIO 567 select CEC_CORE 568 ---help--- 569 This is a driver for STM32 interface. It uses the 570 generic CEC framework interface. 571 CEC bus is present in the HDMI connector and enables communication 572 between compatible devices. 573 574endif #CEC_PLATFORM_DRIVERS 575 576menuconfig SDR_PLATFORM_DRIVERS 577 bool "SDR platform devices" 578 depends on MEDIA_SDR_SUPPORT 579 default n 580 ---help--- 581 Say Y here to enable support for platform-specific SDR Drivers. 582 583if SDR_PLATFORM_DRIVERS 584 585config VIDEO_RCAR_DRIF 586 tristate "Renesas Digitial Radio Interface (DRIF)" 587 depends on VIDEO_V4L2 && HAS_DMA 588 depends on ARCH_RENESAS || COMPILE_TEST 589 select VIDEOBUF2_VMALLOC 590 ---help--- 591 Say Y if you want to enable R-Car Gen3 DRIF support. DRIF is Digital 592 Radio Interface that interfaces with an RF front end chip. It is a 593 receiver of digital data which uses DMA to transfer received data to 594 a configured location for an application to use. 595 596 To compile this driver as a module, choose M here; the module 597 will be called rcar_drif. 598 599endif # SDR_PLATFORM_DRIVERS 600