xref: /linux/drivers/media/platform/Kconfig (revision 95495f2aa9d8df1a7697bab24118544d3568f41d)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Platform drivers
4#	Most drivers here are currently for webcam support
5
6config V4L_PLATFORM_DRIVERS
7	bool "V4L platform devices"
8	help
9	  Say Y here to enable support for platform-specific V4L drivers.
10
11config SDR_PLATFORM_DRIVERS
12	bool "SDR platform devices"
13	depends on MEDIA_SDR_SUPPORT
14	help
15	  Say Y here to enable support for platform-specific SDR Drivers.
16
17config DVB_PLATFORM_DRIVERS
18	bool "DVB platform devices"
19	depends on MEDIA_DIGITAL_TV_SUPPORT
20	help
21	  Say Y here to enable support for platform-specific Digital TV drivers.
22
23config V4L_MEM2MEM_DRIVERS
24	bool "Memory-to-memory multimedia devices"
25	depends on VIDEO_V4L2
26	help
27	  Say Y here to enable selecting drivers for V4L devices that
28	  use system memory for both source and destination buffers, as opposed
29	  to capture and output drivers, which use memory buffers for just
30	  one of those.
31
32source "drivers/media/platform/nxp/Kconfig"
33
34# V4L platform drivers
35
36source "drivers/media/platform/marvell-ccic/Kconfig"
37
38config VIDEO_VIA_CAMERA
39	tristate "VIAFB camera controller support"
40	depends on V4L_PLATFORM_DRIVERS
41	depends on FB_VIA && VIDEO_V4L2
42	select VIDEOBUF2_DMA_SG
43	select VIDEO_OV7670
44	help
45	   Driver support for the integrated camera controller in VIA
46	   Chrome9 chipsets.  Currently only tested on OLPC xo-1.5 systems
47	   with ov7670 sensors.
48
49source "drivers/media/platform/cadence/Kconfig"
50
51source "drivers/media/platform/davinci/Kconfig"
52
53source "drivers/media/platform/omap/Kconfig"
54
55source "drivers/media/platform/aspeed/Kconfig"
56
57config VIDEO_SH_VOU
58	tristate "SuperH VOU video output driver"
59	depends on V4L_PLATFORM_DRIVERS
60	depends on VIDEO_DEV && I2C
61	depends on ARCH_SHMOBILE || COMPILE_TEST
62	select VIDEOBUF2_DMA_CONTIG
63	help
64	  Support for the Video Output Unit (VOU) on SuperH SoCs.
65
66config VIDEO_MUX
67	tristate "Video Multiplexer"
68	depends on V4L_PLATFORM_DRIVERS
69	select MULTIPLEXER
70	depends on VIDEO_V4L2 && OF
71	select MEDIA_CONTROLLER
72	select VIDEO_V4L2_SUBDEV_API
73	select REGMAP
74	select V4L2_FWNODE
75	help
76	  This driver provides support for N:1 video bus multiplexers.
77
78config VIDEO_OMAP3
79	tristate "OMAP 3 Camera support"
80	depends on V4L_PLATFORM_DRIVERS
81	depends on VIDEO_V4L2 && I2C
82	depends on (ARCH_OMAP3 && OMAP_IOMMU) || COMPILE_TEST
83	depends on COMMON_CLK && OF
84	select ARM_DMA_USE_IOMMU if OMAP_IOMMU
85	select MEDIA_CONTROLLER
86	select VIDEO_V4L2_SUBDEV_API
87	select VIDEOBUF2_DMA_CONTIG
88	select MFD_SYSCON
89	select V4L2_FWNODE
90	help
91	  Driver for an OMAP 3 camera controller.
92
93config VIDEO_OMAP3_DEBUG
94	bool "OMAP 3 Camera debug messages"
95	depends on VIDEO_OMAP3
96	help
97	  Enable debug messages on OMAP 3 camera controller driver.
98
99source "drivers/media/platform/intel/Kconfig"
100
101config VIDEO_QCOM_CAMSS
102	tristate "Qualcomm V4L2 Camera Subsystem driver"
103	depends on V4L_PLATFORM_DRIVERS
104	depends on VIDEO_V4L2
105	depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
106	select MEDIA_CONTROLLER
107	select VIDEO_V4L2_SUBDEV_API
108	select VIDEOBUF2_DMA_SG
109	select V4L2_FWNODE
110
111config VIDEO_S3C_CAMIF
112	tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver"
113	depends on V4L_PLATFORM_DRIVERS
114	depends on VIDEO_V4L2 && I2C && PM
115	depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST
116	select MEDIA_CONTROLLER
117	select VIDEO_V4L2_SUBDEV_API
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 V4L_PLATFORM_DRIVERS
129	depends on VIDEO_V4L2 && OF
130	depends on ARCH_STM32 || COMPILE_TEST
131	select VIDEOBUF2_DMA_CONTIG
132	select MEDIA_CONTROLLER
133	select V4L2_FWNODE
134	help
135	  This module makes the STM32 Digital Camera Memory Interface (DCMI)
136	  available as a v4l2 device.
137
138	  To compile this driver as a module, choose M here: the module
139	  will be called stm32-dcmi.
140
141config VIDEO_RENESAS_CEU
142	tristate "Renesas Capture Engine Unit (CEU) driver"
143	depends on V4L_PLATFORM_DRIVERS
144	depends on VIDEO_DEV && VIDEO_V4L2
145	depends on ARCH_SHMOBILE || ARCH_R7S72100 || COMPILE_TEST
146	select VIDEOBUF2_DMA_CONTIG
147	select V4L2_FWNODE
148	help
149	  This is a v4l2 driver for the Renesas CEU Interface
150
151config VIDEO_ROCKCHIP_ISP1
152	tristate "Rockchip Image Signal Processing v1 Unit driver"
153	depends on V4L_PLATFORM_DRIVERS
154	depends on VIDEO_V4L2 && OF
155	depends on ARCH_ROCKCHIP || COMPILE_TEST
156	select MEDIA_CONTROLLER
157	select VIDEO_V4L2_SUBDEV_API
158	select VIDEOBUF2_DMA_CONTIG
159	select VIDEOBUF2_VMALLOC
160	select V4L2_FWNODE
161	select GENERIC_PHY_MIPI_DPHY
162	default n
163	help
164	  Enable this to support the Image Signal Processing (ISP) module
165	  present in RK3399 SoCs.
166
167	  To compile this driver as a module, choose M here: the module
168	  will be called rockchip-isp1.
169
170source "drivers/media/platform/exynos4-is/Kconfig"
171source "drivers/media/platform/am437x/Kconfig"
172source "drivers/media/platform/xilinx/Kconfig"
173source "drivers/media/platform/rcar-vin/Kconfig"
174source "drivers/media/platform/atmel/Kconfig"
175source "drivers/media/platform/sunxi/Kconfig"
176
177config VIDEO_TI_CAL
178	tristate "TI CAL (Camera Adaptation Layer) driver"
179	depends on V4L_PLATFORM_DRIVERS
180	depends on VIDEO_DEV && VIDEO_V4L2
181	select MEDIA_CONTROLLER
182	select VIDEO_V4L2_SUBDEV_API
183	depends on SOC_DRA7XX || ARCH_K3 || COMPILE_TEST
184	select VIDEOBUF2_DMA_CONTIG
185	select V4L2_FWNODE
186	help
187	  Support for the TI CAL (Camera Adaptation Layer) block
188	  found on DRA72X SoC.
189	  In TI Technical Reference Manual this module is referred as
190	  Camera Interface Subsystem (CAMSS).
191
192config VIDEO_TI_CAL_MC
193	bool "Media Controller centric mode by default"
194	depends on VIDEO_TI_CAL
195	default n
196	help
197	  Enables Media Controller centric mode by default.
198
199	  If set, CAL driver will start in Media Controller mode by
200	  default. Note that this behavior can be overridden via
201	  module parameter 'mc_api'.
202
203config VIDEO_RCAR_ISP
204	tristate "R-Car Image Signal Processor (ISP)"
205	depends on V4L_PLATFORM_DRIVERS
206	depends on VIDEO_V4L2 && OF
207	depends on ARCH_RENESAS || COMPILE_TEST
208	select MEDIA_CONTROLLER
209	select VIDEO_V4L2_SUBDEV_API
210	select RESET_CONTROLLER
211	select V4L2_FWNODE
212	help
213	  Support for Renesas R-Car Image Signal Processor (ISP).
214	  Enable this to support the Renesas R-Car Image Signal
215	  Processor (ISP).
216
217	  To compile this driver as a module, choose M here: the
218	  module will be called rcar-isp.
219
220# Mem2mem drivers
221
222config VIDEO_ALLEGRO_DVT
223	tristate "Allegro DVT Video IP Core"
224	depends on V4L_MEM2MEM_DRIVERS
225	depends on VIDEO_DEV && VIDEO_V4L2
226	depends on ARCH_ZYNQMP || COMPILE_TEST
227	select V4L2_MEM2MEM_DEV
228	select VIDEOBUF2_DMA_CONTIG
229	select REGMAP_MMIO
230	help
231	  Support for the encoder video IP core by Allegro DVT. This core is
232	  found for example on the Xilinx ZynqMP SoC in the EV family and is
233	  called VCU in the reference manual.
234
235	  To compile this driver as a module, choose M here: the module
236	  will be called allegro.
237
238config VIDEO_CODA
239	tristate "Chips&Media Coda multi-standard codec IP"
240	depends on V4L_MEM2MEM_DRIVERS
241	depends on VIDEO_DEV && VIDEO_V4L2 && OF && (ARCH_MXC || COMPILE_TEST)
242	select SRAM
243	select VIDEOBUF2_DMA_CONTIG
244	select VIDEOBUF2_VMALLOC
245	select V4L2_JPEG_HELPER
246	select V4L2_MEM2MEM_DEV
247	select GENERIC_ALLOCATOR
248	help
249	   Coda is a range of video codec IPs that supports
250	   H.264, MPEG-4, and other video formats.
251
252config VIDEO_IMX_VDOA
253	def_tristate VIDEO_CODA if SOC_IMX6Q || COMPILE_TEST
254
255config VIDEO_MEDIATEK_JPEG
256	tristate "Mediatek JPEG Codec driver"
257	depends on V4L_MEM2MEM_DRIVERS
258	depends on MTK_IOMMU_V1 || MTK_IOMMU || COMPILE_TEST
259	depends on VIDEO_DEV && VIDEO_V4L2
260	depends on ARCH_MEDIATEK || COMPILE_TEST
261	depends on MTK_SMI || (COMPILE_TEST && MTK_SMI=n)
262	select VIDEOBUF2_DMA_CONTIG
263	select V4L2_MEM2MEM_DEV
264	help
265	  Mediatek jpeg codec driver provides HW capability to decode
266	  JPEG format
267
268	  To compile this driver as a module, choose M here: the
269	  module will be called mtk-jpeg
270
271config VIDEO_MEDIATEK_VPU
272	tristate "Mediatek Video Processor Unit"
273	depends on V4L_MEM2MEM_DRIVERS
274	depends on VIDEO_DEV && VIDEO_V4L2
275	depends on ARCH_MEDIATEK || COMPILE_TEST
276	help
277	    This driver provides downloading VPU firmware and
278	    communicating with VPU. This driver for hw video
279	    codec embedded in Mediatek's MT8173 SOCs. It is able
280	    to handle video decoding/encoding in a range of formats.
281
282	    To compile this driver as a module, choose M here: the
283	    module will be called mtk-vpu.
284
285config VIDEO_MEDIATEK_MDP
286	tristate "Mediatek MDP driver"
287	depends on V4L_MEM2MEM_DRIVERS
288	depends on MTK_IOMMU || COMPILE_TEST
289	depends on VIDEO_DEV && VIDEO_V4L2
290	depends on ARCH_MEDIATEK || COMPILE_TEST
291	depends on MTK_SMI || (COMPILE_TEST && MTK_SMI=n)
292	select VIDEOBUF2_DMA_CONTIG
293	select V4L2_MEM2MEM_DEV
294	select VIDEO_MEDIATEK_VPU
295	help
296	    It is a v4l2 driver and present in Mediatek MT8173 SoCs.
297	    The driver supports for scaling and color space conversion.
298
299	    To compile this driver as a module, choose M here: the
300	    module will be called mtk-mdp.
301
302config VIDEO_MEDIATEK_VCODEC
303	tristate "Mediatek Video Codec driver"
304	depends on V4L_MEM2MEM_DRIVERS
305	depends on MTK_IOMMU || COMPILE_TEST
306	depends on VIDEO_DEV && VIDEO_V4L2
307	depends on ARCH_MEDIATEK || COMPILE_TEST
308	depends on VIDEO_MEDIATEK_VPU || MTK_SCP
309	# The two following lines ensure we have the same state ("m" or "y") as
310	# our dependencies, to avoid missing symbols during link.
311	depends on VIDEO_MEDIATEK_VPU || !VIDEO_MEDIATEK_VPU
312	depends on MTK_SCP || !MTK_SCP
313	depends on MTK_SMI || (COMPILE_TEST && MTK_SMI=n)
314	select VIDEOBUF2_DMA_CONTIG
315	select V4L2_MEM2MEM_DEV
316	select VIDEO_MEDIATEK_VCODEC_VPU if VIDEO_MEDIATEK_VPU
317	select VIDEO_MEDIATEK_VCODEC_SCP if MTK_SCP
318	select V4L2_H264
319	select MEDIA_CONTROLLER
320	select MEDIA_CONTROLLER_REQUEST_API
321	help
322	  Mediatek video codec driver provides HW capability to
323	  encode and decode in a range of video formats on MT8173
324	  and MT8183.
325
326	  Note that support for MT8173 requires VIDEO_MEDIATEK_VPU to
327	  also be selected. Support for MT8183 depends on MTK_SCP.
328
329	  To compile this driver as modules, choose M here: the
330	  modules will be called mtk-vcodec-dec and mtk-vcodec-enc.
331
332config VIDEO_MEDIATEK_VCODEC_VPU
333	bool
334
335config VIDEO_MEDIATEK_VCODEC_SCP
336	bool
337
338config VIDEO_MEM2MEM_DEINTERLACE
339	tristate "Deinterlace support"
340	depends on V4L_MEM2MEM_DRIVERS
341	depends on VIDEO_DEV && VIDEO_V4L2
342	depends on HAS_DMA
343	select VIDEOBUF2_DMA_CONTIG
344	select V4L2_MEM2MEM_DEV
345	help
346	    Generic deinterlacing V4L2 driver.
347
348config VIDEO_MESON_GE2D
349	tristate "Amlogic 2D Graphic Acceleration Unit"
350	depends on V4L_MEM2MEM_DRIVERS
351	depends on VIDEO_DEV && VIDEO_V4L2
352	depends on ARCH_MESON || COMPILE_TEST
353	select VIDEOBUF2_DMA_CONTIG
354	select V4L2_MEM2MEM_DEV
355	help
356	  This is a v4l2 driver for Amlogic GE2D 2D graphics accelerator.
357	  GE2D is a standalone 2D graphic acceleration unit, with color converter,
358	  image scaling, BitBLT & alpha blending operations.
359
360	  To compile this driver as a module choose m here.
361
362config VIDEO_SAMSUNG_S5P_G2D
363	tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver"
364	depends on V4L_MEM2MEM_DRIVERS
365	depends on VIDEO_DEV && VIDEO_V4L2
366	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
367	select VIDEOBUF2_DMA_CONTIG
368	select V4L2_MEM2MEM_DEV
369	help
370	  This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D
371	  2d graphics accelerator.
372
373config VIDEO_SAMSUNG_S5P_JPEG
374	tristate "Samsung S5P/Exynos3250/Exynos4 JPEG codec driver"
375	depends on V4L_MEM2MEM_DRIVERS
376	depends on VIDEO_DEV && VIDEO_V4L2
377	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
378	select VIDEOBUF2_DMA_CONTIG
379	select V4L2_MEM2MEM_DEV
380	help
381	  This is a v4l2 driver for Samsung S5P, EXYNOS3250
382	  and EXYNOS4 JPEG codec
383
384config VIDEO_SAMSUNG_S5P_MFC
385	tristate "Samsung S5P MFC Video Codec"
386	depends on V4L_MEM2MEM_DRIVERS
387	depends on VIDEO_DEV && VIDEO_V4L2
388	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
389	select VIDEOBUF2_DMA_CONTIG
390	help
391	    MFC 5.1 and 6.x driver for V4L2
392
393config VIDEO_SAMSUNG_EXYNOS_GSC
394	tristate "Samsung Exynos G-Scaler driver"
395	depends on V4L_MEM2MEM_DRIVERS
396	depends on VIDEO_DEV && VIDEO_V4L2
397	depends on ARCH_EXYNOS || COMPILE_TEST
398	select VIDEOBUF2_DMA_CONTIG
399	select V4L2_MEM2MEM_DEV
400	help
401	  This is a v4l2 driver for Samsung EXYNOS5 SoC G-Scaler.
402
403config VIDEO_STI_BDISP
404	tristate "STMicroelectronics BDISP 2D blitter driver"
405	depends on V4L_MEM2MEM_DRIVERS
406	depends on VIDEO_DEV && VIDEO_V4L2
407	depends on ARCH_STI || COMPILE_TEST
408	select VIDEOBUF2_DMA_CONTIG
409	select V4L2_MEM2MEM_DEV
410	help
411	  This v4l2 mem2mem driver is a 2D blitter for STMicroelectronics SoC.
412
413config VIDEO_STI_HVA
414	tristate "STMicroelectronics HVA multi-format video encoder V4L2 driver"
415	depends on V4L_MEM2MEM_DRIVERS
416	depends on VIDEO_DEV && VIDEO_V4L2
417	depends on ARCH_STI || COMPILE_TEST
418	select VIDEOBUF2_DMA_CONTIG
419	select V4L2_MEM2MEM_DEV
420	help
421	  This V4L2 driver enables HVA (Hardware Video Accelerator) multi-format
422	  video encoder of STMicroelectronics SoC, allowing hardware encoding of
423	  raw uncompressed formats in various compressed video bitstreams format.
424
425	  To compile this driver as a module, choose M here:
426	  the module will be called st-hva.
427
428config VIDEO_STI_HVA_DEBUGFS
429	bool "Export STMicroelectronics HVA internals in debugfs"
430	depends on V4L_MEM2MEM_DRIVERS
431	depends on VIDEO_STI_HVA
432	depends on DEBUG_FS
433	help
434	  Select this to see information about the internal state and the last
435	  operation of STMicroelectronics HVA multi-format video encoder in
436	  debugfs.
437
438	  Choose N unless you know you need this.
439
440config VIDEO_STI_DELTA
441	tristate "STMicroelectronics DELTA multi-format video decoder V4L2 driver"
442	depends on V4L_MEM2MEM_DRIVERS
443	depends on VIDEO_DEV && VIDEO_V4L2
444	depends on ARCH_STI || COMPILE_TEST
445	help
446		This V4L2 driver enables DELTA multi-format video decoder
447		of STMicroelectronics STiH4xx SoC series allowing hardware
448		decoding of various compressed video bitstream format in
449		raw uncompressed format.
450
451		Use this option to see the decoders available for such
452		hardware.
453
454		Please notice that the driver will only be built if
455		at least one of the DELTA decoder below is selected.
456
457config VIDEO_STI_DELTA_MJPEG
458	bool "STMicroelectronics DELTA MJPEG support"
459	default y
460	depends on VIDEO_STI_DELTA
461	help
462		Enables DELTA MJPEG hardware support.
463
464		To compile this driver as a module, choose M here:
465		the module will be called st-delta.
466
467config VIDEO_STI_DELTA_DRIVER
468	tristate
469	depends on VIDEO_STI_DELTA
470	depends on VIDEO_STI_DELTA_MJPEG
471	default VIDEO_STI_DELTA_MJPEG
472	select VIDEOBUF2_DMA_CONTIG
473	select V4L2_MEM2MEM_DEV
474	select RPMSG
475
476config VIDEO_STM32_DMA2D
477	tristate "STM32 Chrom-Art Accelerator (DMA2D)"
478	depends on V4L_MEM2MEM_DRIVERS
479	depends on VIDEO_DEV && VIDEO_V4L2
480	depends on ARCH_STM32 || COMPILE_TEST
481	select VIDEOBUF2_DMA_CONTIG
482	select V4L2_MEM2MEM_DEV
483	help
484	  Enables DMA2D hardware support on stm32.
485
486	  The STM32 DMA2D is a memory-to-memory engine for pixel conversion
487	  and specialized DMA dedicated to image manipulation.
488
489config VIDEO_RENESAS_FDP1
490	tristate "Renesas Fine Display Processor"
491	depends on V4L_MEM2MEM_DRIVERS
492	depends on VIDEO_DEV && VIDEO_V4L2
493	depends on ARCH_RENESAS || COMPILE_TEST
494	depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
495	select VIDEOBUF2_DMA_CONTIG
496	select V4L2_MEM2MEM_DEV
497	help
498	  This is a V4L2 driver for the Renesas Fine Display Processor
499	  providing colour space conversion, and de-interlacing features.
500
501	  To compile this driver as a module, choose M here: the module
502	  will be called rcar_fdp1.
503
504config VIDEO_RENESAS_JPU
505	tristate "Renesas JPEG Processing Unit"
506	depends on V4L_MEM2MEM_DRIVERS
507	depends on VIDEO_DEV && VIDEO_V4L2
508	depends on ARCH_RENESAS || COMPILE_TEST
509	select VIDEOBUF2_DMA_CONTIG
510	select V4L2_MEM2MEM_DEV
511	help
512	  This is a V4L2 driver for the Renesas JPEG Processing Unit.
513
514	  To compile this driver as a module, choose M here: the module
515	  will be called rcar_jpu.
516
517config VIDEO_RENESAS_FCP
518	tristate "Renesas Frame Compression Processor"
519	depends on V4L_MEM2MEM_DRIVERS
520	depends on ARCH_RENESAS || COMPILE_TEST
521	depends on OF
522	help
523	  This is a driver for the Renesas Frame Compression Processor (FCP).
524	  The FCP is a companion module of video processing modules in the
525	  Renesas R-Car Gen3 and RZ/G2 SoCs. It handles memory access for
526	  the codec, VSP and FDP modules.
527
528	  To compile this driver as a module, choose M here: the module
529	  will be called rcar-fcp.
530
531config VIDEO_RENESAS_VSP1
532	tristate "Renesas VSP1 Video Processing Engine"
533	depends on V4L_MEM2MEM_DRIVERS
534	depends on VIDEO_V4L2
535	depends on ARCH_RENESAS || COMPILE_TEST
536	depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
537	select MEDIA_CONTROLLER
538	select VIDEO_V4L2_SUBDEV_API
539	select VIDEOBUF2_DMA_CONTIG
540	select VIDEOBUF2_VMALLOC
541	help
542	  This is a V4L2 driver for the Renesas VSP1 video processing engine.
543
544	  To compile this driver as a module, choose M here: the module
545	  will be called vsp1.
546
547config VIDEO_ROCKCHIP_RGA
548	tristate "Rockchip Raster 2d Graphic Acceleration Unit"
549	depends on V4L_MEM2MEM_DRIVERS
550	depends on VIDEO_DEV && VIDEO_V4L2
551	depends on ARCH_ROCKCHIP || COMPILE_TEST
552	select VIDEOBUF2_DMA_SG
553	select V4L2_MEM2MEM_DEV
554	help
555	  This is a v4l2 driver for Rockchip SOC RGA 2d graphics accelerator.
556	  Rockchip RGA is a separate 2D raster graphic acceleration unit.
557	  It accelerates 2D graphics operations, such as point/line drawing,
558	  image scaling, rotation, BitBLT, alpha blending and image blur/sharpness.
559
560	  To compile this driver as a module choose m here.
561
562config VIDEO_TI_VPE
563	tristate "TI VPE (Video Processing Engine) driver"
564	depends on V4L_MEM2MEM_DRIVERS
565	depends on VIDEO_DEV && VIDEO_V4L2
566	depends on SOC_DRA7XX || COMPILE_TEST
567	select VIDEOBUF2_DMA_CONTIG
568	select V4L2_MEM2MEM_DEV
569	select VIDEO_TI_VPDMA
570	select VIDEO_TI_SC
571	select VIDEO_TI_CSC
572	help
573	  Support for the TI VPE(Video Processing Engine) block
574	  found on DRA7XX SoC.
575
576config VIDEO_TI_VPE_DEBUG
577	bool "VPE debug messages"
578	depends on V4L_MEM2MEM_DRIVERS
579	depends on VIDEO_TI_VPE
580	help
581	  Enable debug messages on VPE driver.
582
583config VIDEO_QCOM_VENUS
584	tristate "Qualcomm Venus V4L2 encoder/decoder driver"
585	depends on V4L_MEM2MEM_DRIVERS
586	depends on VIDEO_DEV && VIDEO_V4L2 && QCOM_SMEM
587	depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
588	select QCOM_MDT_LOADER if ARCH_QCOM
589	select QCOM_SCM
590	select VIDEOBUF2_DMA_CONTIG
591	select V4L2_MEM2MEM_DEV
592	help
593	  This is a V4L2 driver for Qualcomm Venus video accelerator
594	  hardware. It accelerates encoding and decoding operations
595	  on various Qualcomm SoCs.
596	  To compile this driver as a module choose m here.
597
598config VIDEO_SUN8I_DEINTERLACE
599	tristate "Allwinner Deinterlace driver"
600	depends on V4L_MEM2MEM_DRIVERS
601	depends on VIDEO_DEV && VIDEO_V4L2
602	depends on ARCH_SUNXI || COMPILE_TEST
603	depends on COMMON_CLK && OF
604	depends on PM
605	select VIDEOBUF2_DMA_CONTIG
606	select V4L2_MEM2MEM_DEV
607	help
608	   Support for the Allwinner deinterlace unit with scaling
609	   capability found on some SoCs, like H3.
610	   To compile this driver as a module choose m here.
611
612config VIDEO_SUN8I_ROTATE
613	tristate "Allwinner DE2 rotation driver"
614	depends on V4L_MEM2MEM_DRIVERS
615	depends on VIDEO_DEV && VIDEO_V4L2
616	depends on ARCH_SUNXI || COMPILE_TEST
617	depends on COMMON_CLK && OF
618	depends on PM
619	select VIDEOBUF2_DMA_CONTIG
620	select V4L2_MEM2MEM_DEV
621	help
622	   Support for the Allwinner DE2 rotation unit.
623	   To compile this driver as a module choose m here.
624
625config VIDEO_TEGRA_VDE
626	tristate "NVIDIA Tegra Video Decoder Engine driver"
627	depends on V4L_MEM2MEM_DRIVERS
628	depends on ARCH_TEGRA || COMPILE_TEST
629	depends on VIDEO_DEV && VIDEO_V4L2
630	select DMA_SHARED_BUFFER
631	select IOMMU_IOVA
632	select MEDIA_CONTROLLER
633	select MEDIA_CONTROLLER_REQUEST_API
634	select SRAM
635	select VIDEOBUF2_DMA_CONTIG
636	select VIDEOBUF2_DMA_SG
637	select V4L2_H264
638	select V4L2_MEM2MEM_DEV
639	help
640	   Support for the NVIDIA Tegra video decoder unit.
641	   To compile this driver as a module choose m here.
642
643config VIDEO_AMPHION_VPU
644	tristate "Amphion VPU (Video Processing Unit) Codec IP"
645	depends on V4L_MEM2MEM_DRIVERS
646	depends on ARCH_MXC || COMPILE_TEST
647	depends on MEDIA_SUPPORT
648	depends on VIDEO_DEV
649	depends on VIDEO_V4L2
650	select MEDIA_CONTROLLER
651	select V4L2_MEM2MEM_DEV
652	select VIDEOBUF2_DMA_CONTIG
653	select VIDEOBUF2_VMALLOC
654	help
655	  Amphion VPU Codec IP contains two parts: Windsor and Malone.
656	  Windsor is encoder that supports H.264, and Malone is decoder
657	  that supports H.264, HEVC, and other video formats.
658	  This is a V4L2 driver for NXP MXC 8Q video accelerator hardware.
659	  It accelerates encoding and decoding operations on
660	  various NXP SoCs.
661	  To compile this driver as a module choose m here.
662
663# TI VIDEO PORT Helper Modules
664# These will be selected by VPE and VIP
665config VIDEO_TI_VPDMA
666	tristate
667
668config VIDEO_TI_SC
669	tristate
670
671config VIDEO_TI_CSC
672	tristate
673
674# DVB platform drivers
675source "drivers/media/platform/sti/c8sectpfe/Kconfig"
676
677# SDR platform drivers
678config VIDEO_RCAR_DRIF
679	tristate "Renesas Digital Radio Interface (DRIF)"
680	depends on SDR_PLATFORM_DRIVERS
681	depends on VIDEO_V4L2
682	depends on ARCH_RENESAS || COMPILE_TEST
683	select VIDEOBUF2_VMALLOC
684	select V4L2_ASYNC
685	help
686	  Say Y if you want to enable R-Car Gen3 DRIF support. DRIF is Digital
687	  Radio Interface that interfaces with an RF front end chip. It is a
688	  receiver of digital data which uses DMA to transfer received data to
689	  a configured location for an application to use.
690
691	  To compile this driver as a module, choose M here; the module
692	  will be called rcar_drif.
693