xref: /linux/drivers/media/i2c/Kconfig (revision 707df3375124b51048233625a7e1c801e8c8a7fd)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Multimedia Video device configuration
4#
5
6if VIDEO_DEV
7
8comment "IR I2C driver auto-selected by 'Autoselect ancillary drivers'"
9	depends on MEDIA_SUBDRV_AUTOSELECT && I2C && RC_CORE
10
11config VIDEO_IR_I2C
12	tristate "I2C module for IR" if !MEDIA_SUBDRV_AUTOSELECT || EXPERT
13	depends on I2C && RC_CORE
14	default y
15	help
16	  Most boards have an IR chip directly connected via GPIO. However,
17	  some video boards have the IR connected via I2C bus.
18
19	  If your board doesn't have an I2C IR chip, you may disable this
20	  option.
21
22	  In doubt, say Y.
23
24#
25# V4L2 I2C drivers that are related with Camera support
26#
27
28menuconfig VIDEO_CAMERA_SENSOR
29	bool "Camera sensor devices"
30	depends on MEDIA_CAMERA_SUPPORT && I2C
31	select MEDIA_CONTROLLER
32	select V4L2_FWNODE
33	select VIDEO_V4L2_SUBDEV_API
34	default y
35
36if VIDEO_CAMERA_SENSOR
37
38config VIDEO_APTINA_PLL
39	tristate
40
41config VIDEO_CCS_PLL
42	tristate
43
44config VIDEO_ALVIUM_CSI2
45	tristate "Allied Vision ALVIUM MIPI CSI-2 camera support"
46	select V4L2_CCI_I2C
47	help
48	  This is a Video4Linux2 sensor-level driver for the Allied Vision
49	  ALVIUM camera connected via MIPI CSI-2 interface.
50
51	  To compile this driver as a module, choose M here: the
52	  module will be called alvium-csi2.
53
54config VIDEO_AR0521
55	tristate "ON Semiconductor AR0521 sensor support"
56	help
57	  This is a Video4Linux2 sensor driver for the ON Semiconductor
58	  AR0521 camera.
59
60	  To compile this driver as a module, choose M here: the
61	  module will be called ar0521.
62
63config VIDEO_GC0308
64	tristate "GalaxyCore GC0308 sensor support"
65	select V4L2_CCI_I2C
66	help
67	  This is a Video4Linux2 sensor driver for the GalaxyCore
68	  GC0308 camera.
69
70	  To compile this driver as a module, choose M here: the
71	  module will be called gc0308.
72
73config VIDEO_GC05A2
74	tristate "GalaxyCore gc05a2 sensor support"
75	select V4L2_CCI_I2C
76	help
77	  This is a Video4Linux2 sensor driver for the GalaxyCore gc05a2
78	  camera.
79
80	  To compile this driver as a module, choose M here: the
81	  module will be called gc05a2.
82
83config VIDEO_GC08A3
84	tristate "GalaxyCore gc08a3 sensor support"
85	select V4L2_CCI_I2C
86	help
87	  This is a Video4Linux2 sensor driver for the GalaxyCore gc08a3
88	  camera.
89
90	  To compile this driver as a module, choose M here: the
91	  module will be called gc08a3.
92
93config VIDEO_GC2145
94	select V4L2_CCI_I2C
95	tristate "GalaxyCore GC2145 sensor support"
96	help
97	  This is a V4L2 sensor-level driver for GalaxyCore GC2145
98	  2 Mpixel camera.
99
100	  To compile this driver as a module, choose M here: the
101	  module will be called gc2145.
102
103config VIDEO_HI556
104	tristate "Hynix Hi-556 sensor support"
105	help
106	  This is a Video4Linux2 sensor driver for the Hynix
107	  Hi-556 camera.
108
109	  To compile this driver as a module, choose M here: the
110	  module will be called hi556.
111
112config VIDEO_HI846
113	tristate "Hynix Hi-846 sensor support"
114	help
115	  This is a Video4Linux2 sensor driver for the Hynix
116	  Hi-846 camera.
117
118	  To compile this driver as a module, choose M here: the
119	  module will be called hi846.
120
121config VIDEO_HI847
122        tristate "Hynix Hi-847 sensor support"
123        help
124          This is a Video4Linux2 sensor driver for the Hynix
125          Hi-847 camera.
126
127          To compile this driver as a module, choose M here: the
128          module will be called hi847.
129
130config VIDEO_IMX208
131	tristate "Sony IMX208 sensor support"
132	help
133	  This is a Video4Linux2 sensor driver for the Sony
134	  IMX208 camera.
135
136	  To compile this driver as a module, choose M here: the
137	  module will be called imx208.
138
139config VIDEO_IMX214
140	tristate "Sony IMX214 sensor support"
141	depends on GPIOLIB
142	select REGMAP_I2C
143	select V4L2_CCI_I2C
144	help
145	  This is a Video4Linux2 sensor driver for the Sony
146	  IMX214 camera.
147
148	  To compile this driver as a module, choose M here: the
149	  module will be called imx214.
150
151config VIDEO_IMX219
152	tristate "Sony IMX219 sensor support"
153	select V4L2_CCI_I2C
154	help
155	  This is a Video4Linux2 sensor driver for the Sony
156	  IMX219 camera.
157
158	  To compile this driver as a module, choose M here: the
159	  module will be called imx219.
160
161config VIDEO_IMX258
162	tristate "Sony IMX258 sensor support"
163	select V4L2_CCI_I2C
164	help
165	  This is a Video4Linux2 sensor driver for the Sony
166	  IMX258 camera.
167
168	  To compile this driver as a module, choose M here: the
169	  module will be called imx258.
170
171config VIDEO_IMX274
172	tristate "Sony IMX274 sensor support"
173	select REGMAP_I2C
174	help
175	  This is a V4L2 sensor driver for the Sony IMX274
176	  CMOS image sensor.
177
178config VIDEO_IMX283
179	tristate "Sony IMX283 sensor support"
180	select V4L2_CCI_I2C
181	help
182	  This is a V4L2 sensor driver for the Sony IMX283
183	  CMOS image sensor.
184
185	  To compile this driver as a module, choose M here: the
186	  module will be called imx283.
187
188config VIDEO_IMX290
189	tristate "Sony IMX290 sensor support"
190	select REGMAP_I2C
191	select V4L2_CCI_I2C
192	help
193	  This is a Video4Linux2 sensor driver for the Sony
194	  IMX290 camera sensor.
195
196	  To compile this driver as a module, choose M here: the
197	  module will be called imx290.
198
199config VIDEO_IMX296
200	tristate "Sony IMX296 sensor support"
201	help
202	  This is a Video4Linux2 sensor driver for the Sony
203	  IMX296 camera.
204
205	  To compile this driver as a module, choose M here: the
206	  module will be called imx296.
207
208config VIDEO_IMX319
209	tristate "Sony IMX319 sensor support"
210	help
211	  This is a Video4Linux2 sensor driver for the Sony
212	  IMX319 camera.
213
214	  To compile this driver as a module, choose M here: the
215	  module will be called imx319.
216
217config VIDEO_IMX334
218	tristate "Sony IMX334 sensor support"
219	depends on OF_GPIO
220	help
221	  This is a Video4Linux2 sensor driver for the Sony
222	  IMX334 camera.
223
224	  To compile this driver as a module, choose M here: the
225	  module will be called imx334.
226
227config VIDEO_IMX335
228	tristate "Sony IMX335 sensor support"
229	depends on OF_GPIO
230	select V4L2_CCI_I2C
231	help
232	  This is a Video4Linux2 sensor driver for the Sony
233	  IMX335 camera.
234
235	  To compile this driver as a module, choose M here: the
236	  module will be called imx335.
237
238config VIDEO_IMX355
239	tristate "Sony IMX355 sensor support"
240	help
241	  This is a Video4Linux2 sensor driver for the Sony
242	  IMX355 camera.
243
244	  To compile this driver as a module, choose M here: the
245	  module will be called imx355.
246
247config VIDEO_IMX412
248	tristate "Sony IMX412 sensor support"
249	depends on OF_GPIO
250	help
251	  This is a Video4Linux2 sensor driver for the Sony
252	  IMX412 camera.
253
254	  To compile this driver as a module, choose M here: the
255	  module will be called imx412.
256
257config VIDEO_IMX415
258	tristate "Sony IMX415 sensor support"
259	depends on OF_GPIO
260	select V4L2_CCI_I2C
261	help
262	  This is a Video4Linux2 sensor driver for the Sony
263	  IMX415 camera.
264
265	  To compile this driver as a module, choose M here: the
266	  module will be called imx415.
267
268config VIDEO_MAX9271_LIB
269	tristate
270
271config VIDEO_MT9M001
272	tristate "mt9m001 support"
273	help
274	  This driver supports MT9M001 cameras from Micron, monochrome
275	  and colour models.
276
277config VIDEO_MT9M111
278	tristate "mt9m111, mt9m112 and mt9m131 support"
279	help
280	  This driver supports MT9M111, MT9M112 and MT9M131 cameras from
281	  Micron/Aptina
282
283config VIDEO_MT9M114
284	tristate "onsemi MT9M114 sensor support"
285	select V4L2_CCI_I2C
286	help
287	  This is a Video4Linux2 sensor-level driver for the onsemi MT9M114
288	  camera.
289
290	  To compile this driver as a module, choose M here: the
291	  module will be called mt9m114.
292
293config VIDEO_MT9P031
294	tristate "Aptina MT9P031 support"
295	select VIDEO_APTINA_PLL
296	help
297	  This is a Video4Linux2 sensor driver for the Aptina
298	  (Micron) mt9p031 5 Mpixel camera.
299
300config VIDEO_MT9T112
301	tristate "Aptina MT9T111/MT9T112 support"
302	help
303	  This is a Video4Linux2 sensor driver for the Aptina
304	  (Micron) MT9T111 and MT9T112 3 Mpixel camera.
305
306	  To compile this driver as a module, choose M here: the
307	  module will be called mt9t112.
308
309config VIDEO_MT9V011
310	tristate "Micron mt9v011 sensor support"
311	help
312	  This is a Video4Linux2 sensor driver for the Micron
313	  mt0v011 1.3 Mpixel camera.  It currently only works with the
314	  em28xx driver.
315
316config VIDEO_MT9V032
317	tristate "Micron MT9V032 sensor support"
318	select REGMAP_I2C
319	help
320	  This is a Video4Linux2 sensor driver for the Micron
321	  MT9V032 752x480 CMOS sensor.
322
323config VIDEO_MT9V111
324	tristate "Aptina MT9V111 sensor support"
325	help
326	  This is a Video4Linux2 sensor driver for the Aptina/Micron
327	  MT9V111 sensor.
328
329	  To compile this driver as a module, choose M here: the
330	  module will be called mt9v111.
331
332config VIDEO_OG01A1B
333	tristate "OmniVision OG01A1B sensor support"
334	help
335	  This is a Video4Linux2 sensor driver for the OmniVision
336	  OG01A1B camera.
337
338	  To compile this driver as a module, choose M here: the
339	  module will be called og01a1b.
340
341config VIDEO_OV01A10
342	tristate "OmniVision OV01A10 sensor support"
343	help
344	  This is a Video4Linux2 sensor driver for the OmniVision
345	  OV01A10 camera.
346
347	  To compile this driver as a module, choose M here: the
348	  module will be called ov01a10.
349
350config VIDEO_OV02A10
351	tristate "OmniVision OV02A10 sensor support"
352	help
353	  This is a Video4Linux2 sensor driver for the OmniVision
354	  OV02A10 camera.
355
356	  To compile this driver as a module, choose M here: the
357	  module will be called ov02a10.
358
359config VIDEO_OV08D10
360        tristate "OmniVision OV08D10 sensor support"
361        help
362          This is a Video4Linux2 sensor driver for the OmniVision
363          OV08D10 camera sensor.
364
365          To compile this driver as a module, choose M here: the
366          module will be called ov08d10.
367
368config VIDEO_OV08X40
369	tristate "OmniVision OV08X40 sensor support"
370	help
371	  This is a Video4Linux2 sensor driver for the OmniVision
372	  OV08X40 camera.
373
374	  To compile this driver as a module, choose M here: the
375	  module will be called ov08x40.
376
377config VIDEO_OV13858
378	tristate "OmniVision OV13858 sensor support"
379	help
380	  This is a Video4Linux2 sensor driver for the OmniVision
381	  OV13858 camera.
382
383config VIDEO_OV13B10
384	tristate "OmniVision OV13B10 sensor support"
385	help
386	  This is a Video4Linux2 sensor driver for the OmniVision
387	  OV13B10 camera.
388
389config VIDEO_OV2640
390	tristate "OmniVision OV2640 sensor support"
391	help
392	  This is a Video4Linux2 sensor driver for the OmniVision
393	  OV2640 camera.
394
395	  To compile this driver as a module, choose M here: the
396	  module will be called ov2640.
397
398config VIDEO_OV2659
399	tristate "OmniVision OV2659 sensor support"
400	depends on GPIOLIB
401	help
402	  This is a Video4Linux2 sensor driver for the OmniVision
403	  OV2659 camera.
404
405	  To compile this driver as a module, choose M here: the
406	  module will be called ov2659.
407
408config VIDEO_OV2680
409	tristate "OmniVision OV2680 sensor support"
410	select V4L2_CCI_I2C
411	help
412	  This is a Video4Linux2 sensor driver for the OmniVision
413	  OV2680 camera.
414
415	  To compile this driver as a module, choose M here: the
416	  module will be called ov2680.
417
418config VIDEO_OV2685
419	tristate "OmniVision OV2685 sensor support"
420	help
421	  This is a Video4Linux2 sensor driver for the OmniVision
422	  OV2685 camera.
423
424	  To compile this driver as a module, choose M here: the
425	  module will be called ov2685.
426
427config VIDEO_OV2740
428	tristate "OmniVision OV2740 sensor support"
429	depends on ACPI || COMPILE_TEST
430	select REGMAP_I2C
431	help
432	  This is a Video4Linux2 sensor driver for the OmniVision
433	  OV2740 camera.
434
435	  To compile this driver as a module, choose M here: the
436	  module will be called ov2740.
437
438config VIDEO_OV4689
439	tristate "OmniVision OV4689 sensor support"
440	depends on GPIOLIB
441	select V4L2_CCI_I2C
442	help
443	  This is a Video4Linux2 sensor-level driver for the OmniVision
444	  OV4689 camera.
445
446	  To compile this driver as a module, choose M here: the
447	  module will be called ov4689.
448
449config VIDEO_OV5640
450	tristate "OmniVision OV5640 sensor support"
451	depends on OF
452	depends on GPIOLIB
453	help
454	  This is a Video4Linux2 sensor driver for the Omnivision
455	  OV5640 camera sensor with a MIPI CSI-2 interface.
456
457config VIDEO_OV5645
458	tristate "OmniVision OV5645 sensor support"
459	depends on OF
460	help
461	  This is a Video4Linux2 sensor driver for the OmniVision
462	  OV5645 camera.
463
464	  To compile this driver as a module, choose M here: the
465	  module will be called ov5645.
466
467config VIDEO_OV5647
468	tristate "OmniVision OV5647 sensor support"
469	help
470	  This is a Video4Linux2 sensor driver for the OmniVision
471	  OV5647 camera.
472
473	  To compile this driver as a module, choose M here: the
474	  module will be called ov5647.
475
476config VIDEO_OV5648
477	tristate "OmniVision OV5648 sensor support"
478	depends on PM
479	help
480	  This is a Video4Linux2 sensor driver for the OmniVision
481	  OV5648 camera.
482
483	  To compile this driver as a module, choose M here: the
484	  module will be called ov5648.
485
486config VIDEO_OV5670
487	tristate "OmniVision OV5670 sensor support"
488	help
489	  This is a Video4Linux2 sensor driver for the OmniVision
490	  OV5670 camera.
491
492	  To compile this driver as a module, choose M here: the
493	  module will be called ov5670.
494
495config VIDEO_OV5675
496	tristate "OmniVision OV5675 sensor support"
497	help
498	  This is a Video4Linux2 sensor driver for the OmniVision
499	  OV5675 camera.
500
501	  To compile this driver as a module, choose M here: the
502	  module will be called ov5675.
503
504config VIDEO_OV5693
505	tristate "OmniVision OV5693 sensor support"
506	select V4L2_CCI_I2C
507	help
508	  This is a Video4Linux2 sensor driver for the OmniVision
509	  OV5693 camera.
510
511	  To compile this driver as a module, choose M here: the
512	  module will be called ov5693.
513
514config VIDEO_OV5695
515	tristate "OmniVision OV5695 sensor support"
516	help
517	  This is a Video4Linux2 sensor driver for the OmniVision
518	  OV5695 camera.
519
520	  To compile this driver as a module, choose M here: the
521	  module will be called ov5695.
522
523config VIDEO_OV64A40
524	tristate "OmniVision OV64A40 sensor support"
525	select V4L2_CCI_I2C
526	help
527	  This is a Video4Linux2 sensor driver for the OmniVision
528	  OV64A40 camera.
529
530	  To compile this driver as a module, choose M here: the
531	  module will be called ov64a40.
532
533config VIDEO_OV6650
534	tristate "OmniVision OV6650 sensor support"
535	help
536	  This is a Video4Linux2 sensor driver for the OmniVision
537	  OV6650 camera.
538
539	  To compile this driver as a module, choose M here: the
540	  module will be called ov6650.
541
542config VIDEO_OV7251
543	tristate "OmniVision OV7251 sensor support"
544	help
545	  This is a Video4Linux2 sensor driver for the OmniVision
546	  OV7251 camera.
547
548	  To compile this driver as a module, choose M here: the
549	  module will be called ov7251.
550
551config VIDEO_OV7640
552	tristate "OmniVision OV7640 sensor support"
553	help
554	  This is a Video4Linux2 sensor driver for the OmniVision
555	  OV7640 camera.
556
557	  To compile this driver as a module, choose M here: the
558	  module will be called ov7640.
559
560config VIDEO_OV7670
561	tristate "OmniVision OV7670 sensor support"
562	help
563	  This is a Video4Linux2 sensor driver for the OmniVision
564	  OV7670 VGA camera.  It currently only works with the M88ALP01
565	  controller.
566
567config VIDEO_OV772X
568	tristate "OmniVision OV772x sensor support"
569	select REGMAP_SCCB
570	help
571	  This is a Video4Linux2 sensor driver for the OmniVision
572	  OV772x camera.
573
574	  To compile this driver as a module, choose M here: the
575	  module will be called ov772x.
576
577config VIDEO_OV7740
578	tristate "OmniVision OV7740 sensor support"
579	select REGMAP_SCCB
580	help
581	  This is a Video4Linux2 sensor driver for the OmniVision
582	  OV7740 VGA camera sensor.
583
584config VIDEO_OV8856
585	tristate "OmniVision OV8856 sensor support"
586	help
587	  This is a Video4Linux2 sensor driver for the OmniVision
588	  OV8856 camera sensor.
589
590	  To compile this driver as a module, choose M here: the
591	  module will be called ov8856.
592
593config VIDEO_OV8858
594	tristate "OmniVision OV8858 sensor support"
595	depends on PM
596	help
597	  This is a Video4Linux2 sensor driver for OmniVision
598	  OV8858 camera sensor.
599
600	  To compile this driver as a module, choose M here: the
601	  module will be called ov8858.
602
603config VIDEO_OV8865
604	tristate "OmniVision OV8865 sensor support"
605	depends on PM
606	help
607	  This is a Video4Linux2 sensor driver for OmniVision
608	  OV8865 camera sensor.
609
610	  To compile this driver as a module, choose M here: the
611	  module will be called ov8865.
612
613config VIDEO_OV9282
614	tristate "OmniVision OV9282 sensor support"
615	depends on OF_GPIO
616	help
617	  This is a Video4Linux2 sensor driver for the OmniVision
618	  OV9282 camera sensor.
619
620	  To compile this driver as a module, choose M here: the
621	  module will be called ov9282.
622
623config VIDEO_OV9640
624	tristate "OmniVision OV9640 sensor support"
625	help
626	  This is a Video4Linux2 sensor driver for the OmniVision
627	  OV9640 camera sensor.
628
629config VIDEO_OV9650
630	tristate "OmniVision OV9650/OV9652 sensor support"
631	select REGMAP_SCCB
632	help
633	  This is a V4L2 sensor driver for the Omnivision
634	  OV9650 and OV9652 camera sensors.
635
636config VIDEO_OV9734
637	tristate "OmniVision OV9734 sensor support"
638	depends on ACPI || COMPILE_TEST
639	help
640	  This is a Video4Linux2 sensor driver for the OmniVision
641	  OV9734 camera.
642
643	  To compile this driver as a module, choose M here: the
644	  module's name is ov9734.
645
646config VIDEO_RDACM20
647	tristate "IMI RDACM20 camera support"
648	select VIDEO_MAX9271_LIB
649	help
650	  This driver supports the IMI RDACM20 GMSL camera, used in
651	  ADAS systems.
652
653	  This camera should be used in conjunction with a GMSL
654	  deserialiser such as the MAX9286.
655
656config VIDEO_RDACM21
657	tristate "IMI RDACM21 camera support"
658	select VIDEO_MAX9271_LIB
659	help
660	  This driver supports the IMI RDACM21 GMSL camera, used in
661	  ADAS systems.
662
663	  This camera should be used in conjunction with a GMSL
664	  deserialiser such as the MAX9286.
665
666config VIDEO_RJ54N1
667	tristate "Sharp RJ54N1CB0C sensor support"
668	help
669	  This is a V4L2 sensor driver for Sharp RJ54N1CB0C CMOS image
670	  sensor.
671
672	  To compile this driver as a module, choose M here: the
673	  module will be called rj54n1.
674
675config VIDEO_S5C73M3
676	tristate "Samsung S5C73M3 sensor support"
677	depends on SPI
678	help
679	  This is a V4L2 sensor driver for Samsung S5C73M3
680	  8 Mpixel camera.
681
682config VIDEO_S5K5BAF
683	tristate "Samsung S5K5BAF sensor support"
684	help
685	  This is a V4L2 sensor driver for Samsung S5K5BAF 2M
686	  camera sensor with an embedded SoC image signal processor.
687
688config VIDEO_S5K6A3
689	tristate "Samsung S5K6A3 sensor support"
690	help
691	  This is a V4L2 sensor driver for Samsung S5K6A3 raw
692	  camera sensor.
693
694config VIDEO_VGXY61
695	tristate "ST VGXY61 sensor support"
696	select V4L2_CCI_I2C
697	depends on OF && GPIOLIB
698	help
699	  This is a Video4Linux2 sensor driver for the ST VGXY61
700	  camera sensor.
701
702source "drivers/media/i2c/ccs/Kconfig"
703source "drivers/media/i2c/et8ek8/Kconfig"
704
705endif
706
707menu "Camera ISPs"
708	visible if MEDIA_CAMERA_SUPPORT
709
710config VIDEO_THP7312
711	tristate "THine THP7312 support"
712	depends on I2C
713	select FW_LOADER
714	select FW_UPLOAD
715	select MEDIA_CONTROLLER
716	select V4L2_CCI_I2C
717	select V4L2_FWNODE
718	select VIDEO_V4L2_SUBDEV_API
719	help
720	  This is a Video4Linux2 sensor-level driver for the THine
721	  THP7312 ISP.
722
723endmenu
724
725menu "Lens drivers"
726	visible if MEDIA_CAMERA_SUPPORT
727
728config VIDEO_AD5820
729	tristate "AD5820 lens voice coil support"
730	depends on GPIOLIB && I2C && VIDEO_DEV
731	select MEDIA_CONTROLLER
732	select V4L2_ASYNC
733	help
734	  This is a driver for the AD5820 camera lens voice coil.
735	  It is used for example in Nokia N900 (RX-51).
736
737config VIDEO_AK7375
738	tristate "AK7375 lens voice coil support"
739	depends on I2C && VIDEO_DEV
740	select MEDIA_CONTROLLER
741	select VIDEO_V4L2_SUBDEV_API
742	select V4L2_ASYNC
743	help
744	  This is a driver for the AK7375 camera lens voice coil.
745	  AK7375 is a 12 bit DAC with 120mA output current sink
746	  capability. This is designed for linear control of
747	  voice coil motors, controlled via I2C serial interface.
748
749config VIDEO_DW9714
750	tristate "DW9714 lens voice coil support"
751	depends on I2C && VIDEO_DEV
752	select MEDIA_CONTROLLER
753	select VIDEO_V4L2_SUBDEV_API
754	select V4L2_ASYNC
755	help
756	  This is a driver for the DW9714 camera lens voice coil.
757	  DW9714 is a 10 bit DAC with 120mA output current sink
758	  capability. This is designed for linear control of
759	  voice coil motors, controlled via I2C serial interface.
760
761config VIDEO_DW9719
762	tristate "DW9719 lens voice coil support"
763	depends on I2C && VIDEO_DEV
764	select MEDIA_CONTROLLER
765	select VIDEO_V4L2_SUBDEV_API
766	select V4L2_ASYNC
767	select V4L2_CCI_I2C
768	help
769	  This is a driver for the DW9719 camera lens voice coil.
770	  This is designed for linear control of voice coil motors,
771	  controlled via I2C serial interface.
772
773config VIDEO_DW9768
774	tristate "DW9768 lens voice coil support"
775	depends on I2C && VIDEO_DEV
776	select MEDIA_CONTROLLER
777	select VIDEO_V4L2_SUBDEV_API
778	select V4L2_FWNODE
779	help
780	  This is a driver for the DW9768 camera lens voice coil.
781	  DW9768 is a 10 bit DAC with 100mA output current sink
782	  capability. This is designed for linear control of
783	  voice coil motors, controlled via I2C serial interface.
784
785config VIDEO_DW9807_VCM
786	tristate "DW9807 lens voice coil support"
787	depends on I2C && VIDEO_DEV
788	select MEDIA_CONTROLLER
789	select VIDEO_V4L2_SUBDEV_API
790	select V4L2_ASYNC
791	help
792	  This is a driver for the DW9807 camera lens voice coil.
793	  DW9807 is a 10 bit DAC with 100mA output current sink
794	  capability. This is designed for linear control of
795	  voice coil motors, controlled via I2C serial interface.
796
797endmenu
798
799menu "Flash devices"
800	visible if MEDIA_CAMERA_SUPPORT
801
802config VIDEO_ADP1653
803	tristate "ADP1653 flash support"
804	depends on I2C && VIDEO_DEV
805	select MEDIA_CONTROLLER
806	select V4L2_ASYNC
807	help
808	  This is a driver for the ADP1653 flash controller. It is used for
809	  example in Nokia N900.
810
811config VIDEO_LM3560
812	tristate "LM3560 dual flash driver support"
813	depends on I2C && VIDEO_DEV
814	select MEDIA_CONTROLLER
815	select REGMAP_I2C
816	select V4L2_ASYNC
817	help
818	  This is a driver for the lm3560 dual flash controllers. It controls
819	  flash, torch LEDs.
820
821config VIDEO_LM3646
822	tristate "LM3646 dual flash driver support"
823	depends on I2C && VIDEO_DEV
824	select MEDIA_CONTROLLER
825	select REGMAP_I2C
826	select V4L2_ASYNC
827	help
828	  This is a driver for the lm3646 dual flash controllers. It controls
829	  flash, torch LEDs.
830
831endmenu
832
833#
834# V4L2 I2C drivers that aren't related with Camera support
835#
836
837comment "audio, video and radio I2C drivers auto-selected by 'Autoselect ancillary drivers'"
838	depends on MEDIA_HIDE_ANCILLARY_SUBDRV
839#
840# Encoder / Decoder module configuration
841#
842
843menu "Audio decoders, processors and mixers"
844	visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
845
846config VIDEO_CS3308
847	tristate "Cirrus Logic CS3308 audio ADC"
848	depends on VIDEO_DEV && I2C
849	help
850	  Support for the Cirrus Logic CS3308 High Performance 8-Channel
851	  Analog Volume Control
852
853	  To compile this driver as a module, choose M here: the
854	  module will be called cs3308.
855
856config VIDEO_CS5345
857	tristate "Cirrus Logic CS5345 audio ADC"
858	depends on VIDEO_DEV && I2C
859	help
860	  Support for the Cirrus Logic CS5345 24-bit, 192 kHz
861	  stereo A/D converter.
862
863	  To compile this driver as a module, choose M here: the
864	  module will be called cs5345.
865
866config VIDEO_CS53L32A
867	tristate "Cirrus Logic CS53L32A audio ADC"
868	depends on VIDEO_DEV && I2C
869	help
870	  Support for the Cirrus Logic CS53L32A low voltage
871	  stereo A/D converter.
872
873	  To compile this driver as a module, choose M here: the
874	  module will be called cs53l32a.
875
876config VIDEO_MSP3400
877	tristate "Micronas MSP34xx audio decoders"
878	depends on VIDEO_DEV && I2C
879	help
880	  Support for the Micronas MSP34xx series of audio decoders.
881
882	  To compile this driver as a module, choose M here: the
883	  module will be called msp3400.
884
885config VIDEO_SONY_BTF_MPX
886	tristate "Sony BTF's internal MPX"
887	depends on VIDEO_DEV && I2C
888	help
889	  Support for the internal MPX of the Sony BTF-PG472Z tuner.
890
891	  To compile this driver as a module, choose M here: the
892	  module will be called sony-btf-mpx.
893
894config VIDEO_TDA1997X
895	tristate "NXP TDA1997x HDMI receiver"
896	depends on VIDEO_DEV && I2C
897	depends on SND_SOC
898	select HDMI
899	select SND_PCM
900	select V4L2_FWNODE
901	select MEDIA_CONTROLLER
902	select VIDEO_V4L2_SUBDEV_API
903	help
904	  V4L2 subdevice driver for the NXP TDA1997x HDMI receivers.
905
906	  To compile this driver as a module, choose M here: the
907	  module will be called tda1997x.
908
909config VIDEO_TDA7432
910	tristate "Philips TDA7432 audio processor"
911	depends on VIDEO_DEV && I2C
912	help
913	  Support for tda7432 audio decoder chip found on some bt8xx boards.
914
915	  To compile this driver as a module, choose M here: the
916	  module will be called tda7432.
917
918config VIDEO_TDA9840
919	tristate "Philips TDA9840 audio processor"
920	depends on I2C
921	help
922	  Support for tda9840 audio decoder chip found on some Zoran boards.
923
924	  To compile this driver as a module, choose M here: the
925	  module will be called tda9840.
926
927config VIDEO_TEA6415C
928	tristate "Philips TEA6415C audio processor"
929	depends on I2C
930	help
931	  Support for tea6415c audio decoder chip found on some bt8xx boards.
932
933	  To compile this driver as a module, choose M here: the
934	  module will be called tea6415c.
935
936config VIDEO_TEA6420
937	tristate "Philips TEA6420 audio processor"
938	depends on I2C
939	help
940	  Support for tea6420 audio decoder chip found on some bt8xx boards.
941
942	  To compile this driver as a module, choose M here: the
943	  module will be called tea6420.
944
945config VIDEO_TLV320AIC23B
946	tristate "Texas Instruments TLV320AIC23B audio codec"
947	depends on VIDEO_DEV && I2C
948	help
949	  Support for the Texas Instruments TLV320AIC23B audio codec.
950
951	  To compile this driver as a module, choose M here: the
952	  module will be called tlv320aic23b.
953
954config VIDEO_TVAUDIO
955	tristate "Simple audio decoder chips"
956	depends on VIDEO_DEV && I2C
957	help
958	  Support for several audio decoder chips found on some bt8xx boards:
959	  Philips: tda9840, tda9873h, tda9874h/a, tda9850, tda985x, tea6300,
960		   tea6320, tea6420, tda8425, ta8874z.
961	  Microchip: pic16c54 based design on ProVideo PV951 board.
962
963	  To compile this driver as a module, choose M here: the
964	  module will be called tvaudio.
965
966config VIDEO_UDA1342
967	tristate "Philips UDA1342 audio codec"
968	depends on VIDEO_DEV && I2C
969	help
970	  Support for the Philips UDA1342 audio codec.
971
972	  To compile this driver as a module, choose M here: the
973	  module will be called uda1342.
974
975config VIDEO_VP27SMPX
976	tristate "Panasonic VP27's internal MPX"
977	depends on VIDEO_DEV && I2C
978	help
979	  Support for the internal MPX of the Panasonic VP27s tuner.
980
981	  To compile this driver as a module, choose M here: the
982	  module will be called vp27smpx.
983
984config VIDEO_WM8739
985	tristate "Wolfson Microelectronics WM8739 stereo audio ADC"
986	depends on VIDEO_DEV && I2C
987	help
988	  Support for the Wolfson Microelectronics WM8739
989	  stereo A/D Converter.
990
991	  To compile this driver as a module, choose M here: the
992	  module will be called wm8739.
993
994config VIDEO_WM8775
995	tristate "Wolfson Microelectronics WM8775 audio ADC with input mixer"
996	depends on VIDEO_DEV && I2C
997	help
998	  Support for the Wolfson Microelectronics WM8775 high
999	  performance stereo A/D Converter with a 4 channel input mixer.
1000
1001	  To compile this driver as a module, choose M here: the
1002	  module will be called wm8775.
1003
1004endmenu
1005
1006menu "RDS decoders"
1007	visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
1008
1009config VIDEO_SAA6588
1010	tristate "SAA6588 Radio Chip RDS decoder support"
1011	depends on VIDEO_DEV && I2C
1012
1013	help
1014	  Support for this Radio Data System (RDS) decoder. This allows
1015	  seeing radio station identification transmitted using this
1016	  standard.
1017
1018	  To compile this driver as a module, choose M here: the
1019	  module will be called saa6588.
1020
1021endmenu
1022
1023menu "Video decoders"
1024	visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
1025
1026config VIDEO_ADV7180
1027	tristate "Analog Devices ADV7180 decoder"
1028	depends on GPIOLIB && VIDEO_DEV && I2C
1029	select MEDIA_CONTROLLER
1030	select VIDEO_V4L2_SUBDEV_API
1031	select V4L2_ASYNC
1032	help
1033	  Support for the Analog Devices ADV7180 video decoder.
1034
1035	  To compile this driver as a module, choose M here: the
1036	  module will be called adv7180.
1037
1038config VIDEO_ADV7183
1039	tristate "Analog Devices ADV7183 decoder"
1040	depends on VIDEO_DEV && I2C
1041	help
1042	  V4l2 subdevice driver for the Analog Devices
1043	  ADV7183 video decoder.
1044
1045	  To compile this driver as a module, choose M here: the
1046	  module will be called adv7183.
1047
1048config VIDEO_ADV748X
1049	tristate "Analog Devices ADV748x decoder"
1050	depends on VIDEO_DEV && I2C
1051	depends on OF
1052	select MEDIA_CONTROLLER
1053	select VIDEO_V4L2_SUBDEV_API
1054	select REGMAP_I2C
1055	select V4L2_FWNODE
1056	help
1057	  V4L2 subdevice driver for the Analog Devices
1058	  ADV7481 and ADV7482 HDMI/Analog video decoders.
1059
1060	  To compile this driver as a module, choose M here: the
1061	  module will be called adv748x.
1062
1063config VIDEO_ADV7604
1064	tristate "Analog Devices ADV7604 decoder"
1065	depends on VIDEO_DEV && I2C
1066	depends on GPIOLIB || COMPILE_TEST
1067	select MEDIA_CONTROLLER
1068	select VIDEO_V4L2_SUBDEV_API
1069	select REGMAP_I2C
1070	select HDMI
1071	select V4L2_FWNODE
1072	help
1073	  Support for the Analog Devices ADV7604 video decoder.
1074
1075	  This is a Analog Devices Component/Graphics Digitizer
1076	  with 4:1 Multiplexed HDMI Receiver.
1077
1078	  To compile this driver as a module, choose M here: the
1079	  module will be called adv7604.
1080
1081config VIDEO_ADV7604_CEC
1082	bool "Enable Analog Devices ADV7604 CEC support"
1083	depends on VIDEO_ADV7604
1084	select CEC_CORE
1085	help
1086	  When selected the adv7604 will support the optional
1087	  HDMI CEC feature.
1088
1089config VIDEO_ADV7842
1090	tristate "Analog Devices ADV7842 decoder"
1091	depends on VIDEO_DEV && I2C
1092	select MEDIA_CONTROLLER
1093	select VIDEO_V4L2_SUBDEV_API
1094	select HDMI
1095	help
1096	  Support for the Analog Devices ADV7842 video decoder.
1097
1098	  This is a Analog Devices Component/Graphics/SD Digitizer
1099	  with 2:1 Multiplexed HDMI Receiver.
1100
1101	  To compile this driver as a module, choose M here: the
1102	  module will be called adv7842.
1103
1104config VIDEO_ADV7842_CEC
1105	bool "Enable Analog Devices ADV7842 CEC support"
1106	depends on VIDEO_ADV7842
1107	select CEC_CORE
1108	help
1109	  When selected the adv7842 will support the optional
1110	  HDMI CEC feature.
1111
1112config VIDEO_BT819
1113	tristate "BT819A VideoStream decoder"
1114	depends on VIDEO_DEV && I2C
1115	help
1116	  Support for BT819A video decoder.
1117
1118	  To compile this driver as a module, choose M here: the
1119	  module will be called bt819.
1120
1121config VIDEO_BT856
1122	tristate "BT856 VideoStream decoder"
1123	depends on VIDEO_DEV && I2C
1124	help
1125	  Support for BT856 video decoder.
1126
1127	  To compile this driver as a module, choose M here: the
1128	  module will be called bt856.
1129
1130config VIDEO_BT866
1131	tristate "BT866 VideoStream decoder"
1132	depends on VIDEO_DEV && I2C
1133	help
1134	  Support for BT866 video decoder.
1135
1136	  To compile this driver as a module, choose M here: the
1137	  module will be called bt866.
1138
1139config VIDEO_ISL7998X
1140	tristate "Intersil ISL7998x video decoder"
1141	depends on VIDEO_DEV && I2C
1142	depends on OF_GPIO
1143	select MEDIA_CONTROLLER
1144	select VIDEO_V4L2_SUBDEV_API
1145	select V4L2_FWNODE
1146	help
1147	  Support for Intersil ISL7998x analog to MIPI-CSI2 or
1148	  BT.656 decoder.
1149
1150config VIDEO_LT6911UXE
1151	tristate "Lontium LT6911UXE decoder"
1152	depends on ACPI && VIDEO_DEV && I2C
1153	select V4L2_FWNODE
1154	select V4L2_CCI_I2C
1155	select MEDIA_CONTROLLER
1156	select VIDEO_V4L2_SUBDEV_API
1157	help
1158	  This is a Video4Linux2 sensor-level driver for the Lontium
1159	  LT6911UXE HDMI to MIPI CSI-2 bridge.
1160
1161	  To compile this driver as a module, choose M here: the
1162	  module will be called lt6911uxe.
1163
1164config VIDEO_KS0127
1165	tristate "KS0127 video decoder"
1166	depends on VIDEO_DEV && I2C
1167	help
1168	  Support for KS0127 video decoder.
1169
1170	  This chip is used on AverMedia AVS6EYES Zoran-based MJPEG
1171	  cards.
1172
1173	  To compile this driver as a module, choose M here: the
1174	  module will be called ks0127.
1175
1176config VIDEO_MAX9286
1177	tristate "Maxim MAX9286 GMSL deserializer support"
1178	depends on I2C && I2C_MUX
1179	depends on VIDEO_DEV
1180	depends on OF_GPIO
1181	select V4L2_FWNODE
1182	select VIDEO_V4L2_SUBDEV_API
1183	select MEDIA_CONTROLLER
1184	help
1185	  This driver supports the Maxim MAX9286 GMSL deserializer.
1186
1187	  To compile this driver as a module, choose M here: the
1188	  module will be called max9286.
1189
1190config VIDEO_ML86V7667
1191	tristate "OKI ML86V7667 video decoder"
1192	depends on VIDEO_DEV && I2C
1193	help
1194	  Support for the OKI Semiconductor ML86V7667 video decoder.
1195
1196	  To compile this driver as a module, choose M here: the
1197	  module will be called ml86v7667.
1198
1199config VIDEO_SAA7110
1200	tristate "Philips SAA7110 video decoder"
1201	depends on VIDEO_DEV && I2C
1202	help
1203	  Support for the Philips SAA7110 video decoders.
1204
1205	  To compile this driver as a module, choose M here: the
1206	  module will be called saa7110.
1207
1208config VIDEO_SAA711X
1209	tristate "Philips SAA7111/3/4/5 video decoders"
1210	depends on VIDEO_DEV && I2C
1211	help
1212	  Support for the Philips SAA7111/3/4/5 video decoders.
1213
1214	  To compile this driver as a module, choose M here: the
1215	  module will be called saa7115.
1216
1217config VIDEO_TC358743
1218	tristate "Toshiba TC358743 decoder"
1219	depends on VIDEO_DEV && I2C
1220	select MEDIA_CONTROLLER
1221	select VIDEO_V4L2_SUBDEV_API
1222	select HDMI
1223	select V4L2_FWNODE
1224	help
1225	  Support for the Toshiba TC358743 HDMI to MIPI CSI-2 bridge.
1226
1227	  To compile this driver as a module, choose M here: the
1228	  module will be called tc358743.
1229
1230config VIDEO_TC358743_CEC
1231	bool "Enable Toshiba TC358743 CEC support"
1232	depends on VIDEO_TC358743
1233	select CEC_CORE
1234	help
1235	  When selected the tc358743 will support the optional
1236	  HDMI CEC feature.
1237
1238config VIDEO_TC358746
1239	tristate "Toshiba TC358746 parallel-CSI2 bridge"
1240	depends on VIDEO_DEV && PM && I2C
1241	select VIDEO_V4L2_SUBDEV_API
1242	select MEDIA_CONTROLLER
1243	select V4L2_FWNODE
1244	select GENERIC_PHY
1245	select GENERIC_PHY_MIPI_DPHY
1246	select REGMAP_I2C
1247	help
1248	  Support for the Toshiba TC358746 parallel to MIPI CSI-2 bridge.
1249	  The bridge can work in both directions but currently only the
1250	  parallel-in / csi-out path is supported.
1251
1252	  To compile this driver as a module, choose M here: the
1253	  module will be called tc358746.
1254
1255config VIDEO_TVP514X
1256	tristate "Texas Instruments TVP514x video decoder"
1257	depends on VIDEO_DEV && I2C
1258	select V4L2_FWNODE
1259	help
1260	  This is a Video4Linux2 sensor driver for the TI TVP5146/47
1261	  decoder. It is currently working with the TI OMAP3 camera
1262	  controller.
1263
1264	  To compile this driver as a module, choose M here: the
1265	  module will be called tvp514x.
1266
1267config VIDEO_TVP5150
1268	tristate "Texas Instruments TVP5150 video decoder"
1269	depends on VIDEO_DEV && I2C
1270	select V4L2_FWNODE
1271	select REGMAP_I2C
1272	help
1273	  Support for the Texas Instruments TVP5150 video decoder.
1274
1275	  To compile this driver as a module, choose M here: the
1276	  module will be called tvp5150.
1277
1278config VIDEO_TVP7002
1279	tristate "Texas Instruments TVP7002 video decoder"
1280	depends on VIDEO_DEV && I2C
1281	select V4L2_FWNODE
1282	help
1283	  Support for the Texas Instruments TVP7002 video decoder.
1284
1285	  To compile this driver as a module, choose M here: the
1286	  module will be called tvp7002.
1287
1288config VIDEO_TW2804
1289	tristate "Techwell TW2804 multiple video decoder"
1290	depends on VIDEO_DEV && I2C
1291	help
1292	  Support for the Techwell tw2804 multiple video decoder.
1293
1294	  To compile this driver as a module, choose M here: the
1295	  module will be called tw2804.
1296
1297config VIDEO_TW9900
1298	tristate "Techwell TW9900 video decoder"
1299	depends on GPIOLIB
1300	depends on VIDEO_DEV && I2C
1301	depends on PM
1302	select MEDIA_CONTROLLER
1303	select VIDEO_V4L2_SUBDEV_API
1304	select V4L2_ASYNC
1305	help
1306	  Support for the Techwell TW9900 multi-standard video decoder.
1307	  It supports NTSC, PAL standards with auto-detection features.
1308
1309	  To compile this driver as a module, choose M here: the
1310	  module will be called tw9900.
1311
1312config VIDEO_TW9903
1313	tristate "Techwell TW9903 video decoder"
1314	depends on VIDEO_DEV && I2C
1315	help
1316	  Support for the Techwell tw9903 multi-standard video decoder
1317	  with high quality down scaler.
1318
1319	  To compile this driver as a module, choose M here: the
1320	  module will be called tw9903.
1321
1322config VIDEO_TW9906
1323	tristate "Techwell TW9906 video decoder"
1324	depends on VIDEO_DEV && I2C
1325	help
1326	  Support for the Techwell tw9906 enhanced multi-standard comb filter
1327	  video decoder with YCbCr input support.
1328
1329	  To compile this driver as a module, choose M here: the
1330	  module will be called tw9906.
1331
1332config VIDEO_TW9910
1333	tristate "Techwell TW9910 video decoder"
1334	depends on VIDEO_DEV && I2C
1335	select V4L2_ASYNC
1336	help
1337	  Support for Techwell TW9910 NTSC/PAL/SECAM video decoder.
1338
1339	  To compile this driver as a module, choose M here: the
1340	  module will be called tw9910.
1341
1342config VIDEO_VPX3220
1343	tristate "vpx3220a, vpx3216b & vpx3214c video decoders"
1344	depends on VIDEO_DEV && I2C
1345	help
1346	  Support for VPX322x video decoders.
1347
1348	  To compile this driver as a module, choose M here: the
1349	  module will be called vpx3220.
1350
1351comment "Video and audio decoders"
1352
1353config VIDEO_SAA717X
1354	tristate "Philips SAA7171/3/4 audio/video decoders"
1355	depends on VIDEO_DEV && I2C
1356	help
1357	  Support for the Philips SAA7171/3/4 audio/video decoders.
1358
1359	  To compile this driver as a module, choose M here: the
1360	  module will be called saa717x.
1361
1362source "drivers/media/i2c/cx25840/Kconfig"
1363
1364endmenu
1365
1366menu "Video encoders"
1367	visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
1368
1369config VIDEO_ADV7170
1370	tristate "Analog Devices ADV7170 video encoder"
1371	depends on VIDEO_DEV && I2C
1372	help
1373	  Support for the Analog Devices ADV7170 video encoder driver
1374
1375	  To compile this driver as a module, choose M here: the
1376	  module will be called adv7170.
1377
1378config VIDEO_ADV7175
1379	tristate "Analog Devices ADV7175 video encoder"
1380	depends on VIDEO_DEV && I2C
1381	help
1382	  Support for the Analog Devices ADV7175 video encoder driver
1383
1384	  To compile this driver as a module, choose M here: the
1385	  module will be called adv7175.
1386
1387config VIDEO_ADV7343
1388	tristate "ADV7343 video encoder"
1389	depends on I2C
1390	select V4L2_ASYNC
1391	help
1392	  Support for Analog Devices I2C bus based ADV7343 encoder.
1393
1394	  To compile this driver as a module, choose M here: the
1395	  module will be called adv7343.
1396
1397config VIDEO_ADV7393
1398	tristate "ADV7393 video encoder"
1399	depends on I2C
1400	help
1401	  Support for Analog Devices I2C bus based ADV7393 encoder.
1402
1403	  To compile this driver as a module, choose M here: the
1404	  module will be called adv7393.
1405
1406config VIDEO_ADV7511
1407	tristate "Analog Devices ADV7511 encoder"
1408	depends on VIDEO_DEV && I2C
1409	depends on DRM_I2C_ADV7511=n || COMPILE_TEST
1410	select MEDIA_CONTROLLER
1411	select VIDEO_V4L2_SUBDEV_API
1412	select HDMI
1413	help
1414	  Support for the Analog Devices ADV7511 video encoder.
1415
1416	  This is a Analog Devices HDMI transmitter.
1417
1418	  To compile this driver as a module, choose M here: the
1419	  module will be called adv7511.
1420
1421config VIDEO_ADV7511_CEC
1422	bool "Enable Analog Devices ADV7511 CEC support"
1423	depends on VIDEO_ADV7511
1424	select CEC_CORE
1425	help
1426	  When selected the adv7511 will support the optional
1427	  HDMI CEC feature.
1428
1429config VIDEO_AK881X
1430	tristate "AK8813/AK8814 video encoders"
1431	depends on I2C
1432	help
1433	  Video output driver for AKM AK8813 and AK8814 TV encoders
1434
1435config VIDEO_SAA7127
1436	tristate "Philips SAA7127/9 digital video encoders"
1437	depends on VIDEO_DEV && I2C
1438	help
1439	  Support for the Philips SAA7127/9 digital video encoders.
1440
1441	  To compile this driver as a module, choose M here: the
1442	  module will be called saa7127.
1443
1444config VIDEO_SAA7185
1445	tristate "Philips SAA7185 video encoder"
1446	depends on VIDEO_DEV && I2C
1447	help
1448	  Support for the Philips SAA7185 video encoder.
1449
1450	  To compile this driver as a module, choose M here: the
1451	  module will be called saa7185.
1452
1453config VIDEO_THS8200
1454	tristate "Texas Instruments THS8200 video encoder"
1455	depends on VIDEO_DEV && I2C
1456	select V4L2_ASYNC
1457	help
1458	  Support for the Texas Instruments THS8200 video encoder.
1459
1460	  To compile this driver as a module, choose M here: the
1461	  module will be called ths8200.
1462
1463endmenu
1464
1465menu "Video improvement chips"
1466	visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
1467
1468config VIDEO_UPD64031A
1469	tristate "NEC Electronics uPD64031A Ghost Reduction"
1470	depends on VIDEO_DEV && I2C
1471	select V4L2_ASYNC
1472	help
1473	  Support for the NEC Electronics uPD64031A Ghost Reduction
1474	  video chip. It is most often found in NTSC TV cards made for
1475	  Japan and is used to reduce the 'ghosting' effect that can
1476	  be present in analog TV broadcasts.
1477
1478	  To compile this driver as a module, choose M here: the
1479	  module will be called upd64031a.
1480
1481config VIDEO_UPD64083
1482	tristate "NEC Electronics uPD64083 3-Dimensional Y/C separation"
1483	depends on VIDEO_DEV && I2C
1484	help
1485	  Support for the NEC Electronics uPD64083 3-Dimensional Y/C
1486	  separation video chip. It is used to improve the quality of
1487	  the colors of a composite signal.
1488
1489	  To compile this driver as a module, choose M here: the
1490	  module will be called upd64083.
1491
1492endmenu
1493
1494menu "Audio/Video compression chips"
1495	visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
1496
1497config VIDEO_SAA6752HS
1498	tristate "Philips SAA6752HS MPEG-2 Audio/Video Encoder"
1499	depends on VIDEO_DEV && I2C
1500	select CRC32
1501	help
1502	  Support for the Philips SAA6752HS MPEG-2 video and MPEG-audio/AC-3
1503	  audio encoder with multiplexer.
1504
1505	  To compile this driver as a module, choose M here: the
1506	  module will be called saa6752hs.
1507
1508endmenu
1509
1510menu "SDR tuner chips"
1511	visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
1512
1513config SDR_MAX2175
1514	tristate "Maxim 2175 RF to Bits tuner"
1515	depends on VIDEO_DEV && MEDIA_SDR_SUPPORT && I2C
1516	select REGMAP_I2C
1517	select V4L2_ASYNC
1518	help
1519	  Support for Maxim 2175 tuner. It is an advanced analog/digital
1520	  radio receiver with RF-to-Bits front-end designed for SDR solutions.
1521
1522	  To compile this driver as a module, choose M here; the
1523	  module will be called max2175.
1524
1525endmenu
1526
1527menu "Miscellaneous helper chips"
1528	visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
1529
1530config VIDEO_I2C
1531	tristate "I2C transport video support"
1532	depends on VIDEO_DEV && I2C
1533	select VIDEOBUF2_VMALLOC
1534	imply HWMON
1535	help
1536	  Enable the I2C transport video support which supports the
1537	  following:
1538	   * Panasonic AMG88xx Grid-Eye Sensors
1539	   * Melexis MLX90640 Thermal Cameras
1540
1541	  To compile this driver as a module, choose M here: the
1542	  module will be called video-i2c
1543
1544config VIDEO_M52790
1545	tristate "Mitsubishi M52790 A/V switch"
1546	depends on VIDEO_DEV && I2C
1547	help
1548	 Support for the Mitsubishi M52790 A/V switch.
1549
1550	 To compile this driver as a module, choose M here: the
1551	 module will be called m52790.
1552
1553config VIDEO_ST_MIPID02
1554	tristate "STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge"
1555	depends on I2C && VIDEO_DEV
1556	select MEDIA_CONTROLLER
1557	select VIDEO_V4L2_SUBDEV_API
1558	select V4L2_CCI_I2C
1559	select V4L2_FWNODE
1560	help
1561	  Support for STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge.
1562	  It is used to allow usage of CSI-2 sensor with PARALLEL port
1563	  controller.
1564
1565	  To compile this driver as a module, choose M here: the
1566	  module will be called st-mipid02.
1567
1568config VIDEO_THS7303
1569	tristate "THS7303/53 Video Amplifier"
1570	depends on VIDEO_DEV && I2C
1571	select V4L2_ASYNC
1572	help
1573	  Support for TI THS7303/53 video amplifier
1574
1575	  To compile this driver as a module, choose M here: the
1576	  module will be called ths7303.
1577
1578endmenu
1579
1580#
1581# Video serializers and deserializers (e.g. FPD-Link)
1582#
1583
1584menu "Video serializers and deserializers"
1585
1586config VIDEO_DS90UB913
1587	tristate "TI DS90UB913 FPD-Link III Serializer"
1588	depends on OF && I2C && VIDEO_DEV && COMMON_CLK
1589	select I2C_ATR
1590	select MEDIA_CONTROLLER
1591	select GPIOLIB
1592	select REGMAP_I2C
1593	select V4L2_FWNODE
1594	select VIDEO_V4L2_SUBDEV_API
1595	help
1596	  Device driver for the Texas Instruments DS90UB913
1597	  FPD-Link III Serializer.
1598
1599config VIDEO_DS90UB953
1600	tristate "TI FPD-Link III/IV CSI-2 Serializers"
1601	depends on OF && I2C && VIDEO_DEV && COMMON_CLK
1602	select I2C_ATR
1603	select MEDIA_CONTROLLER
1604	select GPIOLIB
1605	select REGMAP_I2C
1606	select V4L2_FWNODE
1607	select VIDEO_V4L2_SUBDEV_API
1608	help
1609	  Device driver for the Texas Instruments DS90UB953
1610	  FPD-Link III Serializer and DS90UB971 FPD-Link IV Serializer.
1611
1612config VIDEO_DS90UB960
1613	tristate "TI FPD-Link III/IV Deserializers"
1614	depends on OF && I2C && VIDEO_DEV && COMMON_CLK
1615	select I2C_ATR
1616	select MEDIA_CONTROLLER
1617	select GPIOLIB
1618	select REGMAP_I2C
1619	select V4L2_FWNODE
1620	select VIDEO_V4L2_SUBDEV_API
1621	help
1622	  Device driver for the Texas Instruments DS90UB960
1623	  FPD-Link III Deserializer and DS90UB9702 FPD-Link IV Deserializer.
1624
1625config VIDEO_MAX96714
1626	tristate "Maxim MAX96714 GMSL2 deserializer"
1627	depends on OF && I2C && VIDEO_DEV
1628	select I2C_MUX
1629	select MEDIA_CONTROLLER
1630	select GPIOLIB
1631	select V4L2_CCI_I2C
1632	select V4L2_FWNODE
1633	select VIDEO_V4L2_SUBDEV_API
1634	help
1635	  Device driver for the Maxim MAX96714 GMSL2 Deserializer.
1636	  MAX96714 deserializers convert a GMSL2 input to MIPI CSI-2
1637	  output.
1638
1639	  To compile this driver as a module, choose M here: the
1640	  module will be called max96714.
1641
1642config VIDEO_MAX96717
1643	tristate "Maxim MAX96717 GMSL2 Serializer support"
1644	depends on OF && I2C && VIDEO_DEV && COMMON_CLK
1645	select I2C_MUX
1646	select MEDIA_CONTROLLER
1647	select GPIOLIB
1648	select V4L2_CCI_I2C
1649	select V4L2_FWNODE
1650	select VIDEO_V4L2_SUBDEV_API
1651	help
1652	  Device driver for the Maxim MAX96717 GMSL2 Serializer.
1653	  MAX96717 serializers convert video on a MIPI CSI-2
1654	  input to a GMSL2 output.
1655
1656	  To compile this driver as a module, choose M here: the
1657	  module will be called max96717.
1658
1659endmenu
1660
1661endif # VIDEO_DEV
1662