Merge tag 'regmap-fix-v5.11-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux/fpc-iii.git] / drivers / media / i2c / Kconfig
blob2b9d81e4794a4ff9aebce2685b994cf93fc7de50
1 # SPDX-License-Identifier: GPL-2.0-only
3 # Multimedia Video device configuration
6 if VIDEO_V4L2
8 comment "IR I2C driver auto-selected by 'Autoselect ancillary drivers'"
9         depends on MEDIA_SUBDRV_AUTOSELECT && I2C && RC_CORE
11 config 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.
19           If your board doesn't have an I2C IR chip, you may disable this
20           option.
22           In doubt, say Y.
25 # V4L2 I2C drivers that aren't related with Camera support
28 comment "audio, video and radio I2C drivers auto-selected by 'Autoselect ancillary drivers'"
29         depends on MEDIA_HIDE_ANCILLARY_SUBDRV
31 # Encoder / Decoder module configuration
34 menu "Audio decoders, processors and mixers"
35         visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
37 config VIDEO_TVAUDIO
38         tristate "Simple audio decoder chips"
39         depends on VIDEO_V4L2 && I2C
40         help
41           Support for several audio decoder chips found on some bt8xx boards:
42           Philips: tda9840, tda9873h, tda9874h/a, tda9850, tda985x, tea6300,
43                    tea6320, tea6420, tda8425, ta8874z.
44           Microchip: pic16c54 based design on ProVideo PV951 board.
46           To compile this driver as a module, choose M here: the
47           module will be called tvaudio.
49 config VIDEO_TDA7432
50         tristate "Philips TDA7432 audio processor"
51         depends on VIDEO_V4L2 && I2C
52         help
53           Support for tda7432 audio decoder chip found on some bt8xx boards.
55           To compile this driver as a module, choose M here: the
56           module will be called tda7432.
58 config VIDEO_TDA9840
59         tristate "Philips TDA9840 audio processor"
60         depends on I2C
61         help
62           Support for tda9840 audio decoder chip found on some Zoran boards.
64           To compile this driver as a module, choose M here: the
65           module will be called tda9840.
67 config VIDEO_TDA1997X
68         tristate "NXP TDA1997x HDMI receiver"
69         depends on VIDEO_V4L2 && I2C
70         depends on SND_SOC
71         select HDMI
72         select SND_PCM
73         select V4L2_FWNODE
74         select MEDIA_CONTROLLER
75         select VIDEO_V4L2_SUBDEV_API
76         help
77           V4L2 subdevice driver for the NXP TDA1997x HDMI receivers.
79           To compile this driver as a module, choose M here: the
80           module will be called tda1997x.
82 config VIDEO_TEA6415C
83         tristate "Philips TEA6415C audio processor"
84         depends on I2C
85         help
86           Support for tea6415c audio decoder chip found on some bt8xx boards.
88           To compile this driver as a module, choose M here: the
89           module will be called tea6415c.
91 config VIDEO_TEA6420
92         tristate "Philips TEA6420 audio processor"
93         depends on I2C
94         help
95           Support for tea6420 audio decoder chip found on some bt8xx boards.
97           To compile this driver as a module, choose M here: the
98           module will be called tea6420.
100 config VIDEO_MSP3400
101         tristate "Micronas MSP34xx audio decoders"
102         depends on VIDEO_V4L2 && I2C
103         help
104           Support for the Micronas MSP34xx series of audio decoders.
106           To compile this driver as a module, choose M here: the
107           module will be called msp3400.
109 config VIDEO_CS3308
110         tristate "Cirrus Logic CS3308 audio ADC"
111         depends on VIDEO_V4L2 && I2C
112         help
113           Support for the Cirrus Logic CS3308 High Performance 8-Channel
114           Analog Volume Control
116           To compile this driver as a module, choose M here: the
117           module will be called cs3308.
119 config VIDEO_CS5345
120         tristate "Cirrus Logic CS5345 audio ADC"
121         depends on VIDEO_V4L2 && I2C
122         help
123           Support for the Cirrus Logic CS5345 24-bit, 192 kHz
124           stereo A/D converter.
126           To compile this driver as a module, choose M here: the
127           module will be called cs5345.
129 config VIDEO_CS53L32A
130         tristate "Cirrus Logic CS53L32A audio ADC"
131         depends on VIDEO_V4L2 && I2C
132         help
133           Support for the Cirrus Logic CS53L32A low voltage
134           stereo A/D converter.
136           To compile this driver as a module, choose M here: the
137           module will be called cs53l32a.
139 config VIDEO_TLV320AIC23B
140         tristate "Texas Instruments TLV320AIC23B audio codec"
141         depends on VIDEO_V4L2 && I2C
142         help
143           Support for the Texas Instruments TLV320AIC23B audio codec.
145           To compile this driver as a module, choose M here: the
146           module will be called tlv320aic23b.
148 config VIDEO_UDA1342
149         tristate "Philips UDA1342 audio codec"
150         depends on VIDEO_V4L2 && I2C
151         help
152           Support for the Philips UDA1342 audio codec.
154           To compile this driver as a module, choose M here: the
155           module will be called uda1342.
157 config VIDEO_WM8775
158         tristate "Wolfson Microelectronics WM8775 audio ADC with input mixer"
159         depends on VIDEO_V4L2 && I2C
160         help
161           Support for the Wolfson Microelectronics WM8775 high
162           performance stereo A/D Converter with a 4 channel input mixer.
164           To compile this driver as a module, choose M here: the
165           module will be called wm8775.
167 config VIDEO_WM8739
168         tristate "Wolfson Microelectronics WM8739 stereo audio ADC"
169         depends on VIDEO_V4L2 && I2C
170         help
171           Support for the Wolfson Microelectronics WM8739
172           stereo A/D Converter.
174           To compile this driver as a module, choose M here: the
175           module will be called wm8739.
177 config VIDEO_VP27SMPX
178         tristate "Panasonic VP27's internal MPX"
179         depends on VIDEO_V4L2 && I2C
180         help
181           Support for the internal MPX of the Panasonic VP27s tuner.
183           To compile this driver as a module, choose M here: the
184           module will be called vp27smpx.
186 config VIDEO_SONY_BTF_MPX
187         tristate "Sony BTF's internal MPX"
188         depends on VIDEO_V4L2 && I2C
189         help
190           Support for the internal MPX of the Sony BTF-PG472Z tuner.
192           To compile this driver as a module, choose M here: the
193           module will be called sony-btf-mpx.
194 endmenu
196 menu "RDS decoders"
197         visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
199 config VIDEO_SAA6588
200         tristate "SAA6588 Radio Chip RDS decoder support"
201         depends on VIDEO_V4L2 && I2C
203         help
204           Support for this Radio Data System (RDS) decoder. This allows
205           seeing radio station identification transmitted using this
206           standard.
208           To compile this driver as a module, choose M here: the
209           module will be called saa6588.
210 endmenu
212 menu "Video decoders"
213         visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
215 config VIDEO_ADV7180
216         tristate "Analog Devices ADV7180 decoder"
217         depends on GPIOLIB && VIDEO_V4L2 && I2C
218         select MEDIA_CONTROLLER
219         select VIDEO_V4L2_SUBDEV_API
220         help
221           Support for the Analog Devices ADV7180 video decoder.
223           To compile this driver as a module, choose M here: the
224           module will be called adv7180.
226 config VIDEO_ADV7183
227         tristate "Analog Devices ADV7183 decoder"
228         depends on VIDEO_V4L2 && I2C
229         help
230           V4l2 subdevice driver for the Analog Devices
231           ADV7183 video decoder.
233           To compile this driver as a module, choose M here: the
234           module will be called adv7183.
236 config VIDEO_ADV748X
237         tristate "Analog Devices ADV748x decoder"
238         depends on VIDEO_V4L2 && I2C
239         depends on OF
240         select MEDIA_CONTROLLER
241         select VIDEO_V4L2_SUBDEV_API
242         select REGMAP_I2C
243         select V4L2_FWNODE
244         help
245           V4L2 subdevice driver for the Analog Devices
246           ADV7481 and ADV7482 HDMI/Analog video decoders.
248           To compile this driver as a module, choose M here: the
249           module will be called adv748x.
251 config VIDEO_ADV7604
252         tristate "Analog Devices ADV7604 decoder"
253         depends on VIDEO_V4L2 && I2C
254         depends on GPIOLIB || COMPILE_TEST
255         select MEDIA_CONTROLLER
256         select VIDEO_V4L2_SUBDEV_API
257         select REGMAP_I2C
258         select HDMI
259         select V4L2_FWNODE
260         help
261           Support for the Analog Devices ADV7604 video decoder.
263           This is a Analog Devices Component/Graphics Digitizer
264           with 4:1 Multiplexed HDMI Receiver.
266           To compile this driver as a module, choose M here: the
267           module will be called adv7604.
269 config VIDEO_ADV7604_CEC
270         bool "Enable Analog Devices ADV7604 CEC support"
271         depends on VIDEO_ADV7604
272         select CEC_CORE
273         help
274           When selected the adv7604 will support the optional
275           HDMI CEC feature.
277 config VIDEO_ADV7842
278         tristate "Analog Devices ADV7842 decoder"
279         depends on VIDEO_V4L2 && I2C
280         select MEDIA_CONTROLLER
281         select VIDEO_V4L2_SUBDEV_API
282         select HDMI
283         help
284           Support for the Analog Devices ADV7842 video decoder.
286           This is a Analog Devices Component/Graphics/SD Digitizer
287           with 2:1 Multiplexed HDMI Receiver.
289           To compile this driver as a module, choose M here: the
290           module will be called adv7842.
292 config VIDEO_ADV7842_CEC
293         bool "Enable Analog Devices ADV7842 CEC support"
294         depends on VIDEO_ADV7842
295         select CEC_CORE
296         help
297           When selected the adv7842 will support the optional
298           HDMI CEC feature.
300 config VIDEO_BT819
301         tristate "BT819A VideoStream decoder"
302         depends on VIDEO_V4L2 && I2C
303         help
304           Support for BT819A video decoder.
306           To compile this driver as a module, choose M here: the
307           module will be called bt819.
309 config VIDEO_BT856
310         tristate "BT856 VideoStream decoder"
311         depends on VIDEO_V4L2 && I2C
312         help
313           Support for BT856 video decoder.
315           To compile this driver as a module, choose M here: the
316           module will be called bt856.
318 config VIDEO_BT866
319         tristate "BT866 VideoStream decoder"
320         depends on VIDEO_V4L2 && I2C
321         help
322           Support for BT866 video decoder.
324           To compile this driver as a module, choose M here: the
325           module will be called bt866.
327 config VIDEO_KS0127
328         tristate "KS0127 video decoder"
329         depends on VIDEO_V4L2 && I2C
330         help
331           Support for KS0127 video decoder.
333           This chip is used on AverMedia AVS6EYES Zoran-based MJPEG
334           cards.
336           To compile this driver as a module, choose M here: the
337           module will be called ks0127.
339 config VIDEO_ML86V7667
340         tristate "OKI ML86V7667 video decoder"
341         depends on VIDEO_V4L2 && I2C
342         help
343           Support for the OKI Semiconductor ML86V7667 video decoder.
345           To compile this driver as a module, choose M here: the
346           module will be called ml86v7667.
348 config VIDEO_SAA7110
349         tristate "Philips SAA7110 video decoder"
350         depends on VIDEO_V4L2 && I2C
351         help
352           Support for the Philips SAA7110 video decoders.
354           To compile this driver as a module, choose M here: the
355           module will be called saa7110.
357 config VIDEO_SAA711X
358         tristate "Philips SAA7111/3/4/5 video decoders"
359         depends on VIDEO_V4L2 && I2C
360         help
361           Support for the Philips SAA7111/3/4/5 video decoders.
363           To compile this driver as a module, choose M here: the
364           module will be called saa7115.
366 config VIDEO_TC358743
367         tristate "Toshiba TC358743 decoder"
368         depends on VIDEO_V4L2 && I2C
369         select MEDIA_CONTROLLER
370         select VIDEO_V4L2_SUBDEV_API
371         select HDMI
372         select V4L2_FWNODE
373         help
374           Support for the Toshiba TC358743 HDMI to MIPI CSI-2 bridge.
376           To compile this driver as a module, choose M here: the
377           module will be called tc358743.
379 config VIDEO_TC358743_CEC
380         bool "Enable Toshiba TC358743 CEC support"
381         depends on VIDEO_TC358743
382         select CEC_CORE
383         help
384           When selected the tc358743 will support the optional
385           HDMI CEC feature.
387 config VIDEO_TVP514X
388         tristate "Texas Instruments TVP514x video decoder"
389         depends on VIDEO_V4L2 && I2C
390         select V4L2_FWNODE
391         help
392           This is a Video4Linux2 sensor driver for the TI TVP5146/47
393           decoder. It is currently working with the TI OMAP3 camera
394           controller.
396           To compile this driver as a module, choose M here: the
397           module will be called tvp514x.
399 config VIDEO_TVP5150
400         tristate "Texas Instruments TVP5150 video decoder"
401         depends on VIDEO_V4L2 && I2C
402         select V4L2_FWNODE
403         select REGMAP_I2C
404         help
405           Support for the Texas Instruments TVP5150 video decoder.
407           To compile this driver as a module, choose M here: the
408           module will be called tvp5150.
410 config VIDEO_TVP7002
411         tristate "Texas Instruments TVP7002 video decoder"
412         depends on VIDEO_V4L2 && I2C
413         select V4L2_FWNODE
414         help
415           Support for the Texas Instruments TVP7002 video decoder.
417           To compile this driver as a module, choose M here: the
418           module will be called tvp7002.
420 config VIDEO_TW2804
421         tristate "Techwell TW2804 multiple video decoder"
422         depends on VIDEO_V4L2 && I2C
423         help
424           Support for the Techwell tw2804 multiple video decoder.
426           To compile this driver as a module, choose M here: the
427           module will be called tw2804.
429 config VIDEO_TW9903
430         tristate "Techwell TW9903 video decoder"
431         depends on VIDEO_V4L2 && I2C
432         help
433           Support for the Techwell tw9903 multi-standard video decoder
434           with high quality down scaler.
436           To compile this driver as a module, choose M here: the
437           module will be called tw9903.
439 config VIDEO_TW9906
440         tristate "Techwell TW9906 video decoder"
441         depends on VIDEO_V4L2 && I2C
442         help
443           Support for the Techwell tw9906 enhanced multi-standard comb filter
444           video decoder with YCbCr input support.
446           To compile this driver as a module, choose M here: the
447           module will be called tw9906.
449 config VIDEO_TW9910
450         tristate "Techwell TW9910 video decoder"
451         depends on VIDEO_V4L2 && I2C
452         help
453           Support for Techwell TW9910 NTSC/PAL/SECAM video decoder.
455           To compile this driver as a module, choose M here: the
456           module will be called tw9910.
458 config VIDEO_VPX3220
459         tristate "vpx3220a, vpx3216b & vpx3214c video decoders"
460         depends on VIDEO_V4L2 && I2C
461         help
462           Support for VPX322x video decoders.
464           To compile this driver as a module, choose M here: the
465           module will be called vpx3220.
467 config VIDEO_MAX9286
468         tristate "Maxim MAX9286 GMSL deserializer support"
469         depends on I2C && I2C_MUX
470         depends on OF_GPIO
471         select V4L2_FWNODE
472         select VIDEO_V4L2_SUBDEV_API
473         select MEDIA_CONTROLLER
474         help
475           This driver supports the Maxim MAX9286 GMSL deserializer.
477           To compile this driver as a module, choose M here: the
478           module will be called max9286.
480 comment "Video and audio decoders"
482 config VIDEO_SAA717X
483         tristate "Philips SAA7171/3/4 audio/video decoders"
484         depends on VIDEO_V4L2 && I2C
485         help
486           Support for the Philips SAA7171/3/4 audio/video decoders.
488           To compile this driver as a module, choose M here: the
489           module will be called saa717x.
491 source "drivers/media/i2c/cx25840/Kconfig"
493 endmenu
495 menu "Video encoders"
496         visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
498 config VIDEO_SAA7127
499         tristate "Philips SAA7127/9 digital video encoders"
500         depends on VIDEO_V4L2 && I2C
501         help
502           Support for the Philips SAA7127/9 digital video encoders.
504           To compile this driver as a module, choose M here: the
505           module will be called saa7127.
507 config VIDEO_SAA7185
508         tristate "Philips SAA7185 video encoder"
509         depends on VIDEO_V4L2 && I2C
510         help
511           Support for the Philips SAA7185 video encoder.
513           To compile this driver as a module, choose M here: the
514           module will be called saa7185.
516 config VIDEO_ADV7170
517         tristate "Analog Devices ADV7170 video encoder"
518         depends on VIDEO_V4L2 && I2C
519         help
520           Support for the Analog Devices ADV7170 video encoder driver
522           To compile this driver as a module, choose M here: the
523           module will be called adv7170.
525 config VIDEO_ADV7175
526         tristate "Analog Devices ADV7175 video encoder"
527         depends on VIDEO_V4L2 && I2C
528         help
529           Support for the Analog Devices ADV7175 video encoder driver
531           To compile this driver as a module, choose M here: the
532           module will be called adv7175.
534 config VIDEO_ADV7343
535         tristate "ADV7343 video encoder"
536         depends on I2C
537         help
538           Support for Analog Devices I2C bus based ADV7343 encoder.
540           To compile this driver as a module, choose M here: the
541           module will be called adv7343.
543 config VIDEO_ADV7393
544         tristate "ADV7393 video encoder"
545         depends on I2C
546         help
547           Support for Analog Devices I2C bus based ADV7393 encoder.
549           To compile this driver as a module, choose M here: the
550           module will be called adv7393.
552 config VIDEO_ADV7511
553         tristate "Analog Devices ADV7511 encoder"
554         depends on VIDEO_V4L2 && I2C
555         depends on DRM_I2C_ADV7511=n || COMPILE_TEST
556         select MEDIA_CONTROLLER
557         select VIDEO_V4L2_SUBDEV_API
558         select HDMI
559         help
560           Support for the Analog Devices ADV7511 video encoder.
562           This is a Analog Devices HDMI transmitter.
564           To compile this driver as a module, choose M here: the
565           module will be called adv7511.
567 config VIDEO_ADV7511_CEC
568         bool "Enable Analog Devices ADV7511 CEC support"
569         depends on VIDEO_ADV7511
570         select CEC_CORE
571         help
572           When selected the adv7511 will support the optional
573           HDMI CEC feature.
575 config VIDEO_AD9389B
576         tristate "Analog Devices AD9389B encoder"
577         depends on VIDEO_V4L2 && I2C
578         select MEDIA_CONTROLLER
579         select VIDEO_V4L2_SUBDEV_API
581         help
582           Support for the Analog Devices AD9389B video encoder.
584           This is a Analog Devices HDMI transmitter.
586           To compile this driver as a module, choose M here: the
587           module will be called ad9389b.
589 config VIDEO_AK881X
590         tristate "AK8813/AK8814 video encoders"
591         depends on I2C
592         help
593           Video output driver for AKM AK8813 and AK8814 TV encoders
595 config VIDEO_THS8200
596         tristate "Texas Instruments THS8200 video encoder"
597         depends on VIDEO_V4L2 && I2C
598         help
599           Support for the Texas Instruments THS8200 video encoder.
601           To compile this driver as a module, choose M here: the
602           module will be called ths8200.
603 endmenu
605 menu "Video improvement chips"
606         visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
608 config VIDEO_UPD64031A
609         tristate "NEC Electronics uPD64031A Ghost Reduction"
610         depends on VIDEO_V4L2 && I2C
611         help
612           Support for the NEC Electronics uPD64031A Ghost Reduction
613           video chip. It is most often found in NTSC TV cards made for
614           Japan and is used to reduce the 'ghosting' effect that can
615           be present in analog TV broadcasts.
617           To compile this driver as a module, choose M here: the
618           module will be called upd64031a.
620 config VIDEO_UPD64083
621         tristate "NEC Electronics uPD64083 3-Dimensional Y/C separation"
622         depends on VIDEO_V4L2 && I2C
623         help
624           Support for the NEC Electronics uPD64083 3-Dimensional Y/C
625           separation video chip. It is used to improve the quality of
626           the colors of a composite signal.
628           To compile this driver as a module, choose M here: the
629           module will be called upd64083.
630 endmenu
632 menu "Audio/Video compression chips"
633         visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
635 config VIDEO_SAA6752HS
636         tristate "Philips SAA6752HS MPEG-2 Audio/Video Encoder"
637         depends on VIDEO_V4L2 && I2C
638         select CRC32
639         help
640           Support for the Philips SAA6752HS MPEG-2 video and MPEG-audio/AC-3
641           audio encoder with multiplexer.
643           To compile this driver as a module, choose M here: the
644           module will be called saa6752hs.
646 endmenu
648 menu "SDR tuner chips"
649         visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
651 config SDR_MAX2175
652         tristate "Maxim 2175 RF to Bits tuner"
653         depends on VIDEO_V4L2 && MEDIA_SDR_SUPPORT && I2C
654         select REGMAP_I2C
655         help
656           Support for Maxim 2175 tuner. It is an advanced analog/digital
657           radio receiver with RF-to-Bits front-end designed for SDR solutions.
659           To compile this driver as a module, choose M here; the
660           module will be called max2175.
663 endmenu
665 menu "Miscellaneous helper chips"
666         visible if !MEDIA_HIDE_ANCILLARY_SUBDRV
668 config VIDEO_THS7303
669         tristate "THS7303/53 Video Amplifier"
670         depends on VIDEO_V4L2 && I2C
671         help
672           Support for TI THS7303/53 video amplifier
674           To compile this driver as a module, choose M here: the
675           module will be called ths7303.
677 config VIDEO_M52790
678         tristate "Mitsubishi M52790 A/V switch"
679         depends on VIDEO_V4L2 && I2C
680         help
681          Support for the Mitsubishi M52790 A/V switch.
683          To compile this driver as a module, choose M here: the
684          module will be called m52790.
686 config VIDEO_I2C
687         tristate "I2C transport video support"
688         depends on VIDEO_V4L2 && I2C
689         select VIDEOBUF2_VMALLOC
690         imply HWMON
691         help
692           Enable the I2C transport video support which supports the
693           following:
694            * Panasonic AMG88xx Grid-Eye Sensors
695            * Melexis MLX90640 Thermal Cameras
697           To compile this driver as a module, choose M here: the
698           module will be called video-i2c
700 config VIDEO_ST_MIPID02
701         tristate "STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge"
702         depends on I2C && VIDEO_V4L2
703         select MEDIA_CONTROLLER
704         select VIDEO_V4L2_SUBDEV_API
705         select V4L2_FWNODE
706         help
707           Support for STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge.
708           It is used to allow usage of CSI-2 sensor with PARALLEL port
709           controller.
711           To compile this driver as a module, choose M here: the
712           module will be called st-mipid02.
713 endmenu
716 # V4L2 I2C drivers that are related with Camera support
719 menu "Camera sensor devices"
720         visible if MEDIA_CAMERA_SUPPORT
722 config VIDEO_APTINA_PLL
723         tristate
725 config VIDEO_CCS_PLL
726         tristate
728 config VIDEO_HI556
729         tristate "Hynix Hi-556 sensor support"
730         depends on I2C && VIDEO_V4L2
731         select MEDIA_CONTROLLER
732         select VIDEO_V4L2_SUBDEV_API
733         select V4L2_FWNODE
734         help
735           This is a Video4Linux2 sensor driver for the Hynix
736           Hi-556 camera.
738           To compile this driver as a module, choose M here: the
739           module will be called hi556.
741 config VIDEO_IMX214
742         tristate "Sony IMX214 sensor support"
743         depends on GPIOLIB && I2C && VIDEO_V4L2
744         select V4L2_FWNODE
745         select MEDIA_CONTROLLER
746         select VIDEO_V4L2_SUBDEV_API
747         select REGMAP_I2C
748         help
749           This is a Video4Linux2 sensor driver for the Sony
750           IMX214 camera.
752           To compile this driver as a module, choose M here: the
753           module will be called imx214.
755 config VIDEO_IMX219
756         tristate "Sony IMX219 sensor support"
757         depends on I2C && VIDEO_V4L2
758         select MEDIA_CONTROLLER
759         select VIDEO_V4L2_SUBDEV_API
760         select V4L2_FWNODE
761         help
762           This is a Video4Linux2 sensor driver for the Sony
763           IMX219 camera.
765           To compile this driver as a module, choose M here: the
766           module will be called imx219.
768 config VIDEO_IMX258
769         tristate "Sony IMX258 sensor support"
770         depends on I2C && VIDEO_V4L2
771         select MEDIA_CONTROLLER
772         select VIDEO_V4L2_SUBDEV_API
773         help
774           This is a Video4Linux2 sensor driver for the Sony
775           IMX258 camera.
777           To compile this driver as a module, choose M here: the
778           module will be called imx258.
780 config VIDEO_IMX274
781         tristate "Sony IMX274 sensor support"
782         depends on I2C && VIDEO_V4L2
783         select MEDIA_CONTROLLER
784         select VIDEO_V4L2_SUBDEV_API
785         select REGMAP_I2C
786         help
787           This is a V4L2 sensor driver for the Sony IMX274
788           CMOS image sensor.
790 config VIDEO_IMX290
791         tristate "Sony IMX290 sensor support"
792         depends on I2C && VIDEO_V4L2
793         select MEDIA_CONTROLLER
794         select VIDEO_V4L2_SUBDEV_API
795         select REGMAP_I2C
796         select V4L2_FWNODE
797         help
798           This is a Video4Linux2 sensor driver for the Sony
799           IMX290 camera sensor.
801           To compile this driver as a module, choose M here: the
802           module will be called imx290.
804 config VIDEO_IMX319
805         tristate "Sony IMX319 sensor support"
806         depends on I2C && VIDEO_V4L2
807         select MEDIA_CONTROLLER
808         select VIDEO_V4L2_SUBDEV_API
809         help
810           This is a Video4Linux2 sensor driver for the Sony
811           IMX319 camera.
813           To compile this driver as a module, choose M here: the
814           module will be called imx319.
816 config VIDEO_IMX355
817         tristate "Sony IMX355 sensor support"
818         depends on I2C && VIDEO_V4L2
819         select MEDIA_CONTROLLER
820         select VIDEO_V4L2_SUBDEV_API
821         help
822           This is a Video4Linux2 sensor driver for the Sony
823           IMX355 camera.
825           To compile this driver as a module, choose M here: the
826           module will be called imx355.
828 config VIDEO_OV02A10
829         tristate "OmniVision OV02A10 sensor support"
830         depends on VIDEO_V4L2 && I2C
831         select MEDIA_CONTROLLER
832         select VIDEO_V4L2_SUBDEV_API
833         select V4L2_FWNODE
834         help
835           This is a Video4Linux2 sensor driver for the OmniVision
836           OV02A10 camera.
838           To compile this driver as a module, choose M here: the
839           module will be called ov02a10.
841 config VIDEO_OV2640
842         tristate "OmniVision OV2640 sensor support"
843         depends on VIDEO_V4L2 && I2C
844         help
845           This is a Video4Linux2 sensor driver for the OmniVision
846           OV2640 camera.
848           To compile this driver as a module, choose M here: the
849           module will be called ov2640.
851 config VIDEO_OV2659
852         tristate "OmniVision OV2659 sensor support"
853         depends on VIDEO_V4L2 && I2C && GPIOLIB
854         select V4L2_FWNODE
855         help
856           This is a Video4Linux2 sensor driver for the OmniVision
857           OV2659 camera.
859           To compile this driver as a module, choose M here: the
860           module will be called ov2659.
862 config VIDEO_OV2680
863         tristate "OmniVision OV2680 sensor support"
864         depends on VIDEO_V4L2 && I2C
865         select MEDIA_CONTROLLER
866         select V4L2_FWNODE
867         help
868           This is a Video4Linux2 sensor driver for the OmniVision
869           OV2680 camera.
871           To compile this driver as a module, choose M here: the
872           module will be called ov2680.
874 config VIDEO_OV2685
875         tristate "OmniVision OV2685 sensor support"
876         depends on VIDEO_V4L2 && I2C
877         select MEDIA_CONTROLLER
878         select V4L2_FWNODE
879         help
880           This is a Video4Linux2 sensor driver for the OmniVision
881           OV2685 camera.
883           To compile this driver as a module, choose M here: the
884           module will be called ov2685.
886 config VIDEO_OV2740
887         tristate "OmniVision OV2740 sensor support"
888         depends on VIDEO_V4L2 && I2C
889         depends on ACPI || COMPILE_TEST
890         select MEDIA_CONTROLLER
891         select VIDEO_V4L2_SUBDEV_API
892         select V4L2_FWNODE
893         select REGMAP_I2C
894         help
895           This is a Video4Linux2 sensor driver for the OmniVision
896           OV2740 camera.
898           To compile this driver as a module, choose M here: the
899           module will be called ov2740.
901 config VIDEO_OV5640
902         tristate "OmniVision OV5640 sensor support"
903         depends on OF
904         depends on GPIOLIB && VIDEO_V4L2 && I2C
905         select MEDIA_CONTROLLER
906         select VIDEO_V4L2_SUBDEV_API
907         select V4L2_FWNODE
908         help
909           This is a Video4Linux2 sensor driver for the Omnivision
910           OV5640 camera sensor with a MIPI CSI-2 interface.
912 config VIDEO_OV5645
913         tristate "OmniVision OV5645 sensor support"
914         depends on OF
915         depends on I2C && VIDEO_V4L2
916         select MEDIA_CONTROLLER
917         select VIDEO_V4L2_SUBDEV_API
918         select V4L2_FWNODE
919         help
920           This is a Video4Linux2 sensor driver for the OmniVision
921           OV5645 camera.
923           To compile this driver as a module, choose M here: the
924           module will be called ov5645.
926 config VIDEO_OV5647
927         tristate "OmniVision OV5647 sensor support"
928         depends on I2C && VIDEO_V4L2
929         select MEDIA_CONTROLLER
930         select VIDEO_V4L2_SUBDEV_API
931         select V4L2_FWNODE
932         help
933           This is a Video4Linux2 sensor driver for the OmniVision
934           OV5647 camera.
936           To compile this driver as a module, choose M here: the
937           module will be called ov5647.
939 config VIDEO_OV6650
940         tristate "OmniVision OV6650 sensor support"
941         depends on I2C && VIDEO_V4L2
942         help
943           This is a Video4Linux2 sensor driver for the OmniVision
944           OV6650 camera.
946           To compile this driver as a module, choose M here: the
947           module will be called ov6650.
949 config VIDEO_OV5670
950         tristate "OmniVision OV5670 sensor support"
951         depends on I2C && VIDEO_V4L2
952         select MEDIA_CONTROLLER
953         select VIDEO_V4L2_SUBDEV_API
954         select V4L2_FWNODE
955         help
956           This is a Video4Linux2 sensor driver for the OmniVision
957           OV5670 camera.
959           To compile this driver as a module, choose M here: the
960           module will be called ov5670.
962 config VIDEO_OV5675
963         tristate "OmniVision OV5675 sensor support"
964         depends on I2C && VIDEO_V4L2
965         select MEDIA_CONTROLLER
966         select VIDEO_V4L2_SUBDEV_API
967         select V4L2_FWNODE
968         help
969           This is a Video4Linux2 sensor driver for the OmniVision
970           OV5675 camera.
972           To compile this driver as a module, choose M here: the
973           module will be called ov5675.
975 config VIDEO_OV5695
976         tristate "OmniVision OV5695 sensor support"
977         depends on I2C && VIDEO_V4L2
978         select V4L2_FWNODE
979         help
980           This is a Video4Linux2 sensor driver for the OmniVision
981           OV5695 camera.
983           To compile this driver as a module, choose M here: the
984           module will be called ov5695.
986 config VIDEO_OV7251
987         tristate "OmniVision OV7251 sensor support"
988         depends on I2C && VIDEO_V4L2
989         select MEDIA_CONTROLLER
990         select VIDEO_V4L2_SUBDEV_API
991         select V4L2_FWNODE
992         help
993           This is a Video4Linux2 sensor driver for the OmniVision
994           OV7251 camera.
996           To compile this driver as a module, choose M here: the
997           module will be called ov7251.
999 config VIDEO_OV772X
1000         tristate "OmniVision OV772x sensor support"
1001         depends on I2C && VIDEO_V4L2
1002         select REGMAP_SCCB
1003         help
1004           This is a Video4Linux2 sensor driver for the OmniVision
1005           OV772x camera.
1007           To compile this driver as a module, choose M here: the
1008           module will be called ov772x.
1010 config VIDEO_OV7640
1011         tristate "OmniVision OV7640 sensor support"
1012         depends on I2C && VIDEO_V4L2
1013         help
1014           This is a Video4Linux2 sensor driver for the OmniVision
1015           OV7640 camera.
1017           To compile this driver as a module, choose M here: the
1018           module will be called ov7640.
1020 config VIDEO_OV7670
1021         tristate "OmniVision OV7670 sensor support"
1022         depends on I2C && VIDEO_V4L2
1023         select V4L2_FWNODE
1024         help
1025           This is a Video4Linux2 sensor driver for the OmniVision
1026           OV7670 VGA camera.  It currently only works with the M88ALP01
1027           controller.
1029 config VIDEO_OV7740
1030         tristate "OmniVision OV7740 sensor support"
1031         depends on I2C && VIDEO_V4L2
1032         select REGMAP_SCCB
1033         help
1034           This is a Video4Linux2 sensor driver for the OmniVision
1035           OV7740 VGA camera sensor.
1037 config VIDEO_OV8856
1038         tristate "OmniVision OV8856 sensor support"
1039         depends on I2C && VIDEO_V4L2
1040         select MEDIA_CONTROLLER
1041         select VIDEO_V4L2_SUBDEV_API
1042         select V4L2_FWNODE
1043         help
1044           This is a Video4Linux2 sensor driver for the OmniVision
1045           OV8856 camera sensor.
1047           To compile this driver as a module, choose M here: the
1048           module will be called ov8856.
1050 config VIDEO_OV9640
1051         tristate "OmniVision OV9640 sensor support"
1052         depends on I2C && VIDEO_V4L2
1053         help
1054           This is a Video4Linux2 sensor driver for the OmniVision
1055           OV9640 camera sensor.
1057 config VIDEO_OV9650
1058         tristate "OmniVision OV9650/OV9652 sensor support"
1059         depends on I2C && VIDEO_V4L2
1060         select MEDIA_CONTROLLER
1061         select VIDEO_V4L2_SUBDEV_API
1062         select REGMAP_SCCB
1063         help
1064           This is a V4L2 sensor driver for the Omnivision
1065           OV9650 and OV9652 camera sensors.
1067 config VIDEO_OV9734
1068         tristate "OmniVision OV9734 sensor support"
1069         depends on VIDEO_V4L2 && I2C
1070         depends on ACPI || COMPILE_TEST
1071         select MEDIA_CONTROLLER
1072         select VIDEO_V4L2_SUBDEV_API
1073         select V4L2_FWNODE
1074         help
1075           This is a Video4Linux2 sensor driver for the OmniVision
1076           OV9734 camera.
1078           To compile this driver as a module, choose M here: the
1079           module's name is ov9734.
1081 config VIDEO_OV13858
1082         tristate "OmniVision OV13858 sensor support"
1083         depends on I2C && VIDEO_V4L2
1084         select MEDIA_CONTROLLER
1085         select VIDEO_V4L2_SUBDEV_API
1086         select V4L2_FWNODE
1087         help
1088           This is a Video4Linux2 sensor driver for the OmniVision
1089           OV13858 camera.
1091 config VIDEO_VS6624
1092         tristate "ST VS6624 sensor support"
1093         depends on VIDEO_V4L2 && I2C
1094         help
1095           This is a Video4Linux2 sensor driver for the ST VS6624
1096           camera.
1098           To compile this driver as a module, choose M here: the
1099           module will be called vs6624.
1101 config VIDEO_MT9M001
1102         tristate "mt9m001 support"
1103         depends on I2C && VIDEO_V4L2
1104         select MEDIA_CONTROLLER
1105         select VIDEO_V4L2_SUBDEV_API
1106         help
1107           This driver supports MT9M001 cameras from Micron, monochrome
1108           and colour models.
1110 config VIDEO_MT9M032
1111         tristate "MT9M032 camera sensor support"
1112         depends on I2C && VIDEO_V4L2
1113         select MEDIA_CONTROLLER
1114         select VIDEO_V4L2_SUBDEV_API
1115         select VIDEO_APTINA_PLL
1116         help
1117           This driver supports MT9M032 camera sensors from Aptina, monochrome
1118           models only.
1120 config VIDEO_MT9M111
1121         tristate "mt9m111, mt9m112 and mt9m131 support"
1122         depends on I2C && VIDEO_V4L2
1123         select V4L2_FWNODE
1124         help
1125           This driver supports MT9M111, MT9M112 and MT9M131 cameras from
1126           Micron/Aptina
1128 config VIDEO_MT9P031
1129         tristate "Aptina MT9P031 support"
1130         depends on I2C && VIDEO_V4L2
1131         select MEDIA_CONTROLLER
1132         select VIDEO_V4L2_SUBDEV_API
1133         select VIDEO_APTINA_PLL
1134         help
1135           This is a Video4Linux2 sensor driver for the Aptina
1136           (Micron) mt9p031 5 Mpixel camera.
1138 config VIDEO_MT9T001
1139         tristate "Aptina MT9T001 support"
1140         depends on I2C && VIDEO_V4L2
1141         select MEDIA_CONTROLLER
1142         select VIDEO_V4L2_SUBDEV_API
1143         help
1144           This is a Video4Linux2 sensor driver for the Aptina
1145           (Micron) mt0t001 3 Mpixel camera.
1147 config VIDEO_MT9T112
1148         tristate "Aptina MT9T111/MT9T112 support"
1149         depends on I2C && VIDEO_V4L2
1150         help
1151           This is a Video4Linux2 sensor driver for the Aptina
1152           (Micron) MT9T111 and MT9T112 3 Mpixel camera.
1154           To compile this driver as a module, choose M here: the
1155           module will be called mt9t112.
1157 config VIDEO_MT9V011
1158         tristate "Micron mt9v011 sensor support"
1159         depends on I2C && VIDEO_V4L2
1160         help
1161           This is a Video4Linux2 sensor driver for the Micron
1162           mt0v011 1.3 Mpixel camera.  It currently only works with the
1163           em28xx driver.
1165 config VIDEO_MT9V032
1166         tristate "Micron MT9V032 sensor support"
1167         depends on I2C && VIDEO_V4L2
1168         select MEDIA_CONTROLLER
1169         select VIDEO_V4L2_SUBDEV_API
1170         select REGMAP_I2C
1171         select V4L2_FWNODE
1172         help
1173           This is a Video4Linux2 sensor driver for the Micron
1174           MT9V032 752x480 CMOS sensor.
1176 config VIDEO_MT9V111
1177         tristate "Aptina MT9V111 sensor support"
1178         depends on I2C && VIDEO_V4L2
1179         help
1180           This is a Video4Linux2 sensor driver for the Aptina/Micron
1181           MT9V111 sensor.
1183           To compile this driver as a module, choose M here: the
1184           module will be called mt9v111.
1186 config VIDEO_SR030PC30
1187         tristate "Siliconfile SR030PC30 sensor support"
1188         depends on I2C && VIDEO_V4L2
1189         help
1190           This driver supports SR030PC30 VGA camera from Siliconfile
1192 config VIDEO_NOON010PC30
1193         tristate "Siliconfile NOON010PC30 sensor support"
1194         depends on I2C && VIDEO_V4L2
1195         select MEDIA_CONTROLLER
1196         select VIDEO_V4L2_SUBDEV_API
1197         help
1198           This driver supports NOON010PC30 CIF camera from Siliconfile
1200 source "drivers/media/i2c/m5mols/Kconfig"
1202 config VIDEO_RDACM20
1203         tristate "IMI RDACM20 camera support"
1204         depends on I2C
1205         select V4L2_FWNODE
1206         select VIDEO_V4L2_SUBDEV_API
1207         select MEDIA_CONTROLLER
1208         help
1209           This driver supports the IMI RDACM20 GMSL camera, used in
1210           ADAS systems.
1212           This camera should be used in conjunction with a GMSL
1213           deserialiser such as the MAX9286.
1215 config VIDEO_RJ54N1
1216         tristate "Sharp RJ54N1CB0C sensor support"
1217         depends on I2C && VIDEO_V4L2
1218         help
1219           This is a V4L2 sensor driver for Sharp RJ54N1CB0C CMOS image
1220           sensor.
1222           To compile this driver as a module, choose M here: the
1223           module will be called rj54n1.
1225 config VIDEO_S5K6AA
1226         tristate "Samsung S5K6AAFX sensor support"
1227         depends on I2C && VIDEO_V4L2
1228         select MEDIA_CONTROLLER
1229         select VIDEO_V4L2_SUBDEV_API
1230         help
1231           This is a V4L2 sensor driver for Samsung S5K6AA(FX) 1.3M
1232           camera sensor with an embedded SoC image signal processor.
1234 config VIDEO_S5K6A3
1235         tristate "Samsung S5K6A3 sensor support"
1236         depends on I2C && VIDEO_V4L2
1237         select MEDIA_CONTROLLER
1238         select VIDEO_V4L2_SUBDEV_API
1239         help
1240           This is a V4L2 sensor driver for Samsung S5K6A3 raw
1241           camera sensor.
1243 config VIDEO_S5K4ECGX
1244         tristate "Samsung S5K4ECGX sensor support"
1245         depends on I2C && VIDEO_V4L2
1246         select MEDIA_CONTROLLER
1247         select VIDEO_V4L2_SUBDEV_API
1248         select CRC32
1249         help
1250           This is a V4L2 sensor driver for Samsung S5K4ECGX 5M
1251           camera sensor with an embedded SoC image signal processor.
1253 config VIDEO_S5K5BAF
1254         tristate "Samsung S5K5BAF sensor support"
1255         depends on I2C && VIDEO_V4L2
1256         select MEDIA_CONTROLLER
1257         select VIDEO_V4L2_SUBDEV_API
1258         select V4L2_FWNODE
1259         help
1260           This is a V4L2 sensor driver for Samsung S5K5BAF 2M
1261           camera sensor with an embedded SoC image signal processor.
1263 source "drivers/media/i2c/ccs/Kconfig"
1264 source "drivers/media/i2c/et8ek8/Kconfig"
1266 config VIDEO_S5C73M3
1267         tristate "Samsung S5C73M3 sensor support"
1268         depends on I2C && SPI && VIDEO_V4L2
1269         select MEDIA_CONTROLLER
1270         select VIDEO_V4L2_SUBDEV_API
1271         select V4L2_FWNODE
1272         help
1273           This is a V4L2 sensor driver for Samsung S5C73M3
1274           8 Mpixel camera.
1276 endmenu
1278 menu "Lens drivers"
1279         visible if MEDIA_CAMERA_SUPPORT
1281 config VIDEO_AD5820
1282         tristate "AD5820 lens voice coil support"
1283         depends on GPIOLIB && I2C && VIDEO_V4L2
1284         select MEDIA_CONTROLLER
1285         help
1286           This is a driver for the AD5820 camera lens voice coil.
1287           It is used for example in Nokia N900 (RX-51).
1289 config VIDEO_AK7375
1290         tristate "AK7375 lens voice coil support"
1291         depends on I2C && VIDEO_V4L2
1292         select MEDIA_CONTROLLER
1293         select VIDEO_V4L2_SUBDEV_API
1294         help
1295           This is a driver for the AK7375 camera lens voice coil.
1296           AK7375 is a 12 bit DAC with 120mA output current sink
1297           capability. This is designed for linear control of
1298           voice coil motors, controlled via I2C serial interface.
1300 config VIDEO_DW9714
1301         tristate "DW9714 lens voice coil support"
1302         depends on I2C && VIDEO_V4L2
1303         select MEDIA_CONTROLLER
1304         select VIDEO_V4L2_SUBDEV_API
1305         help
1306           This is a driver for the DW9714 camera lens voice coil.
1307           DW9714 is a 10 bit DAC with 120mA output current sink
1308           capability. This is designed for linear control of
1309           voice coil motors, controlled via I2C serial interface.
1311 config VIDEO_DW9768
1312         tristate "DW9768 lens voice coil support"
1313         depends on I2C && VIDEO_V4L2
1314         select MEDIA_CONTROLLER
1315         select VIDEO_V4L2_SUBDEV_API
1316         select V4L2_FWNODE
1317         help
1318           This is a driver for the DW9768 camera lens voice coil.
1319           DW9768 is a 10 bit DAC with 100mA output current sink
1320           capability. This is designed for linear control of
1321           voice coil motors, controlled via I2C serial interface.
1323 config VIDEO_DW9807_VCM
1324         tristate "DW9807 lens voice coil support"
1325         depends on I2C && VIDEO_V4L2
1326         select MEDIA_CONTROLLER
1327         select VIDEO_V4L2_SUBDEV_API
1328         help
1329           This is a driver for the DW9807 camera lens voice coil.
1330           DW9807 is a 10 bit DAC with 100mA output current sink
1331           capability. This is designed for linear control of
1332           voice coil motors, controlled via I2C serial interface.
1334 endmenu
1336 menu "Flash devices"
1337         visible if MEDIA_CAMERA_SUPPORT
1339 config VIDEO_ADP1653
1340         tristate "ADP1653 flash support"
1341         depends on I2C && VIDEO_V4L2
1342         select MEDIA_CONTROLLER
1343         help
1344           This is a driver for the ADP1653 flash controller. It is used for
1345           example in Nokia N900.
1347 config VIDEO_LM3560
1348         tristate "LM3560 dual flash driver support"
1349         depends on I2C && VIDEO_V4L2
1350         select MEDIA_CONTROLLER
1351         select REGMAP_I2C
1352         help
1353           This is a driver for the lm3560 dual flash controllers. It controls
1354           flash, torch LEDs.
1356 config VIDEO_LM3646
1357         tristate "LM3646 dual flash driver support"
1358         depends on I2C && VIDEO_V4L2
1359         select MEDIA_CONTROLLER
1360         select REGMAP_I2C
1361         help
1362           This is a driver for the lm3646 dual flash controllers. It controls
1363           flash, torch LEDs.
1364 endmenu
1366 endif # VIDEO_V4L2