mirror of
https://github.com/torvalds/linux.git
synced 2024-12-03 17:41:22 +00:00
8fe78d5261
The VCNL4010 and VCNL4020 chips are able to raise interrupts on data ready. Use it to provide triggered buffer support for proximity data. Those two chips also provide ambient light data. However, they are sampled at different rate than proximity data. As this is not handled by the IIO framework for now, and the sample frequencies of ambient light data are very low, do add buffer support for them. Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
585 lines
16 KiB
Plaintext
585 lines
16 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
#
|
|
# Light sensors
|
|
#
|
|
# When adding new entries keep the list in alphabetical order
|
|
|
|
menu "Light sensors"
|
|
|
|
config ACPI_ALS
|
|
tristate "ACPI Ambient Light Sensor"
|
|
depends on ACPI
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
select IIO_KFIFO_BUF
|
|
help
|
|
Say Y here if you want to build a driver for the ACPI0008
|
|
Ambient Light Sensor.
|
|
|
|
To compile this driver as a module, choose M here: the module will
|
|
be called acpi-als.
|
|
|
|
config ADJD_S311
|
|
tristate "ADJD-S311-CR999 digital color sensor"
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
depends on I2C
|
|
help
|
|
If you say yes here you get support for the Avago ADJD-S311-CR999
|
|
digital color light sensor.
|
|
|
|
This driver can also be built as a module. If so, the module
|
|
will be called adjd_s311.
|
|
|
|
config ADUX1020
|
|
tristate "ADUX1020 photometric sensor"
|
|
select REGMAP_I2C
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Analog Devices
|
|
ADUX1020 photometric sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called adux1020.
|
|
|
|
config AL3010
|
|
tristate "AL3010 ambient light sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Dyna Image AL3010
|
|
ambient light sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called al3010.
|
|
|
|
config AL3320A
|
|
tristate "AL3320A ambient light sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Dyna Image AL3320A
|
|
ambient light sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called al3320a.
|
|
|
|
config APDS9300
|
|
tristate "APDS9300 ambient light sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Avago APDS9300
|
|
ambient light sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called apds9300.
|
|
|
|
config APDS9960
|
|
tristate "Avago APDS9960 gesture/RGB/ALS/proximity sensor"
|
|
select REGMAP_I2C
|
|
select IIO_BUFFER
|
|
select IIO_KFIFO_BUF
|
|
depends on I2C
|
|
help
|
|
Say Y here to build I2C interface support for the Avago
|
|
APDS9960 gesture/RGB/ALS/proximity sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called apds9960
|
|
|
|
config BH1750
|
|
tristate "ROHM BH1750 ambient light sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y here to build support for the ROHM BH1710, BH1715, BH1721,
|
|
BH1750, BH1751 ambient light sensors.
|
|
|
|
To compile this driver as a module, choose M here: the module will
|
|
be called bh1750.
|
|
|
|
config BH1780
|
|
tristate "ROHM BH1780 ambient light sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y here to build support for the ROHM BH1780GLI ambient
|
|
light sensor.
|
|
|
|
To compile this driver as a module, choose M here: the module will
|
|
be called bh1780.
|
|
|
|
config CM32181
|
|
depends on I2C
|
|
tristate "CM32181 driver"
|
|
help
|
|
Say Y here if you use cm32181.
|
|
This option enables ambient light sensor using
|
|
Capella cm32181 device driver.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called cm32181.
|
|
|
|
config CM3232
|
|
depends on I2C
|
|
tristate "CM3232 ambient light sensor"
|
|
help
|
|
Say Y here if you use cm3232.
|
|
This option enables ambient light sensor using
|
|
Capella Microsystems cm3232 device driver.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called cm3232.
|
|
|
|
config CM3323
|
|
depends on I2C
|
|
tristate "Capella CM3323 color light sensor"
|
|
help
|
|
Say Y here if you want to build a driver for Capella CM3323
|
|
color sensor.
|
|
|
|
To compile this driver as a module, choose M here: the module will
|
|
be called cm3323.
|
|
|
|
config CM3605
|
|
tristate "Capella CM3605 ambient light and proximity sensor"
|
|
depends on OF
|
|
help
|
|
Say Y here if you want to build a driver for Capella CM3605
|
|
ambient light and short range proximity sensor.
|
|
|
|
To compile this driver as a module, choose M here: the module will
|
|
be called cm3605.
|
|
|
|
config CM36651
|
|
depends on I2C
|
|
tristate "CM36651 driver"
|
|
help
|
|
Say Y here if you use cm36651.
|
|
This option enables proximity & RGB sensor using
|
|
Capella cm36651 device driver.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called cm36651.
|
|
|
|
config IIO_CROS_EC_LIGHT_PROX
|
|
tristate "ChromeOS EC Light and Proximity Sensors"
|
|
depends on IIO_CROS_EC_SENSORS_CORE
|
|
help
|
|
Say Y here if you use the light and proximity sensors
|
|
presented by the ChromeOS EC Sensor hub.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called cros_ec_light_prox.
|
|
|
|
config GP2AP002
|
|
tristate "Sharp GP2AP002 Proximity/ALS sensor"
|
|
depends on I2C
|
|
select REGMAP
|
|
help
|
|
Say Y here if you have a Sharp GP2AP002 proximity/ALS combo-chip
|
|
hooked to an I2C bus.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called gp2ap002.
|
|
|
|
config GP2AP020A00F
|
|
tristate "Sharp GP2AP020A00F Proximity/ALS sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
select IRQ_WORK
|
|
help
|
|
Say Y here if you have a Sharp GP2AP020A00F proximity/ALS combo-chip
|
|
hooked to an I2C bus.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called gp2ap020a00f.
|
|
|
|
config IQS621_ALS
|
|
tristate "Azoteq IQS621/622 ambient light sensors"
|
|
depends on MFD_IQS62X || COMPILE_TEST
|
|
help
|
|
Say Y here if you want to build support for the Azoteq IQS621
|
|
and IQS622 ambient light sensors.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called iqs621-als.
|
|
|
|
config SENSORS_ISL29018
|
|
tristate "Intersil 29018 light and proximity sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
default n
|
|
help
|
|
If you say yes here you get support for ambient light sensing and
|
|
proximity infrared sensing from Intersil ISL29018.
|
|
This driver will provide the measurements of ambient light intensity
|
|
in lux, proximity infrared sensing and normal infrared sensing.
|
|
Data from sensor is accessible via sysfs.
|
|
|
|
config SENSORS_ISL29028
|
|
tristate "Intersil ISL29028 Concurrent Light and Proximity Sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
Provides driver for the Intersil's ISL29028 device.
|
|
This driver supports the sysfs interface to get the ALS, IR intensity,
|
|
Proximity value via iio. The ISL29028 provides the concurrent sensing
|
|
of ambient light and proximity.
|
|
|
|
config ISL29125
|
|
tristate "Intersil ISL29125 digital color light sensor"
|
|
depends on I2C
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
help
|
|
Say Y here if you want to build a driver for the Intersil ISL29125
|
|
RGB light sensor for I2C.
|
|
|
|
To compile this driver as a module, choose M here: the module will be
|
|
called isl29125.
|
|
|
|
config HID_SENSOR_ALS
|
|
depends on HID_SENSOR_HUB
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
select HID_SENSOR_IIO_COMMON
|
|
select HID_SENSOR_IIO_TRIGGER
|
|
tristate "HID ALS"
|
|
help
|
|
Say yes here to build support for the HID SENSOR
|
|
Ambient light sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called hid-sensor-als.
|
|
|
|
config HID_SENSOR_PROX
|
|
depends on HID_SENSOR_HUB
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
select HID_SENSOR_IIO_COMMON
|
|
select HID_SENSOR_IIO_TRIGGER
|
|
tristate "HID PROX"
|
|
help
|
|
Say yes here to build support for the HID SENSOR
|
|
Proximity sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called hid-sensor-prox.
|
|
|
|
config JSA1212
|
|
tristate "JSA1212 ALS and proximity sensor driver"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
Say Y here if you want to build a IIO driver for JSA1212
|
|
proximity & ALS sensor device.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called jsa1212.
|
|
|
|
config RPR0521
|
|
tristate "ROHM RPR0521 ALS and proximity sensor driver"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
Say Y here if you want to build support for ROHM's RPR0521
|
|
ambient light and proximity sensor device.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called rpr0521.
|
|
|
|
config SENSORS_LM3533
|
|
tristate "LM3533 ambient light sensor"
|
|
depends on MFD_LM3533
|
|
help
|
|
If you say yes here you get support for the ambient light sensor
|
|
interface on National Semiconductor / TI LM3533 Lighting Power
|
|
chips.
|
|
|
|
The sensor interface can be used to control the LEDs and backlights
|
|
of the chip through defining five light zones and three sets of
|
|
corresponding output-current values.
|
|
|
|
The driver provides raw and mean adc readings along with the current
|
|
light zone through sysfs. A threshold event can be generated on zone
|
|
changes. The ALS-control output values can be set per zone for the
|
|
three current output channels.
|
|
|
|
config LTR501
|
|
tristate "LTR-501ALS-01 light sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
help
|
|
If you say yes here you get support for the Lite-On LTR-501ALS-01
|
|
ambient light and proximity sensor. This driver also supports LTR-559
|
|
ALS/PS or LTR-301 ALS sensors.
|
|
|
|
This driver can also be built as a module. If so, the module
|
|
will be called ltr501.
|
|
|
|
config LV0104CS
|
|
tristate "LV0104CS Ambient Light Sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build support for the On Semiconductor
|
|
LV0104CS ambient light sensor.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called lv0104cs.
|
|
|
|
config MAX44000
|
|
tristate "MAX44000 Ambient and Infrared Proximity Sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
help
|
|
Say Y here if you want to build support for Maxim Integrated's
|
|
MAX44000 ambient and infrared proximity sensor device.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called max44000.
|
|
|
|
config MAX44009
|
|
tristate "MAX44009 Ambient Light Sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
Say Y here if you want to build support for Maxim Integrated's
|
|
MAX44009 ambient light sensor device.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called max44009.
|
|
|
|
config NOA1305
|
|
tristate "ON Semiconductor NOA1305 ambient light sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
Say Y here if you want to build support for the ON Semiconductor
|
|
NOA1305 ambient light sensor.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
The module will be called noa1305.
|
|
|
|
config OPT3001
|
|
tristate "Texas Instruments OPT3001 Light Sensor"
|
|
depends on I2C
|
|
help
|
|
If you say Y or M here, you get support for Texas Instruments
|
|
OPT3001 Ambient Light Sensor.
|
|
|
|
If built as a dynamically linked module, it will be called
|
|
opt3001.
|
|
|
|
config PA12203001
|
|
tristate "TXC PA12203001 light and proximity sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
If you say yes here you get support for the TXC PA12203001
|
|
ambient light and proximity sensor.
|
|
|
|
This driver can also be built as a module. If so, the module
|
|
will be called pa12203001.
|
|
|
|
config SI1133
|
|
tristate "SI1133 UV Index Sensor and Ambient Light Sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Silicon Labs SI1133
|
|
UV Index Sensor and Ambient Light Sensor chip.
|
|
|
|
To compile this driver as a module, choose M here: the module will be
|
|
called si1133.
|
|
|
|
config SI1145
|
|
tristate "SI1132 and SI1141/2/3/5/6/7 combined ALS, UV index and proximity sensor"
|
|
depends on I2C
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
help
|
|
Say Y here if you want to build a driver for the Silicon Labs SI1132 or
|
|
SI1141/2/3/5/6/7 combined ambient light, UV index and proximity sensor
|
|
chips.
|
|
|
|
To compile this driver as a module, choose M here: the module will be
|
|
called si1145.
|
|
|
|
config STK3310
|
|
tristate "STK3310 ALS and proximity sensor"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
help
|
|
Say yes here to get support for the Sensortek STK3310 ambient light
|
|
and proximity sensor. The STK3311 model is also supported by this
|
|
driver.
|
|
|
|
Choosing M will build the driver as a module. If so, the module
|
|
will be called stk3310.
|
|
|
|
config ST_UVIS25
|
|
tristate "STMicroelectronics UVIS25 sensor driver"
|
|
depends on (I2C || SPI)
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
select ST_UVIS25_I2C if (I2C)
|
|
select ST_UVIS25_SPI if (SPI_MASTER)
|
|
help
|
|
Say yes here to build support for STMicroelectronics UVIS25
|
|
uv sensor
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called st_uvis25.
|
|
|
|
config ST_UVIS25_I2C
|
|
tristate
|
|
depends on ST_UVIS25
|
|
select REGMAP_I2C
|
|
|
|
config ST_UVIS25_SPI
|
|
tristate
|
|
depends on ST_UVIS25
|
|
select REGMAP_SPI
|
|
|
|
config TCS3414
|
|
tristate "TAOS TCS3414 digital color sensor"
|
|
depends on I2C
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
help
|
|
If you say yes here you get support for the TAOS TCS3414
|
|
family of digital color sensors.
|
|
|
|
This driver can also be built as a module. If so, the module
|
|
will be called tcs3414.
|
|
|
|
config TCS3472
|
|
tristate "TAOS TCS3472 color light-to-digital converter"
|
|
depends on I2C
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
help
|
|
If you say yes here you get support for the TAOS TCS3472
|
|
family of color light-to-digital converters with IR filter.
|
|
|
|
This driver can also be built as a module. If so, the module
|
|
will be called tcs3472.
|
|
|
|
config SENSORS_TSL2563
|
|
tristate "TAOS TSL2560, TSL2561, TSL2562 and TSL2563 ambient light sensors"
|
|
depends on I2C
|
|
help
|
|
If you say yes here you get support for the Taos TSL2560,
|
|
TSL2561, TSL2562 and TSL2563 ambient light sensors.
|
|
|
|
This driver can also be built as a module. If so, the module
|
|
will be called tsl2563.
|
|
|
|
config TSL2583
|
|
tristate "TAOS TSL2580, TSL2581 and TSL2583 light-to-digital converters"
|
|
depends on I2C
|
|
help
|
|
Provides support for the TAOS tsl2580, tsl2581 and tsl2583 devices.
|
|
Access ALS data via iio, sysfs.
|
|
|
|
config TSL2772
|
|
tristate "TAOS TSL/TMD2x71 and TSL/TMD2x72 Family of light and proximity sensors"
|
|
depends on I2C
|
|
help
|
|
Support for: tsl2571, tsl2671, tmd2671, tsl2771, tmd2771, tsl2572, tsl2672,
|
|
tmd2672, tsl2772, tmd2772 devices.
|
|
Provides iio_events and direct access via sysfs.
|
|
|
|
config TSL4531
|
|
tristate "TAOS TSL4531 ambient light sensors"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the TAOS TSL4531 family
|
|
of ambient light sensors with direct lux output.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called tsl4531.
|
|
|
|
config US5182D
|
|
tristate "UPISEMI light and proximity sensor"
|
|
depends on I2C
|
|
help
|
|
If you say yes here you get support for the UPISEMI US5182D
|
|
ambient light and proximity sensor.
|
|
|
|
This driver can also be built as a module. If so, the module
|
|
will be called us5182d.
|
|
|
|
config VCNL4000
|
|
tristate "VCNL4000/4010/4020/4200 combined ALS and proximity sensor"
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Vishay VCNL4000,
|
|
VCNL4010, VCNL4020, VCNL4200 combined ambient light and proximity
|
|
sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called vcnl4000.
|
|
|
|
config VCNL4035
|
|
tristate "VCNL4035 combined ALS and proximity sensor"
|
|
select IIO_TRIGGERED_BUFFER
|
|
select REGMAP_I2C
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Vishay VCNL4035,
|
|
combined ambient light (ALS) and proximity sensor. Currently only ALS
|
|
function is available.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called vcnl4035.
|
|
|
|
config VEML6030
|
|
tristate "VEML6030 ambient light sensor"
|
|
select REGMAP_I2C
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Vishay VEML6030
|
|
ambient light sensor (ALS).
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called veml6030.
|
|
|
|
config VEML6070
|
|
tristate "VEML6070 UV A light sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Vishay VEML6070 UV A
|
|
light sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called veml6070.
|
|
|
|
config VL6180
|
|
tristate "VL6180 ALS, range and proximity sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the STMicroelectronics
|
|
VL6180 combined ambient light, range and proximity sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called vl6180.
|
|
|
|
config ZOPT2201
|
|
tristate "ZOPT2201 ALS and UV B sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the IDT
|
|
ZOPT2201 ambient light and UV B sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called zopt2201.
|
|
|
|
endmenu
|