linux-stable/drivers/iio/light
Mårten Lindahl bfb6cfeeb8 iio: light: vcnl4000: Make irq handling more generic
This driver supports 4 chips, by which only one (vcnl4010) handles
interrupts and has support for triggered buffer. The setup of these
functions is hardcoded for vcnl4010 inside the generic vcnl4000_probe,
and thus ignores the chip specific configuration structure where all
other chip specific functions are specified.

This complicates adding interrupt handler and triggered buffer support
to chips which may have support for it.

Add members for irq threads and iio_buffer_setup_ops to the generic
vcnl4000_chip_spec struct, so that instead of checking a chip specific
boolean irq support, we check for a chip specific triggered buffer
handler, and/or a chip specific irq thread handler.

Signed-off-by: Mårten Lindahl <marten.lindahl@axis.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20230117190017.3789181-3-marten.lindahl@axis.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2023-01-21 18:04:39 +00:00
..
acpi-als.c iio: core: move @id from struct iio_dev to struct iio_dev_opaque 2021-05-17 13:49:13 +01:00
adjd_s311.c iio: light: adjd_s311: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
adux1020.c iio: light: adux1020: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
al3010.c iio: light: al3010: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
al3320a.c iio: light: al3320a: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
apds9300.c iio: light: apds9300: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
apds9960.c 4th set of IIO fixes for 6.1 2022-11-27 15:05:05 +01:00
as73211.c iio: light: as73211: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() 2022-07-18 18:48:18 +01:00
bh1750.c iio: light: bh1750: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
bh1780.c iio: light: bh1780: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
cm3232.c iio: light: cm3232: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
cm3323.c iio: light: cm3323: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
cm3605.c iio: light: cm3605: Fix an error handling path in cm3605_probe() 2022-08-15 22:30:40 +01:00
cm32181.c iio: light: cm32181: make cm32181_pm_ops static 2022-08-21 18:24:16 +01:00
cm36651.c iio: light: cm36651: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00: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: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
gp2ap020a00f.c iio: light: gp2ap020a00f: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
hid-sensor-als.c iio: hid-sensors: bind IIO channels alloc to device object 2021-07-13 18:21:53 +01:00
hid-sensor-prox.c iio: hid-sensors: bind IIO channels alloc to device object 2021-07-13 18:21:53 +01:00
iqs621-als.c
isl29018.c iio: light: isl29018: Convert to i2c's .probe_new() 2022-11-23 20:20:27 +00:00
isl29028.c iio: light: isl29028: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
isl29125.c iio: light: isl29125: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
jsa1212.c iio: light: jsa1212: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
Kconfig iio: light: rpr0521: add missing Kconfig dependencies 2022-11-12 17:36:02 +00:00
lm3533-als.c iio: lm3533: Use sysfs_emit() 2022-01-23 18:03:36 +00:00
ltr501.c iio: light: ltr501: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
ltrf216a.c iio: light: ltrf216a: Add raw attribute 2022-08-30 18:35:38 +01:00
lv0104cs.c iio: light: lv0104cs: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
Makefile iio: light: tsl2563: Keep Makefile sorted by module name 2022-12-28 17:19:46 +00:00
max44000.c iio: light: max44000: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
max44009.c iio: light: max44009: Convert to i2c's .probe_new() 2022-12-28 17:19:45 +00:00
noa1305.c iio: light: noa1305: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
opt3001.c iio: light: opt3001: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
pa12203001.c iio: light: pa12203001: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
rpr0521.c iio: light: rpr0521: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
si1133.c iio: light: si1133: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
si1145.c iio: light: si1145: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00:00
st_uvis25.h
st_uvis25_core.c iio: light: st_uvis25: Use EXPORT_NS_SIMPLE_DEV_PM_OPS() 2022-09-21 18:42:57 +01:00
st_uvis25_i2c.c iio: light: st_uvis25_i2c: Convert to i2c's .probe_new() 2022-11-23 20:20:28 +00: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: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
tcs3414.c iio: light: tcs3414: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
tcs3472.c iio: light: tcs3472: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
tsl2563.c iio: light: tsl2563: sort header inclusion alphabetically 2022-12-28 17:19:46 +00:00
tsl2583.c iio: light: tsl2583: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
tsl2591.c iio: light: tsl2591: Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr() 2022-07-18 18:48:19 +01:00
tsl2772.c iio: light: tsl2772: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
tsl4531.c iio: light: tsl4531: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
us5182d.c iio: light: us5182d: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
vcnl4000.c iio: light: vcnl4000: Make irq handling more generic 2023-01-21 18:04:39 +00:00
vcnl4035.c iio: light: vcnl4035: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
veml6030.c iio: light: veml6030: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
veml6070.c iio: light: veml6070: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00
vl6180.c iio: accel: vl6180: Convert to i2c's .probe_new() 2022-11-23 19:44:03 +00:00
zopt2201.c iio: light: zopt2201: Convert to i2c's .probe_new() 2022-11-23 20:20:29 +00:00