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