xref: /openbmc/linux/drivers/media/platform/Kconfig (revision 32a363d0)
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
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
150source "drivers/media/platform/exynos4-is/Kconfig"
151source "drivers/media/platform/am437x/Kconfig"
152source "drivers/media/platform/xilinx/Kconfig"
153source "drivers/media/platform/rcar-vin/Kconfig"
154source "drivers/media/platform/atmel/Kconfig"
155source "drivers/media/platform/sunxi/Kconfig"
156
157config VIDEO_TI_CAL
158	tristate "TI CAL (Camera Adaptation Layer) driver"
159	depends on VIDEO_DEV && VIDEO_V4L2
160	select MEDIA_CONTROLLER
161	select VIDEO_V4L2_SUBDEV_API
162	depends on SOC_DRA7XX || ARCH_K3 || COMPILE_TEST
163	select VIDEOBUF2_DMA_CONTIG
164	select V4L2_FWNODE
165	help
166	  Support for the TI CAL (Camera Adaptation Layer) block
167	  found on DRA72X SoC.
168	  In TI Technical Reference Manual this module is referred as
169	  Camera Interface Subsystem (CAMSS).
170
171endif # V4L_PLATFORM_DRIVERS
172
173menuconfig V4L_MEM2MEM_DRIVERS
174	bool "Memory-to-memory multimedia devices"
175	depends on VIDEO_V4L2
176	help
177	  Say Y here to enable selecting drivers for V4L devices that
178	  use system memory for both source and destination buffers, as opposed
179	  to capture and output drivers, which use memory buffers for just
180	  one of those.
181
182if V4L_MEM2MEM_DRIVERS
183
184config VIDEO_CODA
185	tristate "Chips&Media Coda multi-standard codec IP"
186	depends on VIDEO_DEV && VIDEO_V4L2 && (ARCH_MXC || COMPILE_TEST)
187	select SRAM
188	select VIDEOBUF2_DMA_CONTIG
189	select VIDEOBUF2_VMALLOC
190	select V4L2_MEM2MEM_DEV
191	select GENERIC_ALLOCATOR
192	help
193	   Coda is a range of video codec IPs that supports
194	   H.264, MPEG-4, and other video formats.
195
196config VIDEO_IMX_VDOA
197	def_tristate VIDEO_CODA if SOC_IMX6Q || COMPILE_TEST
198
199config VIDEO_IMX_PXP
200	tristate "i.MX Pixel Pipeline (PXP)"
201	depends on VIDEO_DEV && VIDEO_V4L2 && (ARCH_MXC || COMPILE_TEST)
202	select VIDEOBUF2_DMA_CONTIG
203	select V4L2_MEM2MEM_DEV
204	help
205	  The i.MX Pixel Pipeline is a memory-to-memory engine for scaling,
206	  color space conversion, and rotation.
207
208config VIDEO_MEDIATEK_JPEG
209	tristate "Mediatek JPEG Codec driver"
210	depends on MTK_IOMMU_V1 || MTK_IOMMU || COMPILE_TEST
211	depends on VIDEO_DEV && VIDEO_V4L2
212	depends on ARCH_MEDIATEK || COMPILE_TEST
213	select VIDEOBUF2_DMA_CONTIG
214	select V4L2_MEM2MEM_DEV
215	help
216	  Mediatek jpeg codec driver provides HW capability to decode
217	  JPEG format
218
219	  To compile this driver as a module, choose M here: the
220	  module will be called mtk-jpeg
221
222config VIDEO_MEDIATEK_VPU
223	tristate "Mediatek Video Processor Unit"
224	depends on VIDEO_DEV && VIDEO_V4L2
225	depends on ARCH_MEDIATEK || COMPILE_TEST
226	help
227	    This driver provides downloading VPU firmware and
228	    communicating with VPU. This driver for hw video
229	    codec embedded in Mediatek's MT8173 SOCs. It is able
230	    to handle video decoding/encoding in a range of formats.
231
232	    To compile this driver as a module, choose M here: the
233	    module will be called mtk-vpu.
234
235config VIDEO_MEDIATEK_MDP
236	tristate "Mediatek MDP driver"
237	depends on MTK_IOMMU || COMPILE_TEST
238	depends on VIDEO_DEV && VIDEO_V4L2
239	depends on ARCH_MEDIATEK || COMPILE_TEST
240	select VIDEOBUF2_DMA_CONTIG
241	select V4L2_MEM2MEM_DEV
242	select VIDEO_MEDIATEK_VPU
243	help
244	    It is a v4l2 driver and present in Mediatek MT8173 SoCs.
245	    The driver supports for scaling and color space conversion.
246
247	    To compile this driver as a module, choose M here: the
248	    module will be called mtk-mdp.
249
250config VIDEO_MEDIATEK_VCODEC
251	tristate "Mediatek Video Codec driver"
252	depends on MTK_IOMMU || COMPILE_TEST
253	depends on VIDEO_DEV && VIDEO_V4L2
254	depends on ARCH_MEDIATEK || COMPILE_TEST
255	select VIDEOBUF2_DMA_CONTIG
256	select V4L2_MEM2MEM_DEV
257	select VIDEO_MEDIATEK_VPU
258	help
259	    Mediatek video codec driver provides HW capability to
260	    encode and decode in a range of video formats
261	    This driver rely on VPU driver to communicate with VPU.
262
263	    To compile this driver as a module, choose M here: the
264	    module will be called mtk-vcodec
265
266config VIDEO_MEM2MEM_DEINTERLACE
267	tristate "Deinterlace support"
268	depends on VIDEO_DEV && VIDEO_V4L2
269	depends on HAS_DMA
270	select VIDEOBUF2_DMA_CONTIG
271	select V4L2_MEM2MEM_DEV
272	help
273	    Generic deinterlacing V4L2 driver.
274
275config VIDEO_SAMSUNG_S5P_G2D
276	tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver"
277	depends on VIDEO_DEV && VIDEO_V4L2
278	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
279	select VIDEOBUF2_DMA_CONTIG
280	select V4L2_MEM2MEM_DEV
281	help
282	  This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D
283	  2d graphics accelerator.
284
285config VIDEO_SAMSUNG_S5P_JPEG
286	tristate "Samsung S5P/Exynos3250/Exynos4 JPEG codec driver"
287	depends on VIDEO_DEV && VIDEO_V4L2
288	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
289	select VIDEOBUF2_DMA_CONTIG
290	select V4L2_MEM2MEM_DEV
291	help
292	  This is a v4l2 driver for Samsung S5P, EXYNOS3250
293	  and EXYNOS4 JPEG codec
294
295config VIDEO_SAMSUNG_S5P_MFC
296	tristate "Samsung S5P MFC Video Codec"
297	depends on VIDEO_DEV && VIDEO_V4L2
298	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
299	select VIDEOBUF2_DMA_CONTIG
300	help
301	    MFC 5.1 and 6.x driver for V4L2
302
303config VIDEO_MX2_EMMAPRP
304	tristate "MX2 eMMa-PrP support"
305	depends on VIDEO_DEV && VIDEO_V4L2
306	depends on SOC_IMX27 || COMPILE_TEST
307	select VIDEOBUF2_DMA_CONTIG
308	select V4L2_MEM2MEM_DEV
309	help
310	    MX2X chips have a PrP that can be used to process buffers from
311	    memory to memory. Operations include resizing and format
312	    conversion.
313
314config VIDEO_SAMSUNG_EXYNOS_GSC
315	tristate "Samsung Exynos G-Scaler driver"
316	depends on VIDEO_DEV && VIDEO_V4L2
317	depends on ARCH_EXYNOS || COMPILE_TEST
318	select VIDEOBUF2_DMA_CONTIG
319	select V4L2_MEM2MEM_DEV
320	help
321	  This is a v4l2 driver for Samsung EXYNOS5 SoC G-Scaler.
322
323config VIDEO_STI_BDISP
324	tristate "STMicroelectronics BDISP 2D blitter driver"
325	depends on VIDEO_DEV && VIDEO_V4L2
326	depends on ARCH_STI || COMPILE_TEST
327	select VIDEOBUF2_DMA_CONTIG
328	select V4L2_MEM2MEM_DEV
329	help
330	  This v4l2 mem2mem driver is a 2D blitter for STMicroelectronics SoC.
331
332config VIDEO_STI_HVA
333	tristate "STMicroelectronics HVA multi-format video encoder V4L2 driver"
334	depends on VIDEO_DEV && VIDEO_V4L2
335	depends on ARCH_STI || COMPILE_TEST
336	select VIDEOBUF2_DMA_CONTIG
337	select V4L2_MEM2MEM_DEV
338	help
339	  This V4L2 driver enables HVA (Hardware Video Accelerator) multi-format
340	  video encoder of STMicroelectronics SoC, allowing hardware encoding of
341	  raw uncompressed formats in various compressed video bitstreams format.
342
343	  To compile this driver as a module, choose M here:
344	  the module will be called st-hva.
345
346config VIDEO_STI_HVA_DEBUGFS
347	bool "Export STMicroelectronics HVA internals in debugfs"
348	depends on VIDEO_STI_HVA
349	depends on DEBUG_FS
350	help
351	  Select this to see information about the internal state and the last
352	  operation of STMicroelectronics HVA multi-format video encoder in
353	  debugfs.
354
355	  Choose N unless you know you need this.
356
357config VIDEO_STI_DELTA
358	tristate "STMicroelectronics DELTA multi-format video decoder V4L2 driver"
359	depends on VIDEO_DEV && VIDEO_V4L2
360	depends on ARCH_STI || COMPILE_TEST
361	help
362		This V4L2 driver enables DELTA multi-format video decoder
363		of STMicroelectronics STiH4xx SoC series allowing hardware
364		decoding of various compressed video bitstream format in
365		raw uncompressed format.
366
367		Use this option to see the decoders available for such
368		hardware.
369
370		Please notice that the driver will only be built if
371		at least one of the DELTA decoder below is selected.
372
373if VIDEO_STI_DELTA
374
375config VIDEO_STI_DELTA_MJPEG
376	bool "STMicroelectronics DELTA MJPEG support"
377	default y
378	help
379		Enables DELTA MJPEG hardware support.
380
381		To compile this driver as a module, choose M here:
382		the module will be called st-delta.
383
384config VIDEO_STI_DELTA_DRIVER
385	tristate
386	depends on VIDEO_STI_DELTA
387	depends on VIDEO_STI_DELTA_MJPEG
388	default VIDEO_STI_DELTA_MJPEG
389	select VIDEOBUF2_DMA_CONTIG
390	select V4L2_MEM2MEM_DEV
391	select RPMSG
392
393endif # VIDEO_STI_DELTA
394
395config VIDEO_SH_VEU
396	tristate "SuperH VEU mem2mem video processing driver"
397	depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
398	select VIDEOBUF2_DMA_CONTIG
399	select V4L2_MEM2MEM_DEV
400	help
401	    Support for the Video Engine Unit (VEU) on SuperH and
402	    SH-Mobile SoCs.
403
404config VIDEO_RENESAS_FDP1
405	tristate "Renesas Fine Display Processor"
406	depends on VIDEO_DEV && VIDEO_V4L2
407	depends on ARCH_RENESAS || COMPILE_TEST
408	depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
409	select VIDEOBUF2_DMA_CONTIG
410	select V4L2_MEM2MEM_DEV
411	help
412	  This is a V4L2 driver for the Renesas Fine Display Processor
413	  providing colour space conversion, and de-interlacing features.
414
415	  To compile this driver as a module, choose M here: the module
416	  will be called rcar_fdp1.
417
418config VIDEO_RENESAS_JPU
419	tristate "Renesas JPEG Processing Unit"
420	depends on VIDEO_DEV && VIDEO_V4L2
421	depends on ARCH_RENESAS || COMPILE_TEST
422	select VIDEOBUF2_DMA_CONTIG
423	select V4L2_MEM2MEM_DEV
424	help
425	  This is a V4L2 driver for the Renesas JPEG Processing Unit.
426
427	  To compile this driver as a module, choose M here: the module
428	  will be called rcar_jpu.
429
430config VIDEO_RENESAS_FCP
431	tristate "Renesas Frame Compression Processor"
432	depends on ARCH_RENESAS || COMPILE_TEST
433	depends on OF
434	help
435	  This is a driver for the Renesas Frame Compression Processor (FCP).
436	  The FCP is a companion module of video processing modules in the
437	  Renesas R-Car Gen3 SoCs. It handles memory access for the codec,
438	  VSP and FDP modules.
439
440	  To compile this driver as a module, choose M here: the module
441	  will be called rcar-fcp.
442
443config VIDEO_RENESAS_VSP1
444	tristate "Renesas VSP1 Video Processing Engine"
445	depends on VIDEO_V4L2
446	depends on ARCH_RENESAS || COMPILE_TEST
447	depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
448	select MEDIA_CONTROLLER
449	select VIDEO_V4L2_SUBDEV_API
450	select VIDEOBUF2_DMA_CONTIG
451	select VIDEOBUF2_VMALLOC
452	help
453	  This is a V4L2 driver for the Renesas VSP1 video processing engine.
454
455	  To compile this driver as a module, choose M here: the module
456	  will be called vsp1.
457
458config VIDEO_ROCKCHIP_RGA
459	tristate "Rockchip Raster 2d Graphic Acceleration Unit"
460	depends on VIDEO_DEV && VIDEO_V4L2
461	depends on ARCH_ROCKCHIP || COMPILE_TEST
462	select VIDEOBUF2_DMA_SG
463	select V4L2_MEM2MEM_DEV
464	help
465	  This is a v4l2 driver for Rockchip SOC RGA 2d graphics accelerator.
466	  Rockchip RGA is a separate 2D raster graphic acceleration unit.
467	  It accelerates 2D graphics operations, such as point/line drawing,
468	  image scaling, rotation, BitBLT, alpha blending and image blur/sharpness.
469
470	  To compile this driver as a module choose m here.
471
472config VIDEO_TI_VPE
473	tristate "TI VPE (Video Processing Engine) driver"
474	depends on VIDEO_DEV && VIDEO_V4L2
475	depends on SOC_DRA7XX || COMPILE_TEST
476	select VIDEOBUF2_DMA_CONTIG
477	select V4L2_MEM2MEM_DEV
478	select VIDEO_TI_VPDMA
479	select VIDEO_TI_SC
480	select VIDEO_TI_CSC
481	help
482	  Support for the TI VPE(Video Processing Engine) block
483	  found on DRA7XX SoC.
484
485config VIDEO_TI_VPE_DEBUG
486	bool "VPE debug messages"
487	depends on VIDEO_TI_VPE
488	help
489	  Enable debug messages on VPE driver.
490
491config VIDEO_QCOM_VENUS
492	tristate "Qualcomm Venus V4L2 encoder/decoder driver"
493	depends on VIDEO_DEV && VIDEO_V4L2
494	depends on (ARCH_QCOM && IOMMU_DMA) || COMPILE_TEST
495	depends on INTERCONNECT || !INTERCONNECT
496	select QCOM_MDT_LOADER if ARCH_QCOM
497	select QCOM_SCM if ARCH_QCOM
498	select VIDEOBUF2_DMA_SG
499	select V4L2_MEM2MEM_DEV
500	help
501	  This is a V4L2 driver for Qualcomm Venus video accelerator
502	  hardware. It accelerates encoding and decoding operations
503	  on various Qualcomm SoCs.
504	  To compile this driver as a module choose m here.
505
506config VIDEO_SUN8I_DEINTERLACE
507	tristate "Allwinner Deinterlace driver"
508	depends on VIDEO_DEV && VIDEO_V4L2
509	depends on ARCH_SUNXI || COMPILE_TEST
510	depends on COMMON_CLK && OF
511	depends on PM
512	select VIDEOBUF2_DMA_CONTIG
513	select V4L2_MEM2MEM_DEV
514	help
515	   Support for the Allwinner deinterlace unit with scaling
516	   capability found on some SoCs, like H3.
517	   To compile this driver as a module choose m here.
518
519config VIDEO_SUN8I_ROTATE
520	tristate "Allwinner DE2 rotation driver"
521	depends on VIDEO_DEV && VIDEO_V4L2
522	depends on ARCH_SUNXI || COMPILE_TEST
523	depends on COMMON_CLK && OF
524	depends on PM
525	select VIDEOBUF2_DMA_CONTIG
526	select V4L2_MEM2MEM_DEV
527	help
528	   Support for the Allwinner DE2 rotation unit.
529	   To compile this driver as a module choose m here.
530
531endif # V4L_MEM2MEM_DRIVERS
532
533# TI VIDEO PORT Helper Modules
534# These will be selected by VPE and VIP
535config VIDEO_TI_VPDMA
536	tristate
537
538config VIDEO_TI_SC
539	tristate
540
541config VIDEO_TI_CSC
542	tristate
543
544menuconfig DVB_PLATFORM_DRIVERS
545	bool "DVB platform devices"
546	select DVB_CORE
547	help
548	  Say Y here to enable support for platform-specific Digital TV drivers.
549
550if DVB_PLATFORM_DRIVERS
551source "drivers/media/platform/sti/c8sectpfe/Kconfig"
552endif #DVB_PLATFORM_DRIVERS
553
554menuconfig CEC_PLATFORM_DRIVERS
555	bool "CEC platform devices"
556	depends on MEDIA_CEC_SUPPORT
557
558if CEC_PLATFORM_DRIVERS
559
560config VIDEO_CROS_EC_CEC
561	tristate "ChromeOS EC CEC driver"
562	depends on CROS_EC
563	select CEC_CORE
564	select CEC_NOTIFIER
565	select CROS_EC_PROTO
566	help
567	  If you say yes here you will get support for the
568	  ChromeOS Embedded Controller's CEC.
569	  The CEC bus is present in the HDMI connector and enables communication
570	  between compatible devices.
571
572config VIDEO_MESON_AO_CEC
573	tristate "Amlogic Meson AO CEC driver"
574	depends on ARCH_MESON || COMPILE_TEST
575	select CEC_CORE
576	select CEC_NOTIFIER
577	help
578	  This is a driver for Amlogic Meson SoCs AO CEC interface. It uses the
579	  generic CEC framework interface.
580	  CEC bus is present in the HDMI connector and enables communication
581
582config VIDEO_MESON_G12A_AO_CEC
583	tristate "Amlogic Meson G12A AO CEC driver"
584	depends on ARCH_MESON || COMPILE_TEST
585	depends on COMMON_CLK && OF
586	select REGMAP
587	select REGMAP_MMIO
588	select CEC_CORE
589	select CEC_NOTIFIER
590	---help---
591	  This is a driver for Amlogic Meson G12A SoCs AO CEC interface.
592	  This driver if for the new AO-CEC module found in G12A SoCs,
593	  usually named AO_CEC_B in documentation.
594	  It uses the generic CEC framework interface.
595	  CEC bus is present in the HDMI connector and enables communication
596	  between compatible devices.
597
598config CEC_GPIO
599	tristate "Generic GPIO-based CEC driver"
600	depends on PREEMPTION || COMPILE_TEST
601	select CEC_CORE
602	select CEC_PIN
603	select CEC_NOTIFIER
604	select GPIOLIB
605	help
606	  This is a generic GPIO-based CEC driver.
607	  The CEC bus is present in the HDMI connector and enables communication
608	  between compatible devices.
609
610config VIDEO_SAMSUNG_S5P_CEC
611	tristate "Samsung S5P CEC driver"
612	depends on ARCH_EXYNOS || COMPILE_TEST
613	select CEC_CORE
614	select CEC_NOTIFIER
615	help
616	  This is a driver for Samsung S5P HDMI CEC interface. It uses the
617	  generic CEC framework interface.
618	  CEC bus is present in the HDMI connector and enables communication
619	  between compatible devices.
620
621config VIDEO_STI_HDMI_CEC
622	tristate "STMicroelectronics STiH4xx HDMI CEC driver"
623	depends on ARCH_STI || COMPILE_TEST
624	select CEC_CORE
625	select CEC_NOTIFIER
626	help
627	  This is a driver for STIH4xx HDMI CEC interface. It uses the
628	  generic CEC framework interface.
629	  CEC bus is present in the HDMI connector and enables communication
630	  between compatible devices.
631
632config VIDEO_STM32_HDMI_CEC
633	tristate "STMicroelectronics STM32 HDMI CEC driver"
634	depends on ARCH_STM32 || COMPILE_TEST
635	select REGMAP
636	select REGMAP_MMIO
637	select CEC_CORE
638	help
639	  This is a driver for STM32 interface. It uses the
640	  generic CEC framework interface.
641	  CEC bus is present in the HDMI connector and enables communication
642	  between compatible devices.
643
644config VIDEO_TEGRA_HDMI_CEC
645	tristate "Tegra HDMI CEC driver"
646	depends on ARCH_TEGRA || COMPILE_TEST
647	select CEC_CORE
648	select CEC_NOTIFIER
649	help
650	  This is a driver for the Tegra HDMI CEC interface. It uses the
651	  generic CEC framework interface.
652	  The CEC bus is present in the HDMI connector and enables communication
653	  between compatible devices.
654
655config VIDEO_SECO_CEC
656	tristate "SECO Boards HDMI CEC driver"
657	depends on (X86 || IA64) || COMPILE_TEST
658	depends on PCI && DMI
659	select CEC_CORE
660	select CEC_NOTIFIER
661	help
662	  This is a driver for SECO Boards integrated CEC interface.
663	  Selecting it will enable support for this device.
664	  CEC bus is present in the HDMI connector and enables communication
665	  between compatible devices.
666
667config VIDEO_SECO_RC
668	bool "SECO Boards IR RC5 support"
669	depends on VIDEO_SECO_CEC
670	depends on RC_CORE=y || RC_CORE = VIDEO_SECO_CEC
671	help
672	  If you say yes here you will get support for the
673	  SECO Boards Consumer-IR in seco-cec driver.
674	  The embedded controller supports RC5 protocol only, default mapping
675	  is set to rc-hauppauge.
676
677endif #CEC_PLATFORM_DRIVERS
678
679menuconfig SDR_PLATFORM_DRIVERS
680	bool "SDR platform devices"
681	depends on MEDIA_SDR_SUPPORT
682	help
683	  Say Y here to enable support for platform-specific SDR Drivers.
684
685if SDR_PLATFORM_DRIVERS
686
687config VIDEO_RCAR_DRIF
688	tristate "Renesas Digital Radio Interface (DRIF)"
689	depends on VIDEO_V4L2
690	depends on ARCH_RENESAS || COMPILE_TEST
691	select VIDEOBUF2_VMALLOC
692	help
693	  Say Y if you want to enable R-Car Gen3 DRIF support. DRIF is Digital
694	  Radio Interface that interfaces with an RF front end chip. It is a
695	  receiver of digital data which uses DMA to transfer received data to
696	  a configured location for an application to use.
697
698	  To compile this driver as a module, choose M here; the module
699	  will be called rcar_drif.
700
701endif # SDR_PLATFORM_DRIVERS
702