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