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 depends on OF && VIDEO_V4L2_SUBDEV_API && MEDIA_CONTROLLER 80 select REGMAP 81 help 82 This driver provides support for N:1 video bus multiplexers. 83 84config VIDEO_OMAP3 85 tristate "OMAP 3 Camera support" 86 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3 87 depends on HAS_DMA && OF 88 depends on OMAP_IOMMU 89 select ARM_DMA_USE_IOMMU 90 select VIDEOBUF2_DMA_CONTIG 91 select MFD_SYSCON 92 select V4L2_FWNODE 93 ---help--- 94 Driver for an OMAP 3 camera controller. 95 96config VIDEO_OMAP3_DEBUG 97 bool "OMAP 3 Camera debug messages" 98 depends on VIDEO_OMAP3 99 ---help--- 100 Enable debug messages on OMAP 3 camera controller driver. 101 102config VIDEO_PXA27x 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 107 select SG_SPLIT 108 select V4L2_FWNODE 109 ---help--- 110 This is a v4l2 driver for the PXA27x Quick Capture Interface 111 112config VIDEO_S3C_CAMIF 113 tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver" 114 depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API 115 depends on PM 116 depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST 117 depends on HAS_DMA 118 select VIDEOBUF2_DMA_CONTIG 119 ---help--- 120 This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera 121 host interface (CAMIF). 122 123 To compile this driver as a module, choose M here: the module 124 will be called s3c-camif. 125 126config 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 131 select V4L2_FWNODE 132 ---help--- 133 This module makes the STM32 Digital Camera Memory Interface (DCMI) 134 available as a v4l2 device. 135 136 To compile this driver as a module, choose M here: the module 137 will be called stm32-dcmi. 138 139source "drivers/media/platform/soc_camera/Kconfig" 140source "drivers/media/platform/exynos4-is/Kconfig" 141source "drivers/media/platform/am437x/Kconfig" 142source "drivers/media/platform/xilinx/Kconfig" 143source "drivers/media/platform/rcar-vin/Kconfig" 144source "drivers/media/platform/atmel/Kconfig" 145 146config VIDEO_TI_CAL 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 150 depends on HAS_DMA 151 select VIDEOBUF2_DMA_CONTIG 152 select V4L2_FWNODE 153 default n 154 ---help--- 155 Support for the TI CAL (Camera Adaptation Layer) block 156 found on DRA72X SoC. 157 In TI Technical Reference Manual this module is referred as 158 Camera Interface Subsystem (CAMSS). 159 160endif # V4L_PLATFORM_DRIVERS 161 162menuconfig V4L_MEM2MEM_DRIVERS 163 bool "Memory-to-memory multimedia devices" 164 depends on VIDEO_V4L2 165 depends on MEDIA_CAMERA_SUPPORT 166 default n 167 ---help--- 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 171 one of those. 172 173if V4L_MEM2MEM_DRIVERS 174 175config VIDEO_CODA 176 tristate "Chips&Media Coda multi-standard codec IP" 177 depends on VIDEO_DEV && VIDEO_V4L2 && (ARCH_MXC || COMPILE_TEST) 178 depends on HAS_DMA 179 select SRAM 180 select VIDEOBUF2_DMA_CONTIG 181 select VIDEOBUF2_VMALLOC 182 select V4L2_MEM2MEM_DEV 183 select GENERIC_ALLOCATOR 184 ---help--- 185 Coda is a range of video codec IPs that supports 186 H.264, MPEG-4, and other video formats. 187 188config VIDEO_IMX_VDOA 189 def_tristate VIDEO_CODA if SOC_IMX6Q || COMPILE_TEST 190 191config 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 196 depends on HAS_DMA 197 select VIDEOBUF2_DMA_CONTIG 198 select V4L2_MEM2MEM_DEV 199 ---help--- 200 Mediatek jpeg codec driver provides HW capability to decode 201 JPEG format 202 203 To compile this driver as a module, choose M here: the 204 module will be called mtk-jpeg 205 206config 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 210 ---help--- 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. 215 216 To compile this driver as a module, choose M here: the 217 module will be called mtk-vpu. 218 219config 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 224 depends on HAS_DMA 225 select VIDEOBUF2_DMA_CONTIG 226 select V4L2_MEM2MEM_DEV 227 select VIDEO_MEDIATEK_VPU 228 default n 229 ---help--- 230 It is a v4l2 driver and present in Mediatek MT8173 SoCs. 231 The driver supports for scaling and color space conversion. 232 233 To compile this driver as a module, choose M here: the 234 module will be called mtk-mdp. 235 236config 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 244 default n 245 ---help--- 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. 249 250 To compile this driver as a module, choose M here: the 251 module will be called mtk-vcodec 252 253config VIDEO_MEM2MEM_DEINTERLACE 254 tristate "Deinterlace support" 255 depends on VIDEO_DEV && VIDEO_V4L2 && DMA_ENGINE 256 depends on HAS_DMA 257 select VIDEOBUF2_DMA_CONTIG 258 select V4L2_MEM2MEM_DEV 259 help 260 Generic deinterlacing V4L2 driver. 261 262config 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 266 depends on HAS_DMA 267 select VIDEOBUF2_DMA_CONTIG 268 select V4L2_MEM2MEM_DEV 269 default n 270 ---help--- 271 This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D 272 2d graphics accelerator. 273 274config 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 278 depends on HAS_DMA 279 select VIDEOBUF2_DMA_CONTIG 280 select V4L2_MEM2MEM_DEV 281 ---help--- 282 This is a v4l2 driver for Samsung S5P, EXYNOS3250 283 and EXYNOS4 JPEG codec 284 285config 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 289 depends on HAS_DMA 290 select VIDEOBUF2_DMA_CONTIG 291 default n 292 help 293 MFC 5.1 and 6.x driver for V4L2 294 295config VIDEO_MX2_EMMAPRP 296 tristate "MX2 eMMa-PrP support" 297 depends on VIDEO_DEV && VIDEO_V4L2 298 depends on SOC_IMX27 || COMPILE_TEST 299 depends on HAS_DMA 300 select VIDEOBUF2_DMA_CONTIG 301 select V4L2_MEM2MEM_DEV 302 help 303 MX2X chips have a PrP that can be used to process buffers from 304 memory to memory. Operations include resizing and format 305 conversion. 306 307config 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 311 depends on HAS_DMA 312 select VIDEOBUF2_DMA_CONTIG 313 select V4L2_MEM2MEM_DEV 314 help 315 This is a v4l2 driver for Samsung EXYNOS5 SoC G-Scaler. 316 317config VIDEO_STI_BDISP 318 tristate "STMicroelectronics BDISP 2D blitter driver" 319 depends on VIDEO_DEV && VIDEO_V4L2 320 depends on HAS_DMA 321 depends on ARCH_STI || COMPILE_TEST 322 select VIDEOBUF2_DMA_CONTIG 323 select V4L2_MEM2MEM_DEV 324 help 325 This v4l2 mem2mem driver is a 2D blitter for STMicroelectronics SoC. 326 327config VIDEO_STI_HVA 328 tristate "STMicroelectronics HVA multi-format video encoder V4L2 driver" 329 depends on VIDEO_DEV && VIDEO_V4L2 330 depends on HAS_DMA 331 depends on ARCH_STI || COMPILE_TEST 332 select VIDEOBUF2_DMA_CONTIG 333 select V4L2_MEM2MEM_DEV 334 help 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. 338 339 To compile this driver as a module, choose M here: 340 the module will be called st-hva. 341 342config VIDEO_STI_HVA_DEBUGFS 343 bool "Export STMicroelectronics HVA internals in debugfs" 344 depends on VIDEO_STI_HVA 345 depends on DEBUG_FS 346 help 347 Select this to see information about the internal state and the last 348 operation of STMicroelectronics HVA multi-format video encoder in 349 debugfs. 350 351 Choose N unless you know you need this. 352 353config 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 357 depends on HAS_DMA 358 help 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. 363 364 Use this option to see the decoders available for such 365 hardware. 366 367 Please notice that the driver will only be built if 368 at least one of the DELTA decoder below is selected. 369 370if VIDEO_STI_DELTA 371 372config VIDEO_STI_DELTA_MJPEG 373 bool "STMicroelectronics DELTA MJPEG support" 374 default y 375 help 376 Enables DELTA MJPEG hardware support. 377 378 To compile this driver as a module, choose M here: 379 the module will be called st-delta. 380 381config VIDEO_STI_DELTA_DRIVER 382 tristate 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 388 select RPMSG 389 390endif # VIDEO_STI_DELTA 391 392config VIDEO_SH_VEU 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 397 help 398 Support for the Video Engine Unit (VEU) on SuperH and 399 SH-Mobile SoCs. 400 401config 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 408 ---help--- 409 This is a V4L2 driver for the Renesas Fine Display Processor 410 providing colour space conversion, and de-interlacing features. 411 412 To compile this driver as a module, choose M here: the module 413 will be called rcar_fdp1. 414 415config 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 421 ---help--- 422 This is a V4L2 driver for the Renesas JPEG Processing Unit. 423 424 To compile this driver as a module, choose M here: the module 425 will be called rcar_jpu. 426 427config VIDEO_RENESAS_FCP 428 tristate "Renesas Frame Compression Processor" 429 depends on ARCH_RENESAS || COMPILE_TEST 430 depends on OF 431 ---help--- 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, 435 VSP and FDP modules. 436 437 To compile this driver as a module, choose M here: the module 438 will be called rcar-fcp. 439 440config 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 447 ---help--- 448 This is a V4L2 driver for the Renesas VSP1 video processing engine. 449 450 To compile this driver as a module, choose M here: the module 451 will be called vsp1. 452 453config VIDEO_TI_VPE 454 tristate "TI VPE (Video Processing Engine) driver" 455 depends on VIDEO_DEV && VIDEO_V4L2 456 depends on SOC_DRA7XX || COMPILE_TEST 457 depends on HAS_DMA 458 select VIDEOBUF2_DMA_CONTIG 459 select V4L2_MEM2MEM_DEV 460 select VIDEO_TI_VPDMA 461 select VIDEO_TI_SC 462 select VIDEO_TI_CSC 463 default n 464 ---help--- 465 Support for the TI VPE(Video Processing Engine) block 466 found on DRA7XX SoC. 467 468config VIDEO_TI_VPE_DEBUG 469 bool "VPE debug messages" 470 depends on VIDEO_TI_VPE 471 ---help--- 472 Enable debug messages on VPE driver. 473 474config 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 ARCH_QCOM 479 select QCOM_SCM if ARCH_QCOM 480 select VIDEOBUF2_DMA_SG 481 select V4L2_MEM2MEM_DEV 482 ---help--- 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. 487 488endif # V4L_MEM2MEM_DRIVERS 489 490# TI VIDEO PORT Helper Modules 491# These will be selected by VPE and VIP 492config VIDEO_TI_VPDMA 493 tristate 494 495config VIDEO_TI_SC 496 tristate 497 498config VIDEO_TI_CSC 499 tristate 500 501menuconfig V4L_TEST_DRIVERS 502 bool "Media test drivers" 503 depends on MEDIA_CAMERA_SUPPORT 504 505if V4L_TEST_DRIVERS 506 507source "drivers/media/platform/vimc/Kconfig" 508 509source "drivers/media/platform/vivid/Kconfig" 510 511config VIDEO_VIM2M 512 tristate "Virtual Memory-to-Memory Driver" 513 depends on VIDEO_DEV && VIDEO_V4L2 514 select VIDEOBUF2_VMALLOC 515 select V4L2_MEM2MEM_DEV 516 default n 517 ---help--- 518 This is a virtual test device for the memory-to-memory driver 519 framework. 520endif #V4L_TEST_DRIVERS 521 522menuconfig DVB_PLATFORM_DRIVERS 523 bool "DVB platform devices" 524 depends on MEDIA_DIGITAL_TV_SUPPORT 525 default n 526 ---help--- 527 Say Y here to enable support for platform-specific Digital TV drivers. 528 529if DVB_PLATFORM_DRIVERS 530source "drivers/media/platform/sti/c8sectpfe/Kconfig" 531endif #DVB_PLATFORM_DRIVERS 532 533menuconfig CEC_PLATFORM_DRIVERS 534 bool "CEC platform devices" 535 depends on MEDIA_CEC_SUPPORT 536 537if CEC_PLATFORM_DRIVERS 538 539config VIDEO_SAMSUNG_S5P_CEC 540 tristate "Samsung S5P CEC driver" 541 depends on PLAT_S5P || ARCH_EXYNOS || COMPILE_TEST 542 select CEC_CORE 543 select CEC_NOTIFIER 544 ---help--- 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. 549 550config VIDEO_STI_HDMI_CEC 551 tristate "STMicroelectronics STiH4xx HDMI CEC driver" 552 depends on ARCH_STI || COMPILE_TEST 553 select CEC_CORE 554 select CEC_NOTIFIER 555 ---help--- 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. 560 561config VIDEO_STM32_HDMI_CEC 562 tristate "STMicroelectronics STM32 HDMI CEC driver" 563 depends on ARCH_STM32 || COMPILE_TEST 564 select REGMAP 565 select REGMAP_MMIO 566 select CEC_CORE 567 ---help--- 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. 572 573endif #CEC_PLATFORM_DRIVERS 574 575menuconfig SDR_PLATFORM_DRIVERS 576 bool "SDR platform devices" 577 depends on MEDIA_SDR_SUPPORT 578 default n 579 ---help--- 580 Say Y here to enable support for platform-specific SDR Drivers. 581 582if SDR_PLATFORM_DRIVERS 583 584config 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 589 ---help--- 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. 594 595 To compile this driver as a module, choose M here; the module 596 will be called rcar_drif. 597 598endif # SDR_PLATFORM_DRIVERS 599