linux_dsm_epyc7002/drivers/iio/light
Linus Walleij 97d642e230 iio: light: Add a driver for Sharp GP2AP002x00F
This driver handles two different Sharp sensors that have been
proposed for merging to the mainline kernel over the years, and
already has a limited proximity-only driver in the input
subsystem.

These components are completely different from the confusingly
similarly named Sharp GP2AP020A00F, for which we have a driver
in drivers/iio/light/gp2ap020a00f.c

The two components GP2AP002A00F and GP2AP002S00F are
distinctively different but similar: they share the same set of
registers but differ slightly in the I2C protocol.

Instead of the approach by the previous input driver, we create
a combined IIO proximity and light sensor driver.

The plan is to merge this driver and delete the input driver.

The pieces for the driver are picked all over the place after
researching and grepping through a few different vendor trees
and driver submissions.

We merge it under the light sensors because:

- It has similarities with the Capella CM3605 light sensor and
  proximity driver which is there.

- It is related to the GP2AP020A00F driver which is also there.

This driver was tested with the Samsung GT-S7710 mobile phone
which has the GP2AP002S00F proximity sensor mounted.

The suspend/resume cycle will disable the interrupt from the
sensor. If someone would desire to use this interrupt for
wakeup, the driver will need modifications.

Cc: Stephan Gerhold <stephan@gerhold.net>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Paweł Chmiel <pawel.mikolaj.chmiel@gmail.com>
Cc: Jonathan Bakker <xc-racer2@live.ca>
Cc: Oskar Andero <oskar.andero@gmail.com>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Tested-by: Jonathan Bakker <xc-racer2@live.ca>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2020-02-14 12:08:19 +00:00
..
acpi-als.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
adjd_s311.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
adux1020.c iio: light: Add support for ADUX1020 sensor 2019-10-15 21:11:02 +01:00
al3320a.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
apds9300.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
apds9960.c iio: apds9960: Drop GPIO includes 2019-12-15 11:42:15 +00:00
bh1750.c iio: light: bh1750: Resolve compiler warning and make code more readable 2019-09-15 10:47:02 +01:00
bh1780.c Second set of IIO device support, features, cleanups and minor fixes for 5.3. 2019-07-01 10:58:13 +02:00
cm3232.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
cm3323.c iio: light: cm3323: Use device-managed APIs 2019-08-05 14:54:15 +01:00
cm3605.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
cm32181.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
cm36651.c iio: light: cm36651: redundant assignment to variable ret 2019-09-08 12:37:30 +01:00
cros_ec_light_prox.c cros_ec: treewide: Remove 'include/linux/mfd/cros_ec.h' 2020-01-07 17:36:46 +01:00
gp2ap002.c iio: light: Add a driver for Sharp GP2AP002x00F 2020-02-14 12:08:19 +00:00
gp2ap020a00f.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
hid-sensor-als.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 2019-06-05 17:37:06 +02:00
hid-sensor-prox.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 309 2019-06-05 17:37:04 +02:00
isl29018.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
isl29028.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 2019-05-30 11:29:52 -07:00
isl29125.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
jsa1212.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 2019-06-05 17:36:37 +02:00
Kconfig iio: light: Add a driver for Sharp GP2AP002x00F 2020-02-14 12:08:19 +00:00
lm3533-als.c iio: light: remove unneeded semicolon 2019-12-29 15:20:06 +00:00
ltr501.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
lv0104cs.c iio: light: lv0104cs: Add support for LV0104CS light sensor 2018-03-03 15:16:57 +00:00
Makefile iio: light: Add a driver for Sharp GP2AP002x00F 2020-02-14 12:08:19 +00:00
max44000.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
max44009.c iio: light: add driver for MAX44009 2019-02-02 15:47:46 +00:00
noa1305.c iio:light:noa1305: Fix missing break statement. 2019-08-14 09:37:36 +02:00
opt3001.c iio: light: opt3001: fix mutex unlock race 2019-10-09 19:11:29 +01:00
pa12203001.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
rpr0521.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
si1133.c iio: light: si1133: fix uninitialized resp variable 2018-08-01 19:01:35 +01:00
si1145.c iio: si1145: Drop GPIO include 2019-12-15 11:42:15 +00:00
st_uvis25_core.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 2019-05-30 11:29:19 -07:00
st_uvis25_i2c.c iio: light: st_uvis25: Drop unneeded header inclusion 2019-12-29 15:20:04 +00:00
st_uvis25_spi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 2019-05-30 11:29:19 -07:00
st_uvis25.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 2019-05-30 11:29:19 -07:00
stk3310.c iio: light: stk3310: Add device tree support 2019-07-27 20:11:15 +01:00
tcs3414.c iio: tcs3414: fix iio_triggered_buffer_{pre,post}enable positions 2019-09-21 16:31:38 +01:00
tcs3472.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
tsl2563.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 2019-06-05 17:37:07 +02:00
tsl2583.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
tsl2772.c iio: tsl2772: Use regulator_bulk_() APIs 2019-08-05 16:33:21 +01:00
tsl4531.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
us5182d.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 488 2019-06-19 17:09:52 +02:00
vcnl4000.c iio: light: vcnl4000: Fix scale for vcnl4040 2020-01-13 12:08:40 +01:00
vcnl4035.c iio: light: Add support for vishay vcnl4035 2018-11-16 18:32:29 +00:00
veml6030.c iio: light: add driver for veml6030 ambient light sensor 2019-11-10 10:39:33 +00:00
veml6070.c iio: light: veml6070: convert to i2c_new_dummy_device 2019-07-27 22:52:07 +01:00
vl6180.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00
zopt2201.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330 2019-06-05 17:37:06 +02:00