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