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