linux-stable/drivers/iio/light
Gwendal Grignou 80346b2b55 iio: cros: unify hw fifo attributes without API changes
Commit 2e2366c2d1 ("iio: cros_ec: unify hw fifo attributes into the core file")
should be reverted as it set buffer extended attributes at
the wrong place. However, to revert it will requires to revert more
commits:
commit 165aea80e2 ("iio: cros_ec: use devm_iio_triggered_buffer_setup_ext()")
commit 21232b4456 ("iio: buffer: remove iio_buffer_set_attrs() helper")).
and we would still have conflict with more recent development.
commit ee708e6baa ("iio: buffer: introduce support for attaching more IIO buffers")

Instead, this commit reverts the first 2 commits without re-adding
iio_buffer_set_attrs() and set the buffer extended attributes at the
right place:

1. Instead of adding has_fw_fifo, deduct it from the configuration:
- EC must support FIFO (EC_FEATURE_MOTION_SENSE_FIFO) set.
- sensors send data a regular interval (accelerometer, gyro,
  magnetomer, barometer, light sensor).
- "Legacy accelerometer" is only present on EC without FIFO, so we don't
need to set buffer attributes.

2. devm_iio_triggered_buffer_setup_ext() does not need to be called when
EC does not support FIFO, as there is no FIFO to manage.

3. Use devm_iio_triggered_buffer_setup_ext() when EC has a FIFO to
specify the buffer extended attributes.

Fixes: 2e2366c2d1 ("iio: cros_ec: unify hw fifo attributes into the core file")
Fixes: 165aea80e2 ("iio: cros_ec: use devm_iio_triggered_buffer_setup_ext()")
Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Reviewed-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Link: https://lore.kernel.org/r/20210318184857.2679181-1-gwendal@chromium.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2021-03-25 19:13:52 +00:00
..
acpi-als.c iio: make use of devm_iio_kfifo_buffer_setup() helper 2021-03-11 20:47:01 +00:00
adjd_s311.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
adux1020.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
al3010.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
al3320a.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
apds9300.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
apds9960.c iio: make use of devm_iio_kfifo_buffer_setup() helper 2021-03-11 20:47:01 +00:00
as73211.c iio: light: as73211: Increase measurement timeout 2020-09-13 10:37:46 +01:00
bh1750.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
bh1780.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cm3232.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cm3323.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cm3605.c iio: remove left-over parent assignments 2020-06-14 11:50:04 +01:00
cm32181.c iio: light: cm32181: Fix formatting and docrot issues in cm32181_acpi_get_cpm() 2020-07-20 09:03:07 +01:00
cm36651.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cros_ec_light_prox.c iio: cros: unify hw fifo attributes without API changes 2021-03-25 19:13:52 +00:00
gp2ap002.c iio: light: gp2ap002: Drop unneeded explicit casting 2021-03-25 19:13:50 +00:00
gp2ap020a00f.c iio: gp2ap020a00f: Remove code to set trigger parent 2021-03-25 19:13:50 +00:00
hid-sensor-als.c iio: hid-sensor-als: Add relative hysteresis support 2021-03-11 20:47:09 +00:00
hid-sensor-prox.c iio: hid-sensors: Move get sensitivity attribute to hid-sensor-common 2021-03-11 20:47:09 +00:00
iqs621-als.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
isl29018.c iio: light: isl29018: Simplify with dev_err_probe() 2020-09-03 19:40:51 +01:00
isl29028.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
isl29125.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
jsa1212.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
Kconfig iio: light: fix kconfig dependency bug for VCNL4035 2020-11-08 15:43:44 +00:00
lm3533-als.c iio: light: lm3533-als: use iio_device_set_parent() to assign parent 2020-06-14 11:50:02 +01:00
ltr501.c iio:light:ltr501 Fix timestamp alignment issue. 2020-08-22 11:38:58 +01:00
lv0104cs.c Replace HTTP links with HTTPS ones: drivers/iio 2020-07-13 15:05:59 +01:00
Makefile iio: light: as73211: New driver 2020-09-03 19:40:40 +01:00
max44000.c iio:light:max44000 Fix timestamp alignment and prevent data leak. 2020-08-22 11:38:57 +01:00
max44009.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
noa1305.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
opt3001.c iio: Remove kernel-doc keyword in file header comment 2021-03-25 19:13:49 +00:00
pa12203001.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
rpr0521.c iio: fix devm_iio_trigger_alloc with parent.cocci 2021-03-25 19:13:50 +00:00
si1133.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
si1145.c iio: fix devm_iio_trigger_alloc with parent.cocci 2021-03-25 19:13:50 +00: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: fix devm_iio_trigger_alloc with parent.cocci 2021-03-25 19:13:50 +00:00
st_uvis25_i2c.c iio: light: st_uvis25: Add mod_devicetable.h and drop of_match_ptr 2020-04-25 15:44:36 +01:00
st_uvis25_spi.c iio: light: st_uvis25: Add mod_devicetable.h and drop of_match_ptr 2020-04-25 15:44:36 +01:00
stk3310.c iio: Remove kernel-doc keyword in file header comment 2021-03-25 19:13:49 +00:00
tcs3414.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
tcs3472.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
tsl2563.c iio:light:tsl2563 use generic fw accessors 2020-11-01 15:28:55 +00:00
tsl2583.c iio: tsl2583: Use DIV_ROUND_CLOSEST() instead of open-coding it 2021-01-09 21:52:45 +00:00
tsl2772.c iio: light: tsl2772: Simplify with dev_err_probe() 2020-09-03 19:40:51 +01:00
tsl4531.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
us5182d.c iio: light: us5182d: Fix formatting in kerneldoc function block 2020-07-20 09:03:19 +01:00
vcnl4000.c iio: fix devm_iio_trigger_alloc with parent.cocci 2021-03-25 19:13:50 +00:00
vcnl4035.c iio: fix devm_iio_trigger_alloc with parent.cocci 2021-03-25 19:13:50 +00:00
veml6030.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
veml6070.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
vl6180.c iio: vl6180: Use DIV_ROUND_CLOSEST() instead of open-coding it 2021-01-09 21:52:45 +00:00
zopt2201.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00