linux/drivers/iio/light
Matti Vaittinen 06342d3f97 iio: bu27034: Add a read only HARDWAREGAIN
The ROHM BU27034 light sensor has two data channels for measuring
different frequencies of light. The result from these channels is
combined into Lux value while the raw channel values are reported via
intensity channels.

Both of the intensity channels have adjustable gain setting which
impacts the scale of the raw channels. Eg, doubling the gain will double
the values read from the raw channels, which halves the scale value. The
integration time can also be set for the sensor. This does also have an
impact to the scale of the intensity channels because increasing the
integration time will also increase the values reported via the raw
channels.

Impact of integration time to the scale and the fact that the scale value
does not start from '1', can make it hard for a human reader to compute the
gain values based on the scale.

Add read-only HARDWAREGAIN to help debugging.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Link: https://patch.msgid.link/ec349847cc994f3bd632e99b408a31e7c70581d0.1720176341.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
History 2024-08-03 10:13:35 +01:00
..
acpi-als.c iio: Rename iio_trigger_poll_chained and add kernel-doc 2023-03-11 12:18:29 +00:00
adjd_s311.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
adux1020.c iio: light: adux1020: make use of regmap_clear_bits(), regmap_set_bits() 2024-06-25 21:04:47 +01:00
al3010.c iio: light: al3010: Switch from linux/of.h to linux/mod_devicetable.h 2024-02-28 19:26:35 +00:00
al3320a.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
apds9300.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
apds9306.c iio: light: apds9306: Fix error handing 2024-06-29 18:51:25 +01:00
apds9960.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
as73211.c iio: light: as73211: add support for as7331 2024-01-22 18:58:44 +00:00
bh1750.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
bh1780.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
cm3232.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
cm3323.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
cm3605.c iio: light: cm3605: Convert to platform remove callback returning void 2023-09-23 15:06:55 +01:00
cm32181.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
cm36651.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
cros_ec_light_prox.c iio: cros: Register FIFO callback after sensor is registered 2022-07-18 18:29:13 +01:00
gp2ap002.c iio: light: gp2ap002: Constify struct regmap_bus 2024-07-29 20:31:10 +01:00
gp2ap020a00f.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
hid-sensor-als.c IIO: 1st set of new device support, features and cleanup for 6.9 2024-02-25 14:11:41 +01:00
hid-sensor-prox.c iio: light: hid-sensor-prox: Convert to platform remove callback returning void 2023-09-23 15:06:55 +01:00
iqs621-als.c iio: light: iqs621-als: make use of regmap_clear_bits() 2024-06-25 21:04:47 +01:00
isl29018.c iio: light: isl29018: make use of regmap_clear_bits() 2024-06-25 21:04:47 +01:00
isl29028.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
isl29125.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
isl76682.c iio: light: isl76682: remove unreachable code 2023-12-11 19:16:35 +00:00
jsa1212.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
Kconfig iio: light: driver for Vishay VEML6040 2024-06-13 19:19:25 +01:00
lm3533-als.c iio: light: lm3533-als: Convert to platform remove callback returning void 2023-09-23 15:06:55 +01:00
ltr390.c iio: light: driver for Lite-On ltr390 2023-12-11 19:16:35 +00:00
ltr501.c iio: light: ltr501: Drop ACPI_PTR() usage 2024-01-23 22:06:55 +00:00
ltrf216a.c iio: light: ltrf216a: Return floating point values 2023-11-26 18:01:40 +00:00
lv0104cs.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
Makefile iio: light: driver for Vishay VEML6040 2024-06-13 19:19:25 +01:00
max44000.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
max44009.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
noa1305.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
opt3001.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
opt4001.c iio: light: opt4001: Use i2c_get_match_data() 2023-09-12 10:42:03 +01:00
pa12203001.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
rohm-bu27008.c iio: bu27008: Add illuminance channel 2023-11-16 19:10:27 +00:00
rohm-bu27034.c iio: bu27034: Add a read only HARDWAREGAIN 2024-08-03 10:13:35 +01:00
rpr0521.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
si1133.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
si1145.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
st_uvis25.h iio:light:st_uvis25: Fix timestamp alignment and prevent data leak. 2020-12-03 19:40:27 +00:00
st_uvis25_core.c iio: light: st_uvis25_core: make use of regmap_clear_bits() 2024-06-25 21:04:47 +01:00
st_uvis25_i2c.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
st_uvis25_spi.c iio: light: st_uvis25: Use EXPORT_NS_SIMPLE_DEV_PM_OPS() 2022-09-21 18:42:57 +01:00
stk3310.c iio: light: stk3310: support more stk3311 variants 2024-06-04 19:53:06 +01:00
tcs3414.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
tcs3472.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
tsl2563.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
tsl2583.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
tsl2591.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
tsl2772.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
tsl4531.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
us5182d.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
vcnl4000.c iio: light: vcnl4000: Set ps high definition for 4040/4200 2024-02-17 16:16:09 +00:00
vcnl4035.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
veml6030.c iio: light: veml6030: make use of regmap_clear_bits() 2024-06-25 21:04:47 +01:00
veml6040.c iio: light: driver for Vishay VEML6040 2024-06-13 19:19:25 +01:00
veml6070.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
veml6075.c iio: light: add VEML6075 UVA and UVB light sensor driver 2023-12-04 13:57:25 +00:00
vl6180.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
zopt2201.c iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00