mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-21 16:29:59 +00:00
![Stephen Boyd](/assets/img/avatar_default.png)
Add support for a ChromeOS EC proximity driver that exposes a "front" proximity sensor via the IIO subsystem. The EC decides when front proximity is near and sets an MKBP switch 'EC_MKBP_FRONT_PROXIMITY' to notify the kernel of proximity. Similarly, when proximity detects something far away it sets the switch bit to 0. For now this driver exposes a single sensor, but it could be expanded in the future via more MKBP bits if desired. Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: Benson Leung <bleung@chromium.org> Cc: Guenter Roeck <groeck@chromium.org> Cc: Douglas Anderson <dianders@chromium.org> Cc: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Signed-off-by: Stephen Boyd <swboyd@chromium.org> Reviewed-by: Gwendal Grignou <gwendal@chromium.org> Link: https://lore.kernel.org/r/20210211024601.1963379-4-swboyd@chromium.org Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
176 lines
4.8 KiB
Text
176 lines
4.8 KiB
Text
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# Proximity sensors
|
|
#
|
|
|
|
menu "Lightning sensors"
|
|
|
|
config AS3935
|
|
tristate "AS3935 Franklin lightning sensor"
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
depends on SPI
|
|
help
|
|
Say Y here to build SPI interface support for the Austrian
|
|
Microsystems AS3935 lightning detection sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called as3935
|
|
|
|
endmenu
|
|
|
|
menu "Proximity and distance sensors"
|
|
|
|
config CROS_EC_MKBP_PROXIMITY
|
|
tristate "ChromeOS EC MKBP Proximity sensor"
|
|
depends on CROS_EC
|
|
help
|
|
Say Y here to enable the proximity sensor implemented via the ChromeOS EC MKBP
|
|
switches protocol. You must enable one bus option (CROS_EC_I2C or CROS_EC_SPI)
|
|
to use this.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called cros_ec_mkbp_proximity.
|
|
|
|
config ISL29501
|
|
tristate "Intersil ISL29501 Time Of Flight sensor"
|
|
depends on I2C
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
select IIO_KFIFO_BUF
|
|
help
|
|
Say Y here if you want to build a driver for the Intersil ISL29501
|
|
Time of Flight sensor.
|
|
|
|
To compile this driver as a module, choose M here: the module will be
|
|
called isl29501.
|
|
|
|
config LIDAR_LITE_V2
|
|
tristate "PulsedLight LIDAR sensor"
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
depends on I2C
|
|
help
|
|
Say Y to build a driver for PulsedLight LIDAR range finding
|
|
sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called pulsedlight-lite-v2
|
|
|
|
config MB1232
|
|
tristate "MaxSonar I2CXL family ultrasonic sensors"
|
|
depends on I2C
|
|
help
|
|
Say Y to build a driver for the ultrasonic sensors I2CXL of
|
|
MaxBotix which have an i2c interface. It can be used to measure
|
|
the distance of objects. Supported types are mb1202, mb1212,
|
|
mb1222, mb1232, mb1242, mb7040, mb7137
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called mb1232.
|
|
|
|
config PING
|
|
tristate "Parallax GPIO bitbanged ranger sensors"
|
|
depends on GPIOLIB
|
|
help
|
|
Say Y here to build a driver for GPIO bitbanged ranger sensors
|
|
with just one GPIO for the trigger and echo. This driver can be
|
|
used to measure the distance of objects.
|
|
|
|
Actually supported are:
|
|
- Parallax PING))) (ultrasonic)
|
|
- Parallax LaserPING (time-of-flight)
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called ping.
|
|
|
|
config RFD77402
|
|
tristate "RFD77402 ToF sensor"
|
|
depends on I2C
|
|
help
|
|
Say Y to build a driver for the RFD77402 Time-of-Flight (distance)
|
|
sensor module with I2C interface.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called rfd77402.
|
|
|
|
config SRF04
|
|
tristate "GPIO bitbanged ultrasonic ranger sensor (SRF04, MB1000)"
|
|
depends on GPIOLIB
|
|
help
|
|
Say Y here to build a driver for GPIO bitbanged ultrasonic
|
|
ranger sensor. This driver can be used to measure the distance
|
|
of objects. It is using two GPIOs.
|
|
Actually Supported types are:
|
|
- Devantech SRF04
|
|
- Maxbotix mb1000
|
|
- Maxbotix mb1010
|
|
- Maxbotix mb1020
|
|
- Maxbotix mb1030
|
|
- Maxbotix mb1040
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called srf04.
|
|
|
|
config SX9310
|
|
tristate "SX9310/SX9311 Semtech proximity sensor"
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
select REGMAP_I2C
|
|
depends on I2C
|
|
help
|
|
Say Y here to build a driver for Semtech's SX9310/SX9311 capacitive
|
|
proximity/button sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called sx9310.
|
|
|
|
config SX9500
|
|
tristate "SX9500 Semtech proximity sensor"
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
select REGMAP_I2C
|
|
depends on I2C
|
|
help
|
|
Say Y here to build a driver for Semtech's SX9500 capacitive
|
|
proximity/button sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called sx9500.
|
|
|
|
config SRF08
|
|
tristate "Devantech SRF02/SRF08/SRF10 ultrasonic ranger sensor"
|
|
select IIO_BUFFER
|
|
select IIO_TRIGGERED_BUFFER
|
|
depends on I2C
|
|
help
|
|
Say Y here to build a driver for Devantech SRF02/SRF08/SRF10
|
|
ultrasonic ranger sensors with i2c interface.
|
|
This driver can be used to measure the distance of objects.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called srf08.
|
|
|
|
config VCNL3020
|
|
tristate "VCNL3020 proximity sensor"
|
|
select REGMAP_I2C
|
|
depends on I2C
|
|
help
|
|
Say Y here if you want to build a driver for the Vishay VCNL3020
|
|
proximity sensor.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called vcnl3020.
|
|
|
|
config VL53L0X_I2C
|
|
tristate "STMicroelectronics VL53L0X ToF ranger sensor (I2C)"
|
|
depends on I2C
|
|
help
|
|
Say Y here to build a driver for STMicroelectronics VL53L0X
|
|
ToF ranger sensors with i2c interface.
|
|
This driver can be used to measure the distance of objects.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called vl53l0x-i2c.
|
|
|
|
endmenu
|