GNU Linux-libre 5.10.153-gnu1
[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"
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         depends on OF
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 HID_SENSOR_ALS
257         depends on HID_SENSOR_HUB
258         select IIO_BUFFER
259         select HID_SENSOR_IIO_COMMON
260         select HID_SENSOR_IIO_TRIGGER
261         tristate "HID ALS"
262         help
263           Say yes here to build support for the HID SENSOR
264           Ambient light sensor.
265
266           To compile this driver as a module, choose M here: the
267           module will be called hid-sensor-als.
268
269 config HID_SENSOR_PROX
270         depends on HID_SENSOR_HUB
271         select IIO_BUFFER
272         select HID_SENSOR_IIO_COMMON
273         select HID_SENSOR_IIO_TRIGGER
274         tristate "HID PROX"
275         help
276           Say yes here to build support for the HID SENSOR
277           Proximity sensor.
278
279           To compile this driver as a module, choose M here: the
280           module will be called hid-sensor-prox.
281
282 config JSA1212
283         tristate "JSA1212 ALS and proximity sensor driver"
284         depends on I2C
285         select REGMAP_I2C
286         help
287           Say Y here if you want to build a IIO driver for JSA1212
288           proximity & ALS sensor device.
289
290           To compile this driver as a module, choose M here:
291           the module will be called jsa1212.
292
293 config RPR0521
294         tristate "ROHM RPR0521 ALS and proximity sensor driver"
295         depends on I2C
296         select REGMAP_I2C
297         help
298           Say Y here if you want to build support for ROHM's RPR0521
299           ambient light and proximity sensor device.
300
301           To compile this driver as a module, choose M here:
302           the module will be called rpr0521.
303
304 config SENSORS_LM3533
305         tristate "LM3533 ambient light sensor"
306         depends on MFD_LM3533
307         help
308           If you say yes here you get support for the ambient light sensor
309           interface on National Semiconductor / TI LM3533 Lighting Power
310           chips.
311
312           The sensor interface can be used to control the LEDs and backlights
313           of the chip through defining five light zones and three sets of
314           corresponding output-current values.
315
316           The driver provides raw and mean adc readings along with the current
317           light zone through sysfs. A threshold event can be generated on zone
318           changes. The ALS-control output values can be set per zone for the
319           three current output channels.
320
321 config LTR501
322         tristate "LTR-501ALS-01 light sensor"
323         depends on I2C
324         select REGMAP_I2C
325         select IIO_BUFFER
326         select IIO_TRIGGERED_BUFFER
327         help
328           If you say yes here you get support for the Lite-On LTR-501ALS-01
329           ambient light and proximity sensor. This driver also supports LTR-559
330           ALS/PS or LTR-301 ALS sensors.
331
332           This driver can also be built as a module.  If so, the module
333           will be called ltr501.
334
335 config LV0104CS
336         tristate "LV0104CS Ambient Light Sensor"
337         depends on I2C
338         help
339           Say Y here if you want to build support for the On Semiconductor
340           LV0104CS ambient light sensor.
341
342           To compile this driver as a module, choose M here:
343           the module will be called lv0104cs.
344
345 config MAX44000
346         tristate "MAX44000 Ambient and Infrared Proximity Sensor"
347         depends on I2C
348         select REGMAP_I2C
349         select IIO_BUFFER
350         select IIO_TRIGGERED_BUFFER
351         help
352           Say Y here if you want to build support for Maxim Integrated's
353           MAX44000 ambient and infrared proximity sensor device.
354
355           To compile this driver as a module, choose M here:
356           the module will be called max44000.
357
358 config MAX44009
359         tristate "MAX44009 Ambient Light Sensor"
360         depends on I2C
361         select REGMAP_I2C
362         help
363          Say Y here if you want to build support for Maxim Integrated's
364          MAX44009 ambient light sensor device.
365
366          To compile this driver as a module, choose M here:
367          the module will be called max44009.
368
369 config NOA1305
370         tristate "ON Semiconductor NOA1305 ambient light sensor"
371         depends on I2C
372         select REGMAP_I2C
373         help
374          Say Y here if you want to build support for the ON Semiconductor
375          NOA1305 ambient light sensor.
376
377          To compile this driver as a module, choose M here:
378          The module will be called noa1305.
379
380 config OPT3001
381         tristate "Texas Instruments OPT3001 Light Sensor"
382         depends on I2C
383         help
384           If you say Y or M here, you get support for Texas Instruments
385           OPT3001 Ambient Light Sensor.
386
387           If built as a dynamically linked module, it will be called
388           opt3001.
389
390 config PA12203001
391         tristate "TXC PA12203001 light and proximity sensor"
392         depends on I2C
393         select REGMAP_I2C
394         help
395           If you say yes here you get support for the TXC PA12203001
396           ambient light and proximity sensor.
397
398           This driver can also be built as a module.  If so, the module
399           will be called pa12203001.
400
401 config SI1133
402         tristate "SI1133 UV Index Sensor and Ambient Light Sensor"
403         depends on I2C
404         select REGMAP_I2C
405           help
406           Say Y here if you want to build a driver for the Silicon Labs SI1133
407           UV Index Sensor and Ambient Light Sensor chip.
408
409           To compile this driver as a module, choose M here: the module will be
410           called si1133.
411
412 config SI1145
413         tristate "SI1132 and SI1141/2/3/5/6/7 combined ALS, UV index and proximity sensor"
414         depends on I2C
415         select IIO_BUFFER
416         select IIO_TRIGGERED_BUFFER
417         help
418           Say Y here if you want to build a driver for the Silicon Labs SI1132 or
419           SI1141/2/3/5/6/7 combined ambient light, UV index and proximity sensor
420           chips.
421
422           To compile this driver as a module, choose M here: the module will be
423           called si1145.
424
425 config STK3310
426         tristate "STK3310 ALS and proximity sensor"
427         depends on I2C
428         select REGMAP_I2C
429         help
430           Say yes here to get support for the Sensortek STK3310 ambient light
431           and proximity sensor. The STK3311 model is also supported by this
432           driver.
433
434           Choosing M will build the driver as a module. If so, the module
435           will be called stk3310.
436
437 config ST_UVIS25
438         tristate "STMicroelectronics UVIS25 sensor driver"
439         depends on (I2C || SPI)
440         select IIO_BUFFER
441         select IIO_TRIGGERED_BUFFER
442         select ST_UVIS25_I2C if (I2C)
443         select ST_UVIS25_SPI if (SPI_MASTER)
444         help
445           Say yes here to build support for STMicroelectronics UVIS25
446           uv sensor
447
448           To compile this driver as a module, choose M here: the module
449           will be called st_uvis25.
450
451 config ST_UVIS25_I2C
452         tristate
453         depends on ST_UVIS25
454         select REGMAP_I2C
455
456 config ST_UVIS25_SPI
457         tristate
458         depends on ST_UVIS25
459         select REGMAP_SPI
460
461 config TCS3414
462         tristate "TAOS TCS3414 digital color sensor"
463         depends on I2C
464         select IIO_BUFFER
465         select IIO_TRIGGERED_BUFFER
466         help
467           If you say yes here you get support for the TAOS TCS3414
468           family of digital color sensors.
469
470           This driver can also be built as a module.  If so, the module
471           will be called tcs3414.
472
473 config TCS3472
474         tristate "TAOS TCS3472 color light-to-digital converter"
475         depends on I2C
476         select IIO_BUFFER
477         select IIO_TRIGGERED_BUFFER
478         help
479           If you say yes here you get support for the TAOS TCS3472
480           family of color light-to-digital converters with IR filter.
481
482           This driver can also be built as a module.  If so, the module
483           will be called tcs3472.
484
485 config SENSORS_TSL2563
486         tristate "TAOS TSL2560, TSL2561, TSL2562 and TSL2563 ambient light sensors"
487         depends on I2C
488         help
489           If you say yes here you get support for the Taos TSL2560,
490           TSL2561, TSL2562 and TSL2563 ambient light sensors.
491
492           This driver can also be built as a module.  If so, the module
493           will be called tsl2563.
494
495 config TSL2583
496         tristate "TAOS TSL2580, TSL2581 and TSL2583 light-to-digital converters"
497         depends on I2C
498         help
499           Provides support for the TAOS tsl2580, tsl2581 and tsl2583 devices.
500           Access ALS data via iio, sysfs.
501
502 config TSL2772
503         tristate "TAOS TSL/TMD2x71 and TSL/TMD2x72 Family of light and proximity sensors"
504         depends on I2C
505         help
506           Support for: tsl2571, tsl2671, tmd2671, tsl2771, tmd2771, tsl2572, tsl2672,
507           tmd2672, tsl2772, tmd2772 devices.
508           Provides iio_events and direct access via sysfs.
509
510 config TSL4531
511         tristate "TAOS TSL4531 ambient light sensors"
512         depends on I2C
513         help
514           Say Y here if you want to build a driver for the TAOS TSL4531 family
515           of ambient light sensors with direct lux output.
516
517           To compile this driver as a module, choose M here: the
518           module will be called tsl4531.
519
520 config US5182D
521         tristate "UPISEMI light and proximity sensor"
522         depends on I2C
523         help
524           If you say yes here you get support for the UPISEMI US5182D
525           ambient light and proximity sensor.
526
527           This driver can also be built as a module.  If so, the module
528           will be called us5182d.
529
530 config VCNL4000
531         tristate "VCNL4000/4010/4020/4200 combined ALS and proximity sensor"
532         select IIO_BUFFER
533         select IIO_TRIGGERED_BUFFER
534         depends on I2C
535         help
536           Say Y here if you want to build a driver for the Vishay VCNL4000,
537           VCNL4010, VCNL4020, VCNL4200 combined ambient light and proximity
538           sensor.
539
540           To compile this driver as a module, choose M here: the
541           module will be called vcnl4000.
542
543 config VCNL4035
544         tristate "VCNL4035 combined ALS and proximity sensor"
545         select IIO_BUFFER
546         select IIO_TRIGGERED_BUFFER
547         select REGMAP_I2C
548         depends on I2C
549         help
550           Say Y here if you want to build a driver for the Vishay VCNL4035,
551           combined ambient light (ALS) and proximity sensor. Currently only ALS
552           function is available.
553
554           To compile this driver as a module, choose M here: the
555           module will be called vcnl4035.
556
557 config VEML6030
558         tristate "VEML6030 ambient light sensor"
559         select REGMAP_I2C
560         depends on I2C
561         help
562           Say Y here if you want to build a driver for the Vishay VEML6030
563           ambient light sensor (ALS).
564
565           To compile this driver as a module, choose M here: the
566           module will be called veml6030.
567
568 config VEML6070
569         tristate "VEML6070 UV A light sensor"
570         depends on I2C
571         help
572           Say Y here if you want to build a driver for the Vishay VEML6070 UV A
573           light sensor.
574
575           To compile this driver as a module, choose M here: the
576           module will be called veml6070.
577
578 config VL6180
579         tristate "VL6180 ALS, range and proximity sensor"
580         depends on I2C
581         help
582           Say Y here if you want to build a driver for the STMicroelectronics
583           VL6180 combined ambient light, range and proximity sensor.
584
585           To compile this driver as a module, choose M here: the
586           module will be called vl6180.
587
588 config ZOPT2201
589         tristate "ZOPT2201 ALS and UV B sensor"
590         depends on I2C
591         help
592           Say Y here if you want to build a driver for the IDT
593           ZOPT2201 ambient light and UV B sensor.
594
595           To compile this driver as a module, choose M here: the
596           module will be called zopt2201.
597
598 endmenu