xref: /linux/drivers/media/i2c/Kconfig (revision 6fdcba32711044c35c0e1b094cbd8f3f0b4472c9)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Multimedia Video device configuration
4#
5
6if VIDEO_V4L2
7
8config VIDEO_IR_I2C
9	tristate "I2C module for IR" if !MEDIA_SUBDRV_AUTOSELECT || EXPERT
10	depends on I2C && RC_CORE
11	default y
12	help
13	  Most boards have an IR chip directly connected via GPIO. However,
14	  some video boards have the IR connected via I2C bus.
15
16	  If your board doesn't have an I2C IR chip, you may disable this
17	  option.
18
19	  In doubt, say Y.
20
21#
22# Encoder / Decoder module configuration
23#
24
25comment "I2C drivers hidden by 'Autoselect ancillary drivers'"
26	depends on MEDIA_HIDE_ANCILLARY_SUBDRV
27
28menu "I2C Encoders, decoders, sensors and other helper chips"
29	visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
30
31comment "Audio decoders, processors and mixers"
32
33config VIDEO_TVAUDIO
34	tristate "Simple audio decoder chips"
35	depends on VIDEO_V4L2 && I2C
36	help
37	  Support for several audio decoder chips found on some bt8xx boards:
38	  Philips: tda9840, tda9873h, tda9874h/a, tda9850, tda985x, tea6300,
39		   tea6320, tea6420, tda8425, ta8874z.
40	  Microchip: pic16c54 based design on ProVideo PV951 board.
41
42	  To compile this driver as a module, choose M here: the
43	  module will be called tvaudio.
44
45config VIDEO_TDA7432
46	tristate "Philips TDA7432 audio processor"
47	depends on VIDEO_V4L2 && I2C
48	help
49	  Support for tda7432 audio decoder chip found on some bt8xx boards.
50
51	  To compile this driver as a module, choose M here: the
52	  module will be called tda7432.
53
54config VIDEO_TDA9840
55	tristate "Philips TDA9840 audio processor"
56	depends on I2C
57	help
58	  Support for tda9840 audio decoder chip found on some Zoran boards.
59
60	  To compile this driver as a module, choose M here: the
61	  module will be called tda9840.
62
63config VIDEO_TDA1997X
64	tristate "NXP TDA1997x HDMI receiver"
65	depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
66	depends on SND_SOC
67	select HDMI
68	select SND_PCM
69	select V4L2_FWNODE
70	help
71	  V4L2 subdevice driver for the NXP TDA1997x HDMI receivers.
72
73	  To compile this driver as a module, choose M here: the
74	  module will be called tda1997x.
75
76config VIDEO_TEA6415C
77	tristate "Philips TEA6415C audio processor"
78	depends on I2C
79	help
80	  Support for tea6415c audio decoder chip found on some bt8xx boards.
81
82	  To compile this driver as a module, choose M here: the
83	  module will be called tea6415c.
84
85config VIDEO_TEA6420
86	tristate "Philips TEA6420 audio processor"
87	depends on I2C
88	help
89	  Support for tea6420 audio decoder chip found on some bt8xx boards.
90
91	  To compile this driver as a module, choose M here: the
92	  module will be called tea6420.
93
94config VIDEO_MSP3400
95	tristate "Micronas MSP34xx audio decoders"
96	depends on VIDEO_V4L2 && I2C
97	help
98	  Support for the Micronas MSP34xx series of audio decoders.
99
100	  To compile this driver as a module, choose M here: the
101	  module will be called msp3400.
102
103config VIDEO_CS3308
104	tristate "Cirrus Logic CS3308 audio ADC"
105	depends on VIDEO_V4L2 && I2C
106	help
107	  Support for the Cirrus Logic CS3308 High Performance 8-Channel
108	  Analog Volume Control
109
110	  To compile this driver as a module, choose M here: the
111	  module will be called cs3308.
112
113config VIDEO_CS5345
114	tristate "Cirrus Logic CS5345 audio ADC"
115	depends on VIDEO_V4L2 && I2C
116	help
117	  Support for the Cirrus Logic CS5345 24-bit, 192 kHz
118	  stereo A/D converter.
119
120	  To compile this driver as a module, choose M here: the
121	  module will be called cs5345.
122
123config VIDEO_CS53L32A
124	tristate "Cirrus Logic CS53L32A audio ADC"
125	depends on VIDEO_V4L2 && I2C
126	help
127	  Support for the Cirrus Logic CS53L32A low voltage
128	  stereo A/D converter.
129
130	  To compile this driver as a module, choose M here: the
131	  module will be called cs53l32a.
132
133config VIDEO_TLV320AIC23B
134	tristate "Texas Instruments TLV320AIC23B audio codec"
135	depends on VIDEO_V4L2 && I2C
136	help
137	  Support for the Texas Instruments TLV320AIC23B audio codec.
138
139	  To compile this driver as a module, choose M here: the
140	  module will be called tlv320aic23b.
141
142config VIDEO_UDA1342
143	tristate "Philips UDA1342 audio codec"
144	depends on VIDEO_V4L2 && I2C
145	help
146	  Support for the Philips UDA1342 audio codec.
147
148	  To compile this driver as a module, choose M here: the
149	  module will be called uda1342.
150
151config VIDEO_WM8775
152	tristate "Wolfson Microelectronics WM8775 audio ADC with input mixer"
153	depends on VIDEO_V4L2 && I2C
154	help
155	  Support for the Wolfson Microelectronics WM8775 high
156	  performance stereo A/D Converter with a 4 channel input mixer.
157
158	  To compile this driver as a module, choose M here: the
159	  module will be called wm8775.
160
161config VIDEO_WM8739
162	tristate "Wolfson Microelectronics WM8739 stereo audio ADC"
163	depends on VIDEO_V4L2 && I2C
164	help
165	  Support for the Wolfson Microelectronics WM8739
166	  stereo A/D Converter.
167
168	  To compile this driver as a module, choose M here: the
169	  module will be called wm8739.
170
171config VIDEO_VP27SMPX
172	tristate "Panasonic VP27's internal MPX"
173	depends on VIDEO_V4L2 && I2C
174	help
175	  Support for the internal MPX of the Panasonic VP27s tuner.
176
177	  To compile this driver as a module, choose M here: the
178	  module will be called vp27smpx.
179
180config VIDEO_SONY_BTF_MPX
181	tristate "Sony BTF's internal MPX"
182	depends on VIDEO_V4L2 && I2C
183	help
184	  Support for the internal MPX of the Sony BTF-PG472Z tuner.
185
186	  To compile this driver as a module, choose M here: the
187	  module will be called sony-btf-mpx.
188
189comment "RDS decoders"
190
191config VIDEO_SAA6588
192	tristate "SAA6588 Radio Chip RDS decoder support"
193	depends on VIDEO_V4L2 && I2C
194
195	help
196	  Support for this Radio Data System (RDS) decoder. This allows
197	  seeing radio station identification transmitted using this
198	  standard.
199
200	  To compile this driver as a module, choose M here: the
201	  module will be called saa6588.
202
203comment "Video decoders"
204
205config VIDEO_ADV7180
206	tristate "Analog Devices ADV7180 decoder"
207	depends on GPIOLIB && VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
208	help
209	  Support for the Analog Devices ADV7180 video decoder.
210
211	  To compile this driver as a module, choose M here: the
212	  module will be called adv7180.
213
214config VIDEO_ADV7183
215	tristate "Analog Devices ADV7183 decoder"
216	depends on VIDEO_V4L2 && I2C
217	help
218	  V4l2 subdevice driver for the Analog Devices
219	  ADV7183 video decoder.
220
221	  To compile this driver as a module, choose M here: the
222	  module will be called adv7183.
223
224config VIDEO_ADV748X
225	tristate "Analog Devices ADV748x decoder"
226	depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
227	depends on OF
228	select REGMAP_I2C
229	select V4L2_FWNODE
230	help
231	  V4L2 subdevice driver for the Analog Devices
232	  ADV7481 and ADV7482 HDMI/Analog video decoders.
233
234	  To compile this driver as a module, choose M here: the
235	  module will be called adv748x.
236
237config VIDEO_ADV7604
238	tristate "Analog Devices ADV7604 decoder"
239	depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
240	depends on GPIOLIB || COMPILE_TEST
241	select HDMI
242	select V4L2_FWNODE
243	help
244	  Support for the Analog Devices ADV7604 video decoder.
245
246	  This is a Analog Devices Component/Graphics Digitizer
247	  with 4:1 Multiplexed HDMI Receiver.
248
249	  To compile this driver as a module, choose M here: the
250	  module will be called adv7604.
251
252config VIDEO_ADV7604_CEC
253	bool "Enable Analog Devices ADV7604 CEC support"
254	depends on VIDEO_ADV7604
255	select CEC_CORE
256	help
257	  When selected the adv7604 will support the optional
258	  HDMI CEC feature.
259
260config VIDEO_ADV7842
261	tristate "Analog Devices ADV7842 decoder"
262	depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
263	select HDMI
264	help
265	  Support for the Analog Devices ADV7842 video decoder.
266
267	  This is a Analog Devices Component/Graphics/SD Digitizer
268	  with 2:1 Multiplexed HDMI Receiver.
269
270	  To compile this driver as a module, choose M here: the
271	  module will be called adv7842.
272
273config VIDEO_ADV7842_CEC
274	bool "Enable Analog Devices ADV7842 CEC support"
275	depends on VIDEO_ADV7842
276	select CEC_CORE
277	help
278	  When selected the adv7842 will support the optional
279	  HDMI CEC feature.
280
281config VIDEO_BT819
282	tristate "BT819A VideoStream decoder"
283	depends on VIDEO_V4L2 && I2C
284	help
285	  Support for BT819A video decoder.
286
287	  To compile this driver as a module, choose M here: the
288	  module will be called bt819.
289
290config VIDEO_BT856
291	tristate "BT856 VideoStream decoder"
292	depends on VIDEO_V4L2 && I2C
293	help
294	  Support for BT856 video decoder.
295
296	  To compile this driver as a module, choose M here: the
297	  module will be called bt856.
298
299config VIDEO_BT866
300	tristate "BT866 VideoStream decoder"
301	depends on VIDEO_V4L2 && I2C
302	help
303	  Support for BT866 video decoder.
304
305	  To compile this driver as a module, choose M here: the
306	  module will be called bt866.
307
308config VIDEO_KS0127
309	tristate "KS0127 video decoder"
310	depends on VIDEO_V4L2 && I2C
311	help
312	  Support for KS0127 video decoder.
313
314	  This chip is used on AverMedia AVS6EYES Zoran-based MJPEG
315	  cards.
316
317	  To compile this driver as a module, choose M here: the
318	  module will be called ks0127.
319
320config VIDEO_ML86V7667
321	tristate "OKI ML86V7667 video decoder"
322	depends on VIDEO_V4L2 && I2C
323	help
324	  Support for the OKI Semiconductor ML86V7667 video decoder.
325
326	  To compile this driver as a module, choose M here: the
327	  module will be called ml86v7667.
328
329config VIDEO_SAA7110
330	tristate "Philips SAA7110 video decoder"
331	depends on VIDEO_V4L2 && I2C
332	help
333	  Support for the Philips SAA7110 video decoders.
334
335	  To compile this driver as a module, choose M here: the
336	  module will be called saa7110.
337
338config VIDEO_SAA711X
339	tristate "Philips SAA7111/3/4/5 video decoders"
340	depends on VIDEO_V4L2 && I2C
341	help
342	  Support for the Philips SAA7111/3/4/5 video decoders.
343
344	  To compile this driver as a module, choose M here: the
345	  module will be called saa7115.
346
347config VIDEO_TC358743
348	tristate "Toshiba TC358743 decoder"
349	depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
350	select HDMI
351	select V4L2_FWNODE
352	help
353	  Support for the Toshiba TC358743 HDMI to MIPI CSI-2 bridge.
354
355	  To compile this driver as a module, choose M here: the
356	  module will be called tc358743.
357
358config VIDEO_TC358743_CEC
359	bool "Enable Toshiba TC358743 CEC support"
360	depends on VIDEO_TC358743
361	select CEC_CORE
362	help
363	  When selected the tc358743 will support the optional
364	  HDMI CEC feature.
365
366config VIDEO_TVP514X
367	tristate "Texas Instruments TVP514x video decoder"
368	depends on VIDEO_V4L2 && I2C
369	select V4L2_FWNODE
370	help
371	  This is a Video4Linux2 sensor driver for the TI TVP5146/47
372	  decoder. It is currently working with the TI OMAP3 camera
373	  controller.
374
375	  To compile this driver as a module, choose M here: the
376	  module will be called tvp514x.
377
378config VIDEO_TVP5150
379	tristate "Texas Instruments TVP5150 video decoder"
380	depends on VIDEO_V4L2 && I2C
381	select V4L2_FWNODE
382	help
383	  Support for the Texas Instruments TVP5150 video decoder.
384
385	  To compile this driver as a module, choose M here: the
386	  module will be called tvp5150.
387
388config VIDEO_TVP7002
389	tristate "Texas Instruments TVP7002 video decoder"
390	depends on VIDEO_V4L2 && I2C
391	select V4L2_FWNODE
392	help
393	  Support for the Texas Instruments TVP7002 video decoder.
394
395	  To compile this driver as a module, choose M here: the
396	  module will be called tvp7002.
397
398config VIDEO_TW2804
399	tristate "Techwell TW2804 multiple video decoder"
400	depends on VIDEO_V4L2 && I2C
401	help
402	  Support for the Techwell tw2804 multiple video decoder.
403
404	  To compile this driver as a module, choose M here: the
405	  module will be called tw2804.
406
407config VIDEO_TW9903
408	tristate "Techwell TW9903 video decoder"
409	depends on VIDEO_V4L2 && I2C
410	help
411	  Support for the Techwell tw9903 multi-standard video decoder
412	  with high quality down scaler.
413
414	  To compile this driver as a module, choose M here: the
415	  module will be called tw9903.
416
417config VIDEO_TW9906
418	tristate "Techwell TW9906 video decoder"
419	depends on VIDEO_V4L2 && I2C
420	help
421	  Support for the Techwell tw9906 enhanced multi-standard comb filter
422	  video decoder with YCbCr input support.
423
424	  To compile this driver as a module, choose M here: the
425	  module will be called tw9906.
426
427config VIDEO_TW9910
428	tristate "Techwell TW9910 video decoder"
429	depends on VIDEO_V4L2 && I2C
430	help
431	  Support for Techwell TW9910 NTSC/PAL/SECAM video decoder.
432
433	  To compile this driver as a module, choose M here: the
434	  module will be called tw9910.
435
436config VIDEO_VPX3220
437	tristate "vpx3220a, vpx3216b & vpx3214c video decoders"
438	depends on VIDEO_V4L2 && I2C
439	help
440	  Support for VPX322x video decoders.
441
442	  To compile this driver as a module, choose M here: the
443	  module will be called vpx3220.
444
445comment "Video and audio decoders"
446
447config VIDEO_SAA717X
448	tristate "Philips SAA7171/3/4 audio/video decoders"
449	depends on VIDEO_V4L2 && I2C
450	help
451	  Support for the Philips SAA7171/3/4 audio/video decoders.
452
453	  To compile this driver as a module, choose M here: the
454	  module will be called saa717x.
455
456source "drivers/media/i2c/cx25840/Kconfig"
457
458comment "Video encoders"
459
460config VIDEO_SAA7127
461	tristate "Philips SAA7127/9 digital video encoders"
462	depends on VIDEO_V4L2 && I2C
463	help
464	  Support for the Philips SAA7127/9 digital video encoders.
465
466	  To compile this driver as a module, choose M here: the
467	  module will be called saa7127.
468
469config VIDEO_SAA7185
470	tristate "Philips SAA7185 video encoder"
471	depends on VIDEO_V4L2 && I2C
472	help
473	  Support for the Philips SAA7185 video encoder.
474
475	  To compile this driver as a module, choose M here: the
476	  module will be called saa7185.
477
478config VIDEO_ADV7170
479	tristate "Analog Devices ADV7170 video encoder"
480	depends on VIDEO_V4L2 && I2C
481	help
482	  Support for the Analog Devices ADV7170 video encoder driver
483
484	  To compile this driver as a module, choose M here: the
485	  module will be called adv7170.
486
487config VIDEO_ADV7175
488	tristate "Analog Devices ADV7175 video encoder"
489	depends on VIDEO_V4L2 && I2C
490	help
491	  Support for the Analog Devices ADV7175 video encoder driver
492
493	  To compile this driver as a module, choose M here: the
494	  module will be called adv7175.
495
496config VIDEO_ADV7343
497	tristate "ADV7343 video encoder"
498	depends on I2C
499	help
500	  Support for Analog Devices I2C bus based ADV7343 encoder.
501
502	  To compile this driver as a module, choose M here: the
503	  module will be called adv7343.
504
505config VIDEO_ADV7393
506	tristate "ADV7393 video encoder"
507	depends on I2C
508	help
509	  Support for Analog Devices I2C bus based ADV7393 encoder.
510
511	  To compile this driver as a module, choose M here: the
512	  module will be called adv7393.
513
514config VIDEO_ADV7511
515	tristate "Analog Devices ADV7511 encoder"
516	depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
517	depends on DRM_I2C_ADV7511=n || COMPILE_TEST
518	select HDMI
519	help
520	  Support for the Analog Devices ADV7511 video encoder.
521
522	  This is a Analog Devices HDMI transmitter.
523
524	  To compile this driver as a module, choose M here: the
525	  module will be called adv7511.
526
527config VIDEO_ADV7511_CEC
528	bool "Enable Analog Devices ADV7511 CEC support"
529	depends on VIDEO_ADV7511
530	select CEC_CORE
531	help
532	  When selected the adv7511 will support the optional
533	  HDMI CEC feature.
534
535config VIDEO_AD9389B
536	tristate "Analog Devices AD9389B encoder"
537	depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
538	help
539	  Support for the Analog Devices AD9389B video encoder.
540
541	  This is a Analog Devices HDMI transmitter.
542
543	  To compile this driver as a module, choose M here: the
544	  module will be called ad9389b.
545
546config VIDEO_AK881X
547	tristate "AK8813/AK8814 video encoders"
548	depends on I2C
549	help
550	  Video output driver for AKM AK8813 and AK8814 TV encoders
551
552config VIDEO_THS8200
553	tristate "Texas Instruments THS8200 video encoder"
554	depends on VIDEO_V4L2 && I2C
555	help
556	  Support for the Texas Instruments THS8200 video encoder.
557
558	  To compile this driver as a module, choose M here: the
559	  module will be called ths8200.
560
561comment "Camera sensor devices"
562
563config VIDEO_APTINA_PLL
564	tristate
565
566config VIDEO_SMIAPP_PLL
567	tristate
568
569if MEDIA_CAMERA_SUPPORT
570
571config VIDEO_HI556
572	tristate "Hynix Hi-556 sensor support"
573	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
574	depends on MEDIA_CONTROLLER
575	select V4L2_FWNODE
576	help
577	  This is a Video4Linux2 sensor driver for the Hynix
578	  Hi-556 camera.
579
580	  To compile this driver as a module, choose M here: the
581	  module will be called hi556.
582
583config VIDEO_IMX214
584	tristate "Sony IMX214 sensor support"
585	depends on GPIOLIB && I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
586	depends on V4L2_FWNODE
587	help
588	  This is a Video4Linux2 sensor driver for the Sony
589	  IMX214 camera.
590
591	  To compile this driver as a module, choose M here: the
592	  module will be called imx214.
593
594config VIDEO_IMX258
595	tristate "Sony IMX258 sensor support"
596	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
597	help
598	  This is a Video4Linux2 sensor driver for the Sony
599	  IMX258 camera.
600
601	  To compile this driver as a module, choose M here: the
602	  module will be called imx258.
603
604config VIDEO_IMX274
605	tristate "Sony IMX274 sensor support"
606	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
607	select REGMAP_I2C
608	help
609	  This is a V4L2 sensor driver for the Sony IMX274
610	  CMOS image sensor.
611
612config VIDEO_IMX290
613	tristate "Sony IMX290 sensor support"
614	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
615	select V4L2_FWNODE
616	help
617	  This is a Video4Linux2 sensor driver for the Sony
618	  IMX290 camera sensor.
619
620	  To compile this driver as a module, choose M here: the
621	  module will be called imx290.
622
623config VIDEO_IMX319
624	tristate "Sony IMX319 sensor support"
625	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
626	help
627	  This is a Video4Linux2 sensor driver for the Sony
628	  IMX319 camera.
629
630	  To compile this driver as a module, choose M here: the
631	  module will be called imx319.
632
633config VIDEO_IMX355
634	tristate "Sony IMX355 sensor support"
635	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
636	help
637	  This is a Video4Linux2 sensor driver for the Sony
638	  IMX355 camera.
639
640	  To compile this driver as a module, choose M here: the
641	  module will be called imx355.
642
643config VIDEO_OV2640
644	tristate "OmniVision OV2640 sensor support"
645	depends on VIDEO_V4L2 && I2C
646	help
647	  This is a Video4Linux2 sensor driver for the OmniVision
648	  OV2640 camera.
649
650	  To compile this driver as a module, choose M here: the
651	  module will be called ov2640.
652
653config VIDEO_OV2659
654	tristate "OmniVision OV2659 sensor support"
655	depends on VIDEO_V4L2 && I2C && GPIOLIB
656	select V4L2_FWNODE
657	help
658	  This is a Video4Linux2 sensor driver for the OmniVision
659	  OV2659 camera.
660
661	  To compile this driver as a module, choose M here: the
662	  module will be called ov2659.
663
664config VIDEO_OV2680
665	tristate "OmniVision OV2680 sensor support"
666	depends on VIDEO_V4L2 && I2C && MEDIA_CONTROLLER
667	select V4L2_FWNODE
668	help
669	  This is a Video4Linux2 sensor driver for the OmniVision
670	  OV2680 camera.
671
672	  To compile this driver as a module, choose M here: the
673	  module will be called ov2680.
674
675config VIDEO_OV2685
676	tristate "OmniVision OV2685 sensor support"
677	depends on VIDEO_V4L2 && I2C && MEDIA_CONTROLLER
678	select V4L2_FWNODE
679	help
680	  This is a Video4Linux2 sensor driver for the OmniVision
681	  OV2685 camera.
682
683	  To compile this driver as a module, choose M here: the
684	  module will be called ov2685.
685
686config VIDEO_OV5640
687	tristate "OmniVision OV5640 sensor support"
688	depends on OF
689	depends on GPIOLIB && VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
690	select V4L2_FWNODE
691	help
692	  This is a Video4Linux2 sensor driver for the Omnivision
693	  OV5640 camera sensor with a MIPI CSI-2 interface.
694
695config VIDEO_OV5645
696	tristate "OmniVision OV5645 sensor support"
697	depends on OF
698	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
699	select V4L2_FWNODE
700	help
701	  This is a Video4Linux2 sensor driver for the OmniVision
702	  OV5645 camera.
703
704	  To compile this driver as a module, choose M here: the
705	  module will be called ov5645.
706
707config VIDEO_OV5647
708	tristate "OmniVision OV5647 sensor support"
709	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
710	select V4L2_FWNODE
711	help
712	  This is a Video4Linux2 sensor driver for the OmniVision
713	  OV5647 camera.
714
715	  To compile this driver as a module, choose M here: the
716	  module will be called ov5647.
717
718config VIDEO_OV6650
719	tristate "OmniVision OV6650 sensor support"
720	depends on I2C && VIDEO_V4L2
721	help
722	  This is a Video4Linux2 sensor driver for the OmniVision
723	  OV6650 camera.
724
725	  To compile this driver as a module, choose M here: the
726	  module will be called ov6650.
727
728config VIDEO_OV5670
729	tristate "OmniVision OV5670 sensor support"
730	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
731	depends on MEDIA_CONTROLLER
732	select V4L2_FWNODE
733	help
734	  This is a Video4Linux2 sensor driver for the OmniVision
735	  OV5670 camera.
736
737	  To compile this driver as a module, choose M here: the
738	  module will be called ov5670.
739
740config VIDEO_OV5675
741	tristate "OmniVision OV5675 sensor support"
742	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
743	depends on MEDIA_CONTROLLER
744	select V4L2_FWNODE
745	help
746	  This is a Video4Linux2 sensor driver for the OmniVision
747	  OV5675 camera.
748
749	  To compile this driver as a module, choose M here: the
750	  module will be called ov5675.
751
752config VIDEO_OV5695
753	tristate "OmniVision OV5695 sensor support"
754	depends on I2C && VIDEO_V4L2
755	select V4L2_FWNODE
756	help
757	  This is a Video4Linux2 sensor driver for the OmniVision
758	  OV5695 camera.
759
760	  To compile this driver as a module, choose M here: the
761	  module will be called ov5695.
762
763config VIDEO_OV7251
764	tristate "OmniVision OV7251 sensor support"
765	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
766	select V4L2_FWNODE
767	help
768	  This is a Video4Linux2 sensor driver for the OmniVision
769	  OV7251 camera.
770
771	  To compile this driver as a module, choose M here: the
772	  module will be called ov7251.
773
774config VIDEO_OV772X
775	tristate "OmniVision OV772x sensor support"
776	depends on I2C && VIDEO_V4L2
777	select REGMAP_SCCB
778	help
779	  This is a Video4Linux2 sensor driver for the OmniVision
780	  OV772x camera.
781
782	  To compile this driver as a module, choose M here: the
783	  module will be called ov772x.
784
785config VIDEO_OV7640
786	tristate "OmniVision OV7640 sensor support"
787	depends on I2C && VIDEO_V4L2
788	help
789	  This is a Video4Linux2 sensor driver for the OmniVision
790	  OV7640 camera.
791
792	  To compile this driver as a module, choose M here: the
793	  module will be called ov7640.
794
795config VIDEO_OV7670
796	tristate "OmniVision OV7670 sensor support"
797	depends on I2C && VIDEO_V4L2
798	select V4L2_FWNODE
799	help
800	  This is a Video4Linux2 sensor driver for the OmniVision
801	  OV7670 VGA camera.  It currently only works with the M88ALP01
802	  controller.
803
804config VIDEO_OV7740
805	tristate "OmniVision OV7740 sensor support"
806	depends on I2C && VIDEO_V4L2
807	help
808	  This is a Video4Linux2 sensor driver for the OmniVision
809	  OV7740 VGA camera sensor.
810
811config VIDEO_OV8856
812	tristate "OmniVision OV8856 sensor support"
813	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
814	select V4L2_FWNODE
815	help
816	  This is a Video4Linux2 sensor driver for the OmniVision
817	  OV8856 camera sensor.
818
819	  To compile this driver as a module, choose M here: the
820	  module will be called ov8856.
821
822config VIDEO_OV9640
823	tristate "OmniVision OV9640 sensor support"
824	depends on I2C && VIDEO_V4L2
825	help
826	  This is a Video4Linux2 sensor driver for the OmniVision
827	  OV9640 camera sensor.
828
829config VIDEO_OV9650
830	tristate "OmniVision OV9650/OV9652 sensor support"
831	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
832	select REGMAP_SCCB
833	help
834	  This is a V4L2 sensor driver for the Omnivision
835	  OV9650 and OV9652 camera sensors.
836
837config VIDEO_OV13858
838	tristate "OmniVision OV13858 sensor support"
839	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
840	select V4L2_FWNODE
841	help
842	  This is a Video4Linux2 sensor driver for the OmniVision
843	  OV13858 camera.
844
845config VIDEO_VS6624
846	tristate "ST VS6624 sensor support"
847	depends on VIDEO_V4L2 && I2C
848	help
849	  This is a Video4Linux2 sensor driver for the ST VS6624
850	  camera.
851
852	  To compile this driver as a module, choose M here: the
853	  module will be called vs6624.
854
855config VIDEO_MT9M001
856	tristate "mt9m001 support"
857	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
858	help
859	  This driver supports MT9M001 cameras from Micron, monochrome
860	  and colour models.
861
862config VIDEO_MT9M032
863	tristate "MT9M032 camera sensor support"
864	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
865	select VIDEO_APTINA_PLL
866	help
867	  This driver supports MT9M032 camera sensors from Aptina, monochrome
868	  models only.
869
870config VIDEO_MT9M111
871	tristate "mt9m111, mt9m112 and mt9m131 support"
872	depends on I2C && VIDEO_V4L2
873	select V4L2_FWNODE
874	help
875	  This driver supports MT9M111, MT9M112 and MT9M131 cameras from
876	  Micron/Aptina
877
878config VIDEO_MT9P031
879	tristate "Aptina MT9P031 support"
880	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
881	select VIDEO_APTINA_PLL
882	help
883	  This is a Video4Linux2 sensor driver for the Aptina
884	  (Micron) mt9p031 5 Mpixel camera.
885
886config VIDEO_MT9T001
887	tristate "Aptina MT9T001 support"
888	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
889	help
890	  This is a Video4Linux2 sensor driver for the Aptina
891	  (Micron) mt0t001 3 Mpixel camera.
892
893config VIDEO_MT9T112
894	tristate "Aptina MT9T111/MT9T112 support"
895	depends on I2C && VIDEO_V4L2
896	help
897	  This is a Video4Linux2 sensor driver for the Aptina
898	  (Micron) MT9T111 and MT9T112 3 Mpixel camera.
899
900	  To compile this driver as a module, choose M here: the
901	  module will be called mt9t112.
902
903config VIDEO_MT9V011
904	tristate "Micron mt9v011 sensor support"
905	depends on I2C && VIDEO_V4L2
906	help
907	  This is a Video4Linux2 sensor driver for the Micron
908	  mt0v011 1.3 Mpixel camera.  It currently only works with the
909	  em28xx driver.
910
911config VIDEO_MT9V032
912	tristate "Micron MT9V032 sensor support"
913	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
914	select REGMAP_I2C
915	select V4L2_FWNODE
916	help
917	  This is a Video4Linux2 sensor driver for the Micron
918	  MT9V032 752x480 CMOS sensor.
919
920config VIDEO_MT9V111
921	tristate "Aptina MT9V111 sensor support"
922	depends on I2C && VIDEO_V4L2
923	help
924	  This is a Video4Linux2 sensor driver for the Aptina/Micron
925	  MT9V111 sensor.
926
927	  To compile this driver as a module, choose M here: the
928	  module will be called mt9v111.
929
930config VIDEO_SR030PC30
931	tristate "Siliconfile SR030PC30 sensor support"
932	depends on I2C && VIDEO_V4L2
933	help
934	  This driver supports SR030PC30 VGA camera from Siliconfile
935
936config VIDEO_NOON010PC30
937	tristate "Siliconfile NOON010PC30 sensor support"
938	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
939	help
940	  This driver supports NOON010PC30 CIF camera from Siliconfile
941
942source "drivers/media/i2c/m5mols/Kconfig"
943
944config VIDEO_RJ54N1
945	tristate "Sharp RJ54N1CB0C sensor support"
946	depends on I2C && VIDEO_V4L2
947	help
948	  This is a V4L2 sensor driver for Sharp RJ54N1CB0C CMOS image
949	  sensor.
950
951	  To compile this driver as a module, choose M here: the
952	  module will be called rj54n1.
953
954config VIDEO_S5K6AA
955	tristate "Samsung S5K6AAFX sensor support"
956	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
957	help
958	  This is a V4L2 sensor driver for Samsung S5K6AA(FX) 1.3M
959	  camera sensor with an embedded SoC image signal processor.
960
961config VIDEO_S5K6A3
962	tristate "Samsung S5K6A3 sensor support"
963	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
964	help
965	  This is a V4L2 sensor driver for Samsung S5K6A3 raw
966	  camera sensor.
967
968config VIDEO_S5K4ECGX
969	tristate "Samsung S5K4ECGX sensor support"
970	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
971	select CRC32
972	help
973	  This is a V4L2 sensor driver for Samsung S5K4ECGX 5M
974	  camera sensor with an embedded SoC image signal processor.
975
976config VIDEO_S5K5BAF
977	tristate "Samsung S5K5BAF sensor support"
978	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
979	select V4L2_FWNODE
980	help
981	  This is a V4L2 sensor driver for Samsung S5K5BAF 2M
982	  camera sensor with an embedded SoC image signal processor.
983
984source "drivers/media/i2c/smiapp/Kconfig"
985source "drivers/media/i2c/et8ek8/Kconfig"
986
987config VIDEO_S5C73M3
988	tristate "Samsung S5C73M3 sensor support"
989	depends on I2C && SPI && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
990	select V4L2_FWNODE
991	help
992	  This is a V4L2 sensor driver for Samsung S5C73M3
993	  8 Mpixel camera.
994endif
995
996comment "Lens drivers"
997
998if MEDIA_CAMERA_SUPPORT
999
1000config VIDEO_AD5820
1001	tristate "AD5820 lens voice coil support"
1002	depends on GPIOLIB && I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
1003	help
1004	  This is a driver for the AD5820 camera lens voice coil.
1005	  It is used for example in Nokia N900 (RX-51).
1006
1007config VIDEO_AK7375
1008	tristate "AK7375 lens voice coil support"
1009	depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
1010	depends on VIDEO_V4L2_SUBDEV_API
1011	help
1012	  This is a driver for the AK7375 camera lens voice coil.
1013	  AK7375 is a 12 bit DAC with 120mA output current sink
1014	  capability. This is designed for linear control of
1015	  voice coil motors, controlled via I2C serial interface.
1016
1017config VIDEO_DW9714
1018	tristate "DW9714 lens voice coil support"
1019	depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
1020	depends on VIDEO_V4L2_SUBDEV_API
1021	help
1022	  This is a driver for the DW9714 camera lens voice coil.
1023	  DW9714 is a 10 bit DAC with 120mA output current sink
1024	  capability. This is designed for linear control of
1025	  voice coil motors, controlled via I2C serial interface.
1026
1027config VIDEO_DW9807_VCM
1028	tristate "DW9807 lens voice coil support"
1029	depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
1030	depends on VIDEO_V4L2_SUBDEV_API
1031	help
1032	  This is a driver for the DW9807 camera lens voice coil.
1033	  DW9807 is a 10 bit DAC with 100mA output current sink
1034	  capability. This is designed for linear control of
1035	  voice coil motors, controlled via I2C serial interface.
1036
1037endif
1038
1039comment "Flash devices"
1040
1041if MEDIA_CAMERA_SUPPORT
1042
1043config VIDEO_ADP1653
1044	tristate "ADP1653 flash support"
1045	depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
1046	help
1047	  This is a driver for the ADP1653 flash controller. It is used for
1048	  example in Nokia N900.
1049
1050config VIDEO_LM3560
1051	tristate "LM3560 dual flash driver support"
1052	depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
1053	select REGMAP_I2C
1054	help
1055	  This is a driver for the lm3560 dual flash controllers. It controls
1056	  flash, torch LEDs.
1057
1058config VIDEO_LM3646
1059	tristate "LM3646 dual flash driver support"
1060	depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
1061	select REGMAP_I2C
1062	help
1063	  This is a driver for the lm3646 dual flash controllers. It controls
1064	  flash, torch LEDs.
1065
1066endif
1067
1068comment "Video improvement chips"
1069
1070config VIDEO_UPD64031A
1071	tristate "NEC Electronics uPD64031A Ghost Reduction"
1072	depends on VIDEO_V4L2 && I2C
1073	help
1074	  Support for the NEC Electronics uPD64031A Ghost Reduction
1075	  video chip. It is most often found in NTSC TV cards made for
1076	  Japan and is used to reduce the 'ghosting' effect that can
1077	  be present in analog TV broadcasts.
1078
1079	  To compile this driver as a module, choose M here: the
1080	  module will be called upd64031a.
1081
1082config VIDEO_UPD64083
1083	tristate "NEC Electronics uPD64083 3-Dimensional Y/C separation"
1084	depends on VIDEO_V4L2 && I2C
1085	help
1086	  Support for the NEC Electronics uPD64083 3-Dimensional Y/C
1087	  separation video chip. It is used to improve the quality of
1088	  the colors of a composite signal.
1089
1090	  To compile this driver as a module, choose M here: the
1091	  module will be called upd64083.
1092
1093comment "Audio/Video compression chips"
1094
1095config VIDEO_SAA6752HS
1096	tristate "Philips SAA6752HS MPEG-2 Audio/Video Encoder"
1097	depends on VIDEO_V4L2 && I2C
1098	select CRC32
1099	help
1100	  Support for the Philips SAA6752HS MPEG-2 video and MPEG-audio/AC-3
1101	  audio encoder with multiplexer.
1102
1103	  To compile this driver as a module, choose M here: the
1104	  module will be called saa6752hs.
1105
1106comment "SDR tuner chips"
1107
1108config SDR_MAX2175
1109	tristate "Maxim 2175 RF to Bits tuner"
1110	depends on VIDEO_V4L2 && MEDIA_SDR_SUPPORT && I2C
1111	select REGMAP_I2C
1112	help
1113	  Support for Maxim 2175 tuner. It is an advanced analog/digital
1114	  radio receiver with RF-to-Bits front-end designed for SDR solutions.
1115
1116	  To compile this driver as a module, choose M here; the
1117	  module will be called max2175.
1118
1119comment "Miscellaneous helper chips"
1120
1121config VIDEO_THS7303
1122	tristate "THS7303/53 Video Amplifier"
1123	depends on VIDEO_V4L2 && I2C
1124	help
1125	  Support for TI THS7303/53 video amplifier
1126
1127	  To compile this driver as a module, choose M here: the
1128	  module will be called ths7303.
1129
1130config VIDEO_M52790
1131	tristate "Mitsubishi M52790 A/V switch"
1132	depends on VIDEO_V4L2 && I2C
1133	help
1134	 Support for the Mitsubishi M52790 A/V switch.
1135
1136	 To compile this driver as a module, choose M here: the
1137	 module will be called m52790.
1138
1139config VIDEO_I2C
1140	tristate "I2C transport video support"
1141	depends on VIDEO_V4L2 && I2C
1142	select VIDEOBUF2_VMALLOC
1143	imply HWMON
1144	help
1145	  Enable the I2C transport video support which supports the
1146	  following:
1147	   * Panasonic AMG88xx Grid-Eye Sensors
1148	   * Melexis MLX90640 Thermal Cameras
1149
1150	  To compile this driver as a module, choose M here: the
1151	  module will be called video-i2c
1152
1153config VIDEO_ST_MIPID02
1154	tristate "STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge"
1155	depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
1156	depends on MEDIA_CAMERA_SUPPORT
1157	select V4L2_FWNODE
1158	help
1159	  Support for STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge.
1160	  It is used to allow usage of CSI-2 sensor with PARALLEL port
1161	  controller.
1162
1163	  To compile this driver as a module, choose M here: the
1164	  module will be called st-mipid02.
1165
1166endmenu
1167
1168endif
1169