accel/ivpu: Move recovery work to system_unbound_wq
[drm/drm-misc.git] / drivers / iio / light / Kconfig
blob29ffa84919273d64b8464ab8bbf59661b0102f97
1 # SPDX-License-Identifier: GPL-2.0-only
4 # Light sensors
6 # When adding new entries keep the list in alphabetical order
8 menu "Light sensors"
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.
20           To compile this driver as a module, choose M here: the module will
21           be called acpi-als.
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.
32           This driver can also be built as a module.  If so, the module
33           will be called adjd_s311.
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.
43          To compile this driver as a module, choose M here: the
44          module will be called adux1020.
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.
53           To compile this driver as a module, choose M here: the
54           module will be called al3010.
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.
63           To compile this driver as a module, choose M here: the
64           module will be called al3320a.
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.
73           To compile this driver as a module, choose M here: the
74           module will be called apds9300.
76 config 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.
85           If built as a dynamically linked module, it will be called
86           apds9306.
88 config 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.
98           To compile this driver as a module, choose M here: the
99           module will be called apds9960
101 config 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.
111          For triggered measurements, you will need an additional trigger driver
112          like IIO_HRTIMER_TRIGGER or IIO_SYSFS_TRIGGER.
114          This driver can also be built as a module.  If so, the module
115          will be called as73211.
117 config 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.
127           To compile this driver as a module, choose M here: the module will
128           be called bh1745.
130 config 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.
137           To compile this driver as a module, choose M here: the module will
138           be called bh1750.
140 config 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.
147           To compile this driver as a module, choose M here: the module will
148           be called bh1780.
150 config 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.
158           To compile this driver as a module, choose M here:
159           the module will be called cm32181.
161 config 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.
169           To compile this driver as a module, choose M here:
170           the module will be called cm3232.
172 config 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.
179           To compile this driver as a module, choose M here: the module will
180           be called cm3323.
182 config 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.
188           To compile this driver as a module, choose M here: the module will
189           be called cm3605.
191 config 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.
199           To compile this driver as a module, choose M here:
200           the module will be called cm36651.
202 config 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.
209           To compile this driver as a module, choose M here:
210           the module will be called cros_ec_light_prox.
212 config 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.
220           To compile this driver as a module, choose M here: the
221           module will be called gp2ap002.
223 config 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.
234           To compile this driver as a module, choose M here: the
235           module will be called gp2ap020a00f.
237 config 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.
244           To compile this driver as a module, choose M here: the module
245           will be called iqs621-als.
247 config 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.
258 config 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.
268 config 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.
277           To compile this driver as a module, choose M here: the module will be
278           called isl29125.
280 config 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.
292           To compile this driver as a module, choose M here: the module will be
293           called isl76682.
295 config 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.
305           To compile this driver as a module, choose M here: the
306           module will be called hid-sensor-als.
308 config 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.
318           To compile this driver as a module, choose M here: the
319           module will be called hid-sensor-prox.
321 config 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.
329           To compile this driver as a module, choose M here:
330           the module will be called jsa1212.
332 config ROHM_BU27008
333         tristate "ROHM BU27008 color (RGB+C/IR) sensor"
334         depends on I2C
335         select REGMAP_I2C
336         select IIO_GTS_HELPER
337         select IIO_BUFFER
338         select IIO_TRIGGERED_BUFFER
339         help
340           Enable support for the ROHM BU27008 color sensor.
341           The ROHM BU27008 is a sensor with 5 photodiodes (red, green,
342           blue, clear and IR) with four configurable channels. Red and
343           green being always available and two out of the rest three
344           (blue, clear, IR) can be selected to be simultaneously measured.
345           Typical application is adjusting LCD backlight of TVs,
346           mobile phones and tablet PCs.
348 config ROHM_BU27034
349         tristate "ROHM BU27034 ambient light sensor"
350         depends on I2C
351         select REGMAP_I2C
352         select IIO_GTS_HELPER
353         select IIO_BUFFER
354         select IIO_KFIFO_BUF
355         help
356           Enable support for the ROHM BU27034 ambient light sensor. ROHM BU27034
357           is an ambient light sesnor with 3 channels and 3 photo diodes capable
358           of detecting a very wide range of illuminance.
359           Typical application is adjusting LCD and backlight power of TVs and
360           mobile phones.
362 config RPR0521
363         tristate "ROHM RPR0521 ALS and proximity sensor driver"
364         depends on I2C
365         select REGMAP_I2C
366         select IIO_BUFFER
367         select IIO_TRIGGERED_BUFFER
368         help
369           Say Y here if you want to build support for ROHM's RPR0521
370           ambient light and proximity sensor device.
372           To compile this driver as a module, choose M here:
373           the module will be called rpr0521.
375 config SENSORS_LM3533
376         tristate "LM3533 ambient light sensor"
377         depends on MFD_LM3533
378         help
379           If you say yes here you get support for the ambient light sensor
380           interface on National Semiconductor / TI LM3533 Lighting Power
381           chips.
383           The sensor interface can be used to control the LEDs and backlights
384           of the chip through defining five light zones and three sets of
385           corresponding output-current values.
387           The driver provides raw and mean adc readings along with the current
388           light zone through sysfs. A threshold event can be generated on zone
389           changes. The ALS-control output values can be set per zone for the
390           three current output channels.
392 config LTR390
393         tristate "LTR-390UV-01 ambient light and UV sensor"
394         depends on I2C
395         select REGMAP_I2C
396         help
397           If you say yes here you get support for the Lite-On LTR-390UV-01
398           ambient light and UV sensor.
400           This driver can also be built as a module.  If so, the module
401           will be called ltr390.
403 config LTR501
404         tristate "LTR-501ALS-01 light sensor"
405         depends on I2C
406         select REGMAP_I2C
407         select IIO_BUFFER
408         select IIO_TRIGGERED_BUFFER
409         help
410           If you say yes here you get support for the Lite-On LTR-501ALS-01
411           ambient light and proximity sensor. This driver also supports LTR-559
412           ALS/PS or LTR-301 ALS sensors.
414           This driver can also be built as a module.  If so, the module
415           will be called ltr501.
417 config LTRF216A
418         tristate "Liteon LTRF216A Light Sensor"
419         depends on I2C
420         select REGMAP_I2C
421         help
422           If you say Y or M here, you get support for Liteon LTRF216A
423           Ambient Light Sensor.
425           If built as a dynamically linked module, it will be called
426           ltrf216a.
428 config LV0104CS
429         tristate "LV0104CS Ambient Light Sensor"
430         depends on I2C
431         help
432           Say Y here if you want to build support for the On Semiconductor
433           LV0104CS ambient light sensor.
435           To compile this driver as a module, choose M here:
436           the module will be called lv0104cs.
438 config MAX44000
439         tristate "MAX44000 Ambient and Infrared Proximity Sensor"
440         depends on I2C
441         select REGMAP_I2C
442         select IIO_BUFFER
443         select IIO_TRIGGERED_BUFFER
444         help
445           Say Y here if you want to build support for Maxim Integrated's
446           MAX44000 ambient and infrared proximity sensor device.
448           To compile this driver as a module, choose M here:
449           the module will be called max44000.
451 config MAX44009
452         tristate "MAX44009 Ambient Light Sensor"
453         depends on I2C
454         select REGMAP_I2C
455         help
456          Say Y here if you want to build support for Maxim Integrated's
457          MAX44009 ambient light sensor device.
459          To compile this driver as a module, choose M here:
460          the module will be called max44009.
462 config NOA1305
463         tristate "ON Semiconductor NOA1305 ambient light sensor"
464         depends on I2C
465         select REGMAP_I2C
466         help
467          Say Y here if you want to build support for the ON Semiconductor
468          NOA1305 ambient light sensor.
470          To compile this driver as a module, choose M here:
471          The module will be called noa1305.
473 config OPT3001
474         tristate "Texas Instruments OPT3001 Light Sensor"
475         depends on I2C
476         help
477           If you say Y or M here, you get support for Texas Instruments
478           OPT3001 Ambient Light Sensor, OPT3002 Light-to-Digital Sensor.
480           If built as a dynamically linked module, it will be called
481           opt3001.
483 config OPT4001
484         tristate "Texas Instruments OPT4001 Light Sensor"
485         depends on I2C
486         select REGMAP_I2C
487         help
488           If you say Y or M here, you get support for Texas Instruments
489           OPT4001 Ambient Light Sensor.
491           If built as a dynamically linked module, it will be called
492           opt4001.
494 config PA12203001
495         tristate "TXC PA12203001 light and proximity sensor"
496         depends on I2C
497         select REGMAP_I2C
498         help
499           If you say yes here you get support for the TXC PA12203001
500           ambient light and proximity sensor.
502           This driver can also be built as a module.  If so, the module
503           will be called pa12203001.
505 config SI1133
506         tristate "SI1133 UV Index Sensor and Ambient Light Sensor"
507         depends on I2C
508         select REGMAP_I2C
509           help
510           Say Y here if you want to build a driver for the Silicon Labs SI1133
511           UV Index Sensor and Ambient Light Sensor chip.
513           To compile this driver as a module, choose M here: the module will be
514           called si1133.
516 config SI1145
517         tristate "SI1132 and SI1141/2/3/5/6/7 combined ALS, UV index and proximity sensor"
518         depends on I2C
519         select IIO_BUFFER
520         select IIO_TRIGGERED_BUFFER
521         help
522           Say Y here if you want to build a driver for the Silicon Labs SI1132 or
523           SI1141/2/3/5/6/7 combined ambient light, UV index and proximity sensor
524           chips.
526           To compile this driver as a module, choose M here: the module will be
527           called si1145.
529 config STK3310
530         tristate "STK3310 ALS and proximity sensor"
531         depends on I2C
532         select REGMAP_I2C
533         help
534           Say yes here to get support for the Sensortek STK3310 ambient light
535           and proximity sensor. The STK3311 model is also supported by this
536           driver.
538           Choosing M will build the driver as a module. If so, the module
539           will be called stk3310.
541 config ST_UVIS25
542         tristate "STMicroelectronics UVIS25 sensor driver"
543         depends on (I2C || SPI)
544         select IIO_BUFFER
545         select IIO_TRIGGERED_BUFFER
546         select ST_UVIS25_I2C if (I2C)
547         select ST_UVIS25_SPI if (SPI_MASTER)
548         help
549           Say yes here to build support for STMicroelectronics UVIS25
550           uv sensor
552           To compile this driver as a module, choose M here: the module
553           will be called st_uvis25.
555 config ST_UVIS25_I2C
556         tristate
557         depends on ST_UVIS25
558         select REGMAP_I2C
560 config ST_UVIS25_SPI
561         tristate
562         depends on ST_UVIS25
563         select REGMAP_SPI
565 config TCS3414
566         tristate "TAOS TCS3414 digital color sensor"
567         depends on I2C
568         select IIO_BUFFER
569         select IIO_TRIGGERED_BUFFER
570         help
571           If you say yes here you get support for the TAOS TCS3414
572           family of digital color sensors.
574           This driver can also be built as a module.  If so, the module
575           will be called tcs3414.
577 config TCS3472
578         tristate "TAOS TCS3472 color light-to-digital converter"
579         depends on I2C
580         select IIO_BUFFER
581         select IIO_TRIGGERED_BUFFER
582         help
583           If you say yes here you get support for the TAOS TCS3472
584           family of color light-to-digital converters with IR filter.
586           This driver can also be built as a module.  If so, the module
587           will be called tcs3472.
589 config SENSORS_TSL2563
590         tristate "TAOS TSL2560, TSL2561, TSL2562 and TSL2563 ambient light sensors"
591         depends on I2C
592         help
593           If you say yes here you get support for the Taos TSL2560,
594           TSL2561, TSL2562 and TSL2563 ambient light sensors.
596           This driver can also be built as a module.  If so, the module
597           will be called tsl2563.
599 config TSL2583
600         tristate "TAOS TSL2580, TSL2581 and TSL2583 light-to-digital converters"
601         depends on I2C
602         help
603           Provides support for the TAOS tsl2580, tsl2581 and tsl2583 devices.
604           Access ALS data via iio, sysfs.
606 config TSL2591
607         tristate "TAOS TSL2591 ambient light sensor"
608         depends on I2C
609         help
610           Select Y here for support of the AMS/TAOS TSL2591 ambient light sensor,
611           featuring channels for combined visible + IR intensity and lux illuminance.
612           Access data via iio and sysfs. Supports iio_events.
614           To compile this driver as a module, select M: the
615           module will be called tsl2591.
617 config TSL2772
618         tristate "TAOS TSL/TMD2x71 and TSL/TMD2x72 Family of light and proximity sensors"
619         depends on I2C
620         help
621           Support for: tsl2571, tsl2671, tmd2671, tsl2771, tmd2771, tsl2572, tsl2672,
622           tmd2672, tsl2772, tmd2772 devices.
623           Provides iio_events and direct access via sysfs.
625 config TSL4531
626         tristate "TAOS TSL4531 ambient light sensors"
627         depends on I2C
628         help
629           Say Y here if you want to build a driver for the TAOS TSL4531 family
630           of ambient light sensors with direct lux output.
632           To compile this driver as a module, choose M here: the
633           module will be called tsl4531.
635 config US5182D
636         tristate "UPISEMI light and proximity sensor"
637         depends on I2C
638         help
639           If you say yes here you get support for the UPISEMI US5182D
640           ambient light and proximity sensor.
642           This driver can also be built as a module.  If so, the module
643           will be called us5182d.
645 config VCNL4000
646         tristate "VCNL4000/4010/4020/4200 combined ALS and proximity sensor"
647         select IIO_BUFFER
648         select IIO_TRIGGERED_BUFFER
649         depends on I2C
650         help
651           Say Y here if you want to build a driver for the Vishay VCNL4000,
652           VCNL4010, VCNL4020, VCNL4200 combined ambient light and proximity
653           sensor.
655           To compile this driver as a module, choose M here: the
656           module will be called vcnl4000.
658 config VCNL4035
659         tristate "VCNL4035 combined ALS and proximity sensor"
660         select IIO_BUFFER
661         select IIO_TRIGGERED_BUFFER
662         select REGMAP_I2C
663         depends on I2C
664         help
665           Say Y here if you want to build a driver for the Vishay VCNL4035,
666           combined ambient light (ALS) and proximity sensor. Currently only ALS
667           function is available.
669           To compile this driver as a module, choose M here: the
670           module will be called vcnl4035.
672 config VEML3235
673         tristate "VEML3235 ambient light sensor"
674         select REGMAP_I2C
675         depends on I2C
676         help
677           Say Y here if you want to build a driver for the Vishay VEML3235
678           ambient light sensor.
680           To compile this driver as a module, choose M here: the
681           module will be called veml3235.
683 config VEML6030
684         tristate "VEML6030 and VEML6035 ambient light sensors"
685         select REGMAP_I2C
686         depends on I2C
687         help
688           Say Y here if you want to build a driver for the Vishay VEML6030
689           and VEML6035 ambient light sensors (ALS).
691           To compile this driver as a module, choose M here: the
692           module will be called veml6030.
694 config VEML6040
695         tristate "VEML6040 RGBW light sensor"
696         select REGMAP_I2C
697         depends on I2C
698         help
699           Say Y here if you want to build a driver for the Vishay VEML6040
700           RGBW light sensor.
702           To compile this driver as a module, choose M here: the
703           module will be called veml6040.
705 config VEML6070
706         tristate "VEML6070 UV A light sensor"
707         depends on I2C
708         help
709           Say Y here if you want to build a driver for the Vishay VEML6070 UV A
710           light sensor.
712           To compile this driver as a module, choose M here: the
713           module will be called veml6070.
715 config VEML6075
716         tristate "VEML6075 UVA and UVB light sensor"
717         select REGMAP_I2C
718         depends on I2C
719         help
720           Say Y here if you want to build a driver for the Vishay VEML6075 UVA
721           and UVB light sensor.
723           To compile this driver as a module, choose M here: the
724           module will be called veml6075.
726 config VL6180
727         tristate "VL6180 ALS, range and proximity sensor"
728         depends on I2C
729         help
730           Say Y here if you want to build a driver for the STMicroelectronics
731           VL6180 combined ambient light, range and proximity sensor.
733           To compile this driver as a module, choose M here: the
734           module will be called vl6180.
736 config ZOPT2201
737         tristate "ZOPT2201 ALS and UV B sensor"
738         depends on I2C
739         help
740           Say Y here if you want to build a driver for the IDT
741           ZOPT2201 ambient light and UV B sensor.
743           To compile this driver as a module, choose M here: the
744           module will be called zopt2201.
746 endmenu