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