xref: /openbmc/linux/drivers/iio/light/Kconfig (revision 22e395d0)
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 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
89config 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
104config 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
114config 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
124config 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
135config 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
146config 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
156config 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
165config 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
176config 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
186config 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
197config 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
211config 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
221config 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
233config 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
243config 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
255config 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
268config 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
281config 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
292config ROHM_BU27034
293	tristate "ROHM BU27034 ambient light sensor"
294	depends on I2C
295	select REGMAP_I2C
296	select IIO_GTS_HELPER
297	select IIO_BUFFER
298	select IIO_KFIFO_BUF
299	help
300	  Enable support for the ROHM BU27034 ambient light sensor. ROHM BU27034
301	  is an ambient light sesnor with 3 channels and 3 photo diodes capable
302	  of detecting a very wide range of illuminance.
303	  Typical application is adjusting LCD and backlight power of TVs and
304	  mobile phones.
305
306config RPR0521
307	tristate "ROHM RPR0521 ALS and proximity sensor driver"
308	depends on I2C
309	select REGMAP_I2C
310	select IIO_BUFFER
311	select IIO_TRIGGERED_BUFFER
312	help
313	  Say Y here if you want to build support for ROHM's RPR0521
314	  ambient light and proximity sensor device.
315
316	  To compile this driver as a module, choose M here:
317	  the module will be called rpr0521.
318
319config SENSORS_LM3533
320	tristate "LM3533 ambient light sensor"
321	depends on MFD_LM3533
322	help
323	  If you say yes here you get support for the ambient light sensor
324	  interface on National Semiconductor / TI LM3533 Lighting Power
325	  chips.
326
327	  The sensor interface can be used to control the LEDs and backlights
328	  of the chip through defining five light zones and three sets of
329	  corresponding output-current values.
330
331	  The driver provides raw and mean adc readings along with the current
332	  light zone through sysfs. A threshold event can be generated on zone
333	  changes. The ALS-control output values can be set per zone for the
334	  three current output channels.
335
336config LTR501
337	tristate "LTR-501ALS-01 light sensor"
338	depends on I2C
339	select REGMAP_I2C
340	select IIO_BUFFER
341	select IIO_TRIGGERED_BUFFER
342	help
343	  If you say yes here you get support for the Lite-On LTR-501ALS-01
344	  ambient light and proximity sensor. This driver also supports LTR-559
345	  ALS/PS or LTR-301 ALS sensors.
346
347	  This driver can also be built as a module.  If so, the module
348	  will be called ltr501.
349
350config LTRF216A
351	tristate "Liteon LTRF216A Light Sensor"
352	depends on I2C
353	select REGMAP_I2C
354	help
355	  If you say Y or M here, you get support for Liteon LTRF216A
356	  Ambient Light Sensor.
357
358	  If built as a dynamically linked module, it will be called
359	  ltrf216a.
360
361config LV0104CS
362	tristate "LV0104CS Ambient Light Sensor"
363	depends on I2C
364	help
365	  Say Y here if you want to build support for the On Semiconductor
366	  LV0104CS ambient light sensor.
367
368	  To compile this driver as a module, choose M here:
369	  the module will be called lv0104cs.
370
371config MAX44000
372	tristate "MAX44000 Ambient and Infrared Proximity Sensor"
373	depends on I2C
374	select REGMAP_I2C
375	select IIO_BUFFER
376	select IIO_TRIGGERED_BUFFER
377	help
378	  Say Y here if you want to build support for Maxim Integrated's
379	  MAX44000 ambient and infrared proximity sensor device.
380
381	  To compile this driver as a module, choose M here:
382	  the module will be called max44000.
383
384config MAX44009
385	tristate "MAX44009 Ambient Light Sensor"
386	depends on I2C
387	select REGMAP_I2C
388	help
389	 Say Y here if you want to build support for Maxim Integrated's
390	 MAX44009 ambient light sensor device.
391
392	 To compile this driver as a module, choose M here:
393	 the module will be called max44009.
394
395config NOA1305
396	tristate "ON Semiconductor NOA1305 ambient light sensor"
397	depends on I2C
398	select REGMAP_I2C
399	help
400	 Say Y here if you want to build support for the ON Semiconductor
401	 NOA1305 ambient light sensor.
402
403	 To compile this driver as a module, choose M here:
404	 The module will be called noa1305.
405
406config OPT3001
407	tristate "Texas Instruments OPT3001 Light Sensor"
408	depends on I2C
409	help
410	  If you say Y or M here, you get support for Texas Instruments
411	  OPT3001 Ambient Light Sensor.
412
413	  If built as a dynamically linked module, it will be called
414	  opt3001.
415
416config PA12203001
417	tristate "TXC PA12203001 light and proximity sensor"
418	depends on I2C
419	select REGMAP_I2C
420	help
421	  If you say yes here you get support for the TXC PA12203001
422	  ambient light and proximity sensor.
423
424	  This driver can also be built as a module.  If so, the module
425	  will be called pa12203001.
426
427config SI1133
428	tristate "SI1133 UV Index Sensor and Ambient Light Sensor"
429	depends on I2C
430	select REGMAP_I2C
431	  help
432	  Say Y here if you want to build a driver for the Silicon Labs SI1133
433	  UV Index Sensor and Ambient Light Sensor chip.
434
435	  To compile this driver as a module, choose M here: the module will be
436	  called si1133.
437
438config SI1145
439	tristate "SI1132 and SI1141/2/3/5/6/7 combined ALS, UV index and proximity sensor"
440	depends on I2C
441	select IIO_BUFFER
442	select IIO_TRIGGERED_BUFFER
443	help
444	  Say Y here if you want to build a driver for the Silicon Labs SI1132 or
445	  SI1141/2/3/5/6/7 combined ambient light, UV index and proximity sensor
446	  chips.
447
448	  To compile this driver as a module, choose M here: the module will be
449	  called si1145.
450
451config STK3310
452	tristate "STK3310 ALS and proximity sensor"
453	depends on I2C
454	select REGMAP_I2C
455	help
456	  Say yes here to get support for the Sensortek STK3310 ambient light
457	  and proximity sensor. The STK3311 model is also supported by this
458	  driver.
459
460	  Choosing M will build the driver as a module. If so, the module
461	  will be called stk3310.
462
463config ST_UVIS25
464	tristate "STMicroelectronics UVIS25 sensor driver"
465	depends on (I2C || SPI)
466	select IIO_BUFFER
467	select IIO_TRIGGERED_BUFFER
468	select ST_UVIS25_I2C if (I2C)
469	select ST_UVIS25_SPI if (SPI_MASTER)
470	help
471	  Say yes here to build support for STMicroelectronics UVIS25
472	  uv sensor
473
474	  To compile this driver as a module, choose M here: the module
475	  will be called st_uvis25.
476
477config ST_UVIS25_I2C
478	tristate
479	depends on ST_UVIS25
480	select REGMAP_I2C
481
482config ST_UVIS25_SPI
483	tristate
484	depends on ST_UVIS25
485	select REGMAP_SPI
486
487config TCS3414
488	tristate "TAOS TCS3414 digital color sensor"
489	depends on I2C
490	select IIO_BUFFER
491	select IIO_TRIGGERED_BUFFER
492	help
493	  If you say yes here you get support for the TAOS TCS3414
494	  family of digital color sensors.
495
496	  This driver can also be built as a module.  If so, the module
497	  will be called tcs3414.
498
499config TCS3472
500	tristate "TAOS TCS3472 color light-to-digital converter"
501	depends on I2C
502	select IIO_BUFFER
503	select IIO_TRIGGERED_BUFFER
504	help
505	  If you say yes here you get support for the TAOS TCS3472
506	  family of color light-to-digital converters with IR filter.
507
508	  This driver can also be built as a module.  If so, the module
509	  will be called tcs3472.
510
511config SENSORS_TSL2563
512	tristate "TAOS TSL2560, TSL2561, TSL2562 and TSL2563 ambient light sensors"
513	depends on I2C
514	help
515	  If you say yes here you get support for the Taos TSL2560,
516	  TSL2561, TSL2562 and TSL2563 ambient light sensors.
517
518	  This driver can also be built as a module.  If so, the module
519	  will be called tsl2563.
520
521config TSL2583
522	tristate "TAOS TSL2580, TSL2581 and TSL2583 light-to-digital converters"
523	depends on I2C
524	help
525	  Provides support for the TAOS tsl2580, tsl2581 and tsl2583 devices.
526	  Access ALS data via iio, sysfs.
527
528config TSL2591
529        tristate "TAOS TSL2591 ambient light sensor"
530        depends on I2C
531        help
532          Select Y here for support of the AMS/TAOS TSL2591 ambient light sensor,
533          featuring channels for combined visible + IR intensity and lux illuminance.
534          Access data via iio and sysfs. Supports iio_events.
535
536          To compile this driver as a module, select M: the
537          module will be called tsl2591.
538
539config TSL2772
540	tristate "TAOS TSL/TMD2x71 and TSL/TMD2x72 Family of light and proximity sensors"
541	depends on I2C
542	help
543	  Support for: tsl2571, tsl2671, tmd2671, tsl2771, tmd2771, tsl2572, tsl2672,
544	  tmd2672, tsl2772, tmd2772 devices.
545	  Provides iio_events and direct access via sysfs.
546
547config TSL4531
548	tristate "TAOS TSL4531 ambient light sensors"
549	depends on I2C
550	help
551	  Say Y here if you want to build a driver for the TAOS TSL4531 family
552	  of ambient light sensors with direct lux output.
553
554	  To compile this driver as a module, choose M here: the
555	  module will be called tsl4531.
556
557config US5182D
558	tristate "UPISEMI light and proximity sensor"
559	depends on I2C
560	help
561	  If you say yes here you get support for the UPISEMI US5182D
562	  ambient light and proximity sensor.
563
564	  This driver can also be built as a module.  If so, the module
565	  will be called us5182d.
566
567config VCNL4000
568	tristate "VCNL4000/4010/4020/4200 combined ALS and proximity sensor"
569	select IIO_BUFFER
570	select IIO_TRIGGERED_BUFFER
571	depends on I2C
572	help
573	  Say Y here if you want to build a driver for the Vishay VCNL4000,
574	  VCNL4010, VCNL4020, VCNL4200 combined ambient light and proximity
575	  sensor.
576
577	  To compile this driver as a module, choose M here: the
578	  module will be called vcnl4000.
579
580config VCNL4035
581	tristate "VCNL4035 combined ALS and proximity sensor"
582	select IIO_BUFFER
583	select IIO_TRIGGERED_BUFFER
584	select REGMAP_I2C
585	depends on I2C
586	help
587	  Say Y here if you want to build a driver for the Vishay VCNL4035,
588	  combined ambient light (ALS) and proximity sensor. Currently only ALS
589	  function is available.
590
591	  To compile this driver as a module, choose M here: the
592	  module will be called vcnl4035.
593
594config VEML6030
595	tristate "VEML6030 ambient light sensor"
596	select REGMAP_I2C
597	depends on I2C
598	help
599	  Say Y here if you want to build a driver for the Vishay VEML6030
600	  ambient light sensor (ALS).
601
602	  To compile this driver as a module, choose M here: the
603	  module will be called veml6030.
604
605config VEML6070
606	tristate "VEML6070 UV A light sensor"
607	depends on I2C
608	help
609	  Say Y here if you want to build a driver for the Vishay VEML6070 UV A
610	  light sensor.
611
612	  To compile this driver as a module, choose M here: the
613	  module will be called veml6070.
614
615config VL6180
616	tristate "VL6180 ALS, range and proximity sensor"
617	depends on I2C
618	help
619	  Say Y here if you want to build a driver for the STMicroelectronics
620	  VL6180 combined ambient light, range and proximity sensor.
621
622	  To compile this driver as a module, choose M here: the
623	  module will be called vl6180.
624
625config ZOPT2201
626	tristate "ZOPT2201 ALS and UV B sensor"
627	depends on I2C
628	help
629	  Say Y here if you want to build a driver for the IDT
630	  ZOPT2201 ambient light and UV B sensor.
631
632	  To compile this driver as a module, choose M here: the
633	  module will be called zopt2201.
634
635endmenu
636