GNU Linux-libre 6.9.1-gnu
[releases.git] / drivers / iio / light / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2
3 #
4 # Light sensors
5 #
6 # When adding new entries keep the list in alphabetical order
7
8 menu "Light sensors"
9
10 config ACPI_ALS
11         tristate "ACPI Ambient Light Sensor"
12         depends on ACPI
13         select IIO_BUFFER
14         select IIO_TRIGGERED_BUFFER
15         select IIO_KFIFO_BUF
16         help
17           Say Y here if you want to build a driver for the ACPI0008
18           Ambient Light Sensor.
19
20           To compile this driver as a module, choose M here: the module will
21           be called acpi-als.
22
23 config ADJD_S311
24         tristate "ADJD-S311-CR999 digital color sensor"
25         select IIO_BUFFER
26         select IIO_TRIGGERED_BUFFER
27         depends on I2C
28         help
29           If you say yes here you get support for the Avago ADJD-S311-CR999
30           digital color light sensor.
31
32           This driver can also be built as a module.  If so, the module
33           will be called adjd_s311.
34
35 config ADUX1020
36         tristate "ADUX1020 photometric sensor"
37         select REGMAP_I2C
38         depends on I2C
39         help
40          Say Y here if you want to build a driver for the Analog Devices
41          ADUX1020 photometric sensor.
42
43          To compile this driver as a module, choose M here: the
44          module will be called adux1020.
45
46 config AL3010
47         tristate "AL3010 ambient light sensor"
48         depends on I2C
49         help
50           Say Y here if you want to build a driver for the Dyna Image AL3010
51           ambient light sensor.
52
53           To compile this driver as a module, choose M here: the
54           module will be called al3010.
55
56 config AL3320A
57         tristate "AL3320A ambient light sensor"
58         depends on I2C
59         help
60           Say Y here if you want to build a driver for the Dyna Image AL3320A
61           ambient light sensor.
62
63           To compile this driver as a module, choose M here: the
64           module will be called al3320a.
65
66 config APDS9300
67         tristate "APDS9300 ambient light sensor"
68         depends on I2C
69         help
70           Say Y here if you want to build a driver for the Avago APDS9300
71           ambient light sensor.
72
73           To compile this driver as a module, choose M here: the
74           module will be called apds9300.
75
76 config APDS9960
77         tristate "Avago APDS9960 gesture/RGB/ALS/proximity sensor"
78         select REGMAP_I2C
79         select IIO_BUFFER
80         select IIO_KFIFO_BUF
81         depends on I2C
82         help
83           Say Y here to build I2C interface support for the Avago
84           APDS9960 gesture/RGB/ALS/proximity sensor.
85
86           To compile this driver as a module, choose M here: the
87           module will be called apds9960
88
89 config AS73211
90         tristate "AMS AS73211 XYZ color sensor and AMS AS7331 UV sensor"
91         depends on I2C
92         select IIO_BUFFER
93         select IIO_TRIGGERED_BUFFER
94         help
95          If you say yes here you get support for the AMS AS73211
96          JENCOLOR(R) Digital XYZ and the AMS AS7331 UVA, UVB and UVC
97          ultraviolet sensors.
98
99          For triggered measurements, you will need an additional trigger driver
100          like IIO_HRTIMER_TRIGGER or IIO_SYSFS_TRIGGER.
101
102          This driver can also be built as a module.  If so, the module
103          will be called as73211.
104
105 config BH1750
106         tristate "ROHM BH1750 ambient light sensor"
107         depends on I2C
108         help
109           Say Y here to build support for the ROHM BH1710, BH1715, BH1721,
110           BH1750, BH1751 ambient light sensors.
111
112           To compile this driver as a module, choose M here: the module will
113           be called bh1750.
114
115 config BH1780
116         tristate "ROHM BH1780 ambient light sensor"
117         depends on I2C
118         help
119           Say Y here to build support for the ROHM BH1780GLI ambient
120           light sensor.
121
122           To compile this driver as a module, choose M here: the module will
123           be called bh1780.
124
125 config CM32181
126         depends on I2C
127         tristate "CM32181 driver"
128         help
129           Say Y here if you use cm32181.
130           This option enables ambient light sensor using
131           Capella cm32181 device driver.
132
133           To compile this driver as a module, choose M here:
134           the module will be called cm32181.
135
136 config CM3232
137         depends on I2C
138         tristate "CM3232 ambient light sensor"
139         help
140           Say Y here if you use cm3232.
141           This option enables ambient light sensor using
142           Capella Microsystems cm3232 device driver.
143
144           To compile this driver as a module, choose M here:
145           the module will be called cm3232.
146
147 config CM3323
148         depends on I2C
149         tristate "Capella CM3323 color light sensor"
150         help
151           Say Y here if you want to build a driver for Capella CM3323
152           color sensor.
153
154           To compile this driver as a module, choose M here: the module will
155           be called cm3323.
156
157 config CM3605
158         tristate "Capella CM3605 ambient light and proximity sensor"
159         help
160           Say Y here if you want to build a driver for Capella CM3605
161           ambient light and short range proximity sensor.
162
163           To compile this driver as a module, choose M here: the module will
164           be called cm3605.
165
166 config CM36651
167         depends on I2C
168         tristate "CM36651 driver"
169         help
170           Say Y here if you use cm36651.
171           This option enables proximity & RGB sensor using
172           Capella cm36651 device driver.
173
174           To compile this driver as a module, choose M here:
175           the module will be called cm36651.
176
177 config IIO_CROS_EC_LIGHT_PROX
178         tristate "ChromeOS EC Light and Proximity Sensors"
179         depends on IIO_CROS_EC_SENSORS_CORE
180         help
181           Say Y here if you use the light and proximity sensors
182           presented by the ChromeOS EC Sensor hub.
183
184           To compile this driver as a module, choose M here:
185           the module will be called cros_ec_light_prox.
186
187 config GP2AP002
188         tristate "Sharp GP2AP002 Proximity/ALS sensor"
189         depends on I2C
190         select REGMAP
191         help
192           Say Y here if you have a Sharp GP2AP002 proximity/ALS combo-chip
193           hooked to an I2C bus.
194
195           To compile this driver as a module, choose M here: the
196           module will be called gp2ap002.
197
198 config GP2AP020A00F
199         tristate "Sharp GP2AP020A00F Proximity/ALS sensor"
200         depends on I2C
201         select REGMAP_I2C
202         select IIO_BUFFER
203         select IIO_TRIGGERED_BUFFER
204         select IRQ_WORK
205         help
206           Say Y here if you have a Sharp GP2AP020A00F proximity/ALS combo-chip
207           hooked to an I2C bus.
208
209           To compile this driver as a module, choose M here: the
210           module will be called gp2ap020a00f.
211
212 config IQS621_ALS
213         tristate "Azoteq IQS621/622 ambient light sensors"
214         depends on MFD_IQS62X || COMPILE_TEST
215         help
216           Say Y here if you want to build support for the Azoteq IQS621
217           and IQS622 ambient light sensors.
218
219           To compile this driver as a module, choose M here: the module
220           will be called iqs621-als.
221
222 config SENSORS_ISL29018
223         tristate "Intersil 29018 light and proximity sensor"
224         depends on I2C
225         select REGMAP_I2C
226         default n
227         help
228           If you say yes here you get support for ambient light sensing and
229           proximity infrared sensing from Intersil ISL29018.
230           This driver will provide the measurements of ambient light intensity
231           in lux, proximity infrared sensing and normal infrared sensing.
232           Data from sensor is accessible via sysfs.
233
234 config SENSORS_ISL29028
235         tristate "Intersil ISL29028 Concurrent Light and Proximity Sensor"
236         depends on I2C
237         select REGMAP_I2C
238         help
239           Provides driver for the Intersil's ISL29028 device.
240           This driver supports the sysfs interface to get the ALS, IR intensity,
241           Proximity value via iio. The ISL29028 provides the concurrent sensing
242           of ambient light and proximity.
243
244 config ISL29125
245         tristate "Intersil ISL29125 digital color light sensor"
246         depends on I2C
247         select IIO_BUFFER
248         select IIO_TRIGGERED_BUFFER
249         help
250           Say Y here if you want to build a driver for the Intersil ISL29125
251           RGB light sensor for I2C.
252
253           To compile this driver as a module, choose M here: the module will be
254           called isl29125.
255
256 config ISL76682
257         tristate "Intersil ISL76682 Light Sensor"
258         depends on I2C
259         select REGMAP_I2C
260         help
261           Say Y here if you want to build a driver for the Intersil ISL76682
262           Ambient Light Sensor and IR Intensity sensor. This driver provides
263           the readouts via standard IIO sysfs and device interface. Both ALS
264           illuminance and IR illuminance are provided raw with separate scale
265           setting which can be configured via sysfs, the default scale is 1000
266           lux, other options are 4000/16000/64000 lux.
267
268           To compile this driver as a module, choose M here: the module will be
269           called isl76682.
270
271 config HID_SENSOR_ALS
272         depends on HID_SENSOR_HUB
273         select IIO_BUFFER
274         select HID_SENSOR_IIO_COMMON
275         select HID_SENSOR_IIO_TRIGGER
276         tristate "HID ALS"
277         help
278           Say yes here to build support for the HID SENSOR
279           Ambient light sensor.
280
281           To compile this driver as a module, choose M here: the
282           module will be called hid-sensor-als.
283
284 config HID_SENSOR_PROX
285         depends on HID_SENSOR_HUB
286         select IIO_BUFFER
287         select HID_SENSOR_IIO_COMMON
288         select HID_SENSOR_IIO_TRIGGER
289         tristate "HID PROX"
290         help
291           Say yes here to build support for the HID SENSOR
292           Proximity sensor.
293
294           To compile this driver as a module, choose M here: the
295           module will be called hid-sensor-prox.
296
297 config JSA1212
298         tristate "JSA1212 ALS and proximity sensor driver"
299         depends on I2C
300         select REGMAP_I2C
301         help
302           Say Y here if you want to build a IIO driver for JSA1212
303           proximity & ALS sensor device.
304
305           To compile this driver as a module, choose M here:
306           the module will be called jsa1212.
307
308 config ROHM_BU27008
309         tristate "ROHM BU27008 color (RGB+C/IR) sensor"
310         depends on I2C
311         select REGMAP_I2C
312         select IIO_GTS_HELPER
313         help
314           Enable support for the ROHM BU27008 color sensor.
315           The ROHM BU27008 is a sensor with 5 photodiodes (red, green,
316           blue, clear and IR) with four configurable channels. Red and
317           green being always available and two out of the rest three
318           (blue, clear, IR) can be selected to be simultaneously measured.
319           Typical application is adjusting LCD backlight of TVs,
320           mobile phones and tablet PCs.
321
322 config ROHM_BU27034
323         tristate "ROHM BU27034 ambient light sensor"
324         depends on I2C
325         select REGMAP_I2C
326         select IIO_GTS_HELPER
327         select IIO_BUFFER
328         select IIO_KFIFO_BUF
329         help
330           Enable support for the ROHM BU27034 ambient light sensor. ROHM BU27034
331           is an ambient light sesnor with 3 channels and 3 photo diodes capable
332           of detecting a very wide range of illuminance.
333           Typical application is adjusting LCD and backlight power of TVs and
334           mobile phones.
335
336 config RPR0521
337         tristate "ROHM RPR0521 ALS and proximity sensor driver"
338         depends on I2C
339         select REGMAP_I2C
340         select IIO_BUFFER
341         select IIO_TRIGGERED_BUFFER
342         help
343           Say Y here if you want to build support for ROHM's RPR0521
344           ambient light and proximity sensor device.
345
346           To compile this driver as a module, choose M here:
347           the module will be called rpr0521.
348
349 config SENSORS_LM3533
350         tristate "LM3533 ambient light sensor"
351         depends on MFD_LM3533
352         help
353           If you say yes here you get support for the ambient light sensor
354           interface on National Semiconductor / TI LM3533 Lighting Power
355           chips.
356
357           The sensor interface can be used to control the LEDs and backlights
358           of the chip through defining five light zones and three sets of
359           corresponding output-current values.
360
361           The driver provides raw and mean adc readings along with the current
362           light zone through sysfs. A threshold event can be generated on zone
363           changes. The ALS-control output values can be set per zone for the
364           three current output channels.
365
366 config LTR390
367         tristate "LTR-390UV-01 ambient light and UV sensor"
368         depends on I2C
369         select REGMAP_I2C
370         help
371           If you say yes here you get support for the Lite-On LTR-390UV-01
372           ambient light and UV sensor.
373
374           This driver can also be built as a module.  If so, the module
375           will be called ltr390.
376
377 config LTR501
378         tristate "LTR-501ALS-01 light sensor"
379         depends on I2C
380         select REGMAP_I2C
381         select IIO_BUFFER
382         select IIO_TRIGGERED_BUFFER
383         help
384           If you say yes here you get support for the Lite-On LTR-501ALS-01
385           ambient light and proximity sensor. This driver also supports LTR-559
386           ALS/PS or LTR-301 ALS sensors.
387
388           This driver can also be built as a module.  If so, the module
389           will be called ltr501.
390
391 config LTRF216A
392         tristate "Liteon LTRF216A Light Sensor"
393         depends on I2C
394         select REGMAP_I2C
395         help
396           If you say Y or M here, you get support for Liteon LTRF216A
397           Ambient Light Sensor.
398
399           If built as a dynamically linked module, it will be called
400           ltrf216a.
401
402 config LV0104CS
403         tristate "LV0104CS Ambient Light Sensor"
404         depends on I2C
405         help
406           Say Y here if you want to build support for the On Semiconductor
407           LV0104CS ambient light sensor.
408
409           To compile this driver as a module, choose M here:
410           the module will be called lv0104cs.
411
412 config MAX44000
413         tristate "MAX44000 Ambient and Infrared Proximity Sensor"
414         depends on I2C
415         select REGMAP_I2C
416         select IIO_BUFFER
417         select IIO_TRIGGERED_BUFFER
418         help
419           Say Y here if you want to build support for Maxim Integrated's
420           MAX44000 ambient and infrared proximity sensor device.
421
422           To compile this driver as a module, choose M here:
423           the module will be called max44000.
424
425 config MAX44009
426         tristate "MAX44009 Ambient Light Sensor"
427         depends on I2C
428         select REGMAP_I2C
429         help
430          Say Y here if you want to build support for Maxim Integrated's
431          MAX44009 ambient light sensor device.
432
433          To compile this driver as a module, choose M here:
434          the module will be called max44009.
435
436 config NOA1305
437         tristate "ON Semiconductor NOA1305 ambient light sensor"
438         depends on I2C
439         select REGMAP_I2C
440         help
441          Say Y here if you want to build support for the ON Semiconductor
442          NOA1305 ambient light sensor.
443
444          To compile this driver as a module, choose M here:
445          The module will be called noa1305.
446
447 config OPT3001
448         tristate "Texas Instruments OPT3001 Light Sensor"
449         depends on I2C
450         help
451           If you say Y or M here, you get support for Texas Instruments
452           OPT3001 Ambient Light Sensor.
453
454           If built as a dynamically linked module, it will be called
455           opt3001.
456
457 config OPT4001
458         tristate "Texas Instruments OPT4001 Light Sensor"
459         depends on I2C
460         select REGMAP_I2C
461         help
462           If you say Y or M here, you get support for Texas Instruments
463           OPT4001 Ambient Light Sensor.
464
465           If built as a dynamically linked module, it will be called
466           opt4001.
467
468 config PA12203001
469         tristate "TXC PA12203001 light and proximity sensor"
470         depends on I2C
471         select REGMAP_I2C
472         help
473           If you say yes here you get support for the TXC PA12203001
474           ambient light and proximity sensor.
475
476           This driver can also be built as a module.  If so, the module
477           will be called pa12203001.
478
479 config SI1133
480         tristate "SI1133 UV Index Sensor and Ambient Light Sensor"
481         depends on I2C
482         select REGMAP_I2C
483           help
484           Say Y here if you want to build a driver for the Silicon Labs SI1133
485           UV Index Sensor and Ambient Light Sensor chip.
486
487           To compile this driver as a module, choose M here: the module will be
488           called si1133.
489
490 config SI1145
491         tristate "SI1132 and SI1141/2/3/5/6/7 combined ALS, UV index and proximity sensor"
492         depends on I2C
493         select IIO_BUFFER
494         select IIO_TRIGGERED_BUFFER
495         help
496           Say Y here if you want to build a driver for the Silicon Labs SI1132 or
497           SI1141/2/3/5/6/7 combined ambient light, UV index and proximity sensor
498           chips.
499
500           To compile this driver as a module, choose M here: the module will be
501           called si1145.
502
503 config STK3310
504         tristate "STK3310 ALS and proximity sensor"
505         depends on I2C
506         select REGMAP_I2C
507         help
508           Say yes here to get support for the Sensortek STK3310 ambient light
509           and proximity sensor. The STK3311 model is also supported by this
510           driver.
511
512           Choosing M will build the driver as a module. If so, the module
513           will be called stk3310.
514
515 config ST_UVIS25
516         tristate "STMicroelectronics UVIS25 sensor driver"
517         depends on (I2C || SPI)
518         select IIO_BUFFER
519         select IIO_TRIGGERED_BUFFER
520         select ST_UVIS25_I2C if (I2C)
521         select ST_UVIS25_SPI if (SPI_MASTER)
522         help
523           Say yes here to build support for STMicroelectronics UVIS25
524           uv sensor
525
526           To compile this driver as a module, choose M here: the module
527           will be called st_uvis25.
528
529 config ST_UVIS25_I2C
530         tristate
531         depends on ST_UVIS25
532         select REGMAP_I2C
533
534 config ST_UVIS25_SPI
535         tristate
536         depends on ST_UVIS25
537         select REGMAP_SPI
538
539 config TCS3414
540         tristate "TAOS TCS3414 digital color sensor"
541         depends on I2C
542         select IIO_BUFFER
543         select IIO_TRIGGERED_BUFFER
544         help
545           If you say yes here you get support for the TAOS TCS3414
546           family of digital color sensors.
547
548           This driver can also be built as a module.  If so, the module
549           will be called tcs3414.
550
551 config TCS3472
552         tristate "TAOS TCS3472 color light-to-digital converter"
553         depends on I2C
554         select IIO_BUFFER
555         select IIO_TRIGGERED_BUFFER
556         help
557           If you say yes here you get support for the TAOS TCS3472
558           family of color light-to-digital converters with IR filter.
559
560           This driver can also be built as a module.  If so, the module
561           will be called tcs3472.
562
563 config SENSORS_TSL2563
564         tristate "TAOS TSL2560, TSL2561, TSL2562 and TSL2563 ambient light sensors"
565         depends on I2C
566         help
567           If you say yes here you get support for the Taos TSL2560,
568           TSL2561, TSL2562 and TSL2563 ambient light sensors.
569
570           This driver can also be built as a module.  If so, the module
571           will be called tsl2563.
572
573 config TSL2583
574         tristate "TAOS TSL2580, TSL2581 and TSL2583 light-to-digital converters"
575         depends on I2C
576         help
577           Provides support for the TAOS tsl2580, tsl2581 and tsl2583 devices.
578           Access ALS data via iio, sysfs.
579
580 config TSL2591
581         tristate "TAOS TSL2591 ambient light sensor"
582         depends on I2C
583         help
584           Select Y here for support of the AMS/TAOS TSL2591 ambient light sensor,
585           featuring channels for combined visible + IR intensity and lux illuminance.
586           Access data via iio and sysfs. Supports iio_events.
587
588           To compile this driver as a module, select M: the
589           module will be called tsl2591.
590
591 config TSL2772
592         tristate "TAOS TSL/TMD2x71 and TSL/TMD2x72 Family of light and proximity sensors"
593         depends on I2C
594         help
595           Support for: tsl2571, tsl2671, tmd2671, tsl2771, tmd2771, tsl2572, tsl2672,
596           tmd2672, tsl2772, tmd2772 devices.
597           Provides iio_events and direct access via sysfs.
598
599 config TSL4531
600         tristate "TAOS TSL4531 ambient light sensors"
601         depends on I2C
602         help
603           Say Y here if you want to build a driver for the TAOS TSL4531 family
604           of ambient light sensors with direct lux output.
605
606           To compile this driver as a module, choose M here: the
607           module will be called tsl4531.
608
609 config US5182D
610         tristate "UPISEMI light and proximity sensor"
611         depends on I2C
612         help
613           If you say yes here you get support for the UPISEMI US5182D
614           ambient light and proximity sensor.
615
616           This driver can also be built as a module.  If so, the module
617           will be called us5182d.
618
619 config VCNL4000
620         tristate "VCNL4000/4010/4020/4200 combined ALS and proximity sensor"
621         select IIO_BUFFER
622         select IIO_TRIGGERED_BUFFER
623         depends on I2C
624         help
625           Say Y here if you want to build a driver for the Vishay VCNL4000,
626           VCNL4010, VCNL4020, VCNL4200 combined ambient light and proximity
627           sensor.
628
629           To compile this driver as a module, choose M here: the
630           module will be called vcnl4000.
631
632 config VCNL4035
633         tristate "VCNL4035 combined ALS and proximity sensor"
634         select IIO_BUFFER
635         select IIO_TRIGGERED_BUFFER
636         select REGMAP_I2C
637         depends on I2C
638         help
639           Say Y here if you want to build a driver for the Vishay VCNL4035,
640           combined ambient light (ALS) and proximity sensor. Currently only ALS
641           function is available.
642
643           To compile this driver as a module, choose M here: the
644           module will be called vcnl4035.
645
646 config VEML6030
647         tristate "VEML6030 ambient light sensor"
648         select REGMAP_I2C
649         depends on I2C
650         help
651           Say Y here if you want to build a driver for the Vishay VEML6030
652           ambient light sensor (ALS).
653
654           To compile this driver as a module, choose M here: the
655           module will be called veml6030.
656
657 config VEML6070
658         tristate "VEML6070 UV A light sensor"
659         depends on I2C
660         help
661           Say Y here if you want to build a driver for the Vishay VEML6070 UV A
662           light sensor.
663
664           To compile this driver as a module, choose M here: the
665           module will be called veml6070.
666
667 config VEML6075
668         tristate "VEML6075 UVA and UVB light sensor"
669         select REGMAP_I2C
670         depends on I2C
671         help
672           Say Y here if you want to build a driver for the Vishay VEML6075 UVA
673           and UVB light sensor.
674
675           To compile this driver as a module, choose M here: the
676           module will be called veml6075.
677
678 config VL6180
679         tristate "VL6180 ALS, range and proximity sensor"
680         depends on I2C
681         help
682           Say Y here if you want to build a driver for the STMicroelectronics
683           VL6180 combined ambient light, range and proximity sensor.
684
685           To compile this driver as a module, choose M here: the
686           module will be called vl6180.
687
688 config ZOPT2201
689         tristate "ZOPT2201 ALS and UV B sensor"
690         depends on I2C
691         help
692           Say Y here if you want to build a driver for the IDT
693           ZOPT2201 ambient light and UV B sensor.
694
695           To compile this driver as a module, choose M here: the
696           module will be called zopt2201.
697
698 endmenu