linux/drivers/iio/gyro
Lorenzo Bianconi d1f13dcad5 iio: st_sensors: add register mask for status register
[ Upstream commit e72a060151 ]

Introduce register mask for data-ready status register since
pressure sensors (e.g. LPS22HB) export just two channels
(BIT(0) and BIT(1)) and BIT(2) is marked reserved while in
st_sensors_new_samples_available() value read from status register
is masked using 0x7.
Moreover do not mask status register using active_scan_mask since
now status value is properly masked and if the result is not zero the
interrupt has to be consumed by the driver. This fix an issue on LPS25H
and LPS331AP where channel definition is swapped respect to status
register.
Furthermore that change allows to properly support new devices
(e.g LIS2DW12) that report just ZYXDA (data-ready) field in status register
to figure out if the interrupt has been generated by the device.

Fixes: 97865fe413 (iio: st_sensors: verify interrupt event to status)
Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@st.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2017-12-25 14:26:26 +01:00
..
adis16080.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
adis16130.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
adis16136.c First set of new device support, features and cleanups for IIO in the 4.5 cycle 2015-12-01 09:13:29 -08:00
adis16260.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
adxrs450.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
bmg160.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bmg160_core.c iio: bmg160: reset chip when probing 2017-03-25 16:36:25 +00:00
bmg160_i2c.c iio: bmg160: Separate i2c and core driver 2015-08-31 17:04:23 +01:00
bmg160_spi.c iio: bmg160: Add SPI driver 2015-08-31 17:06:11 +01:00
hid-sensor-gyro-3d.c iio: gyro: hid-sensor-gyro-3d: Fix memory leak in probe() 2015-05-17 09:09:49 +01:00
itg3200_buffer.c iio: gyro: itg3200: Fix indio_dev->trig assignment 2014-08-25 21:49:00 +01:00
itg3200_core.c iio: gyro: itg3200: Add OF device ID table 2017-03-19 10:58:31 +00:00
Kconfig iio: gyro: mpu3050: add I2C dependency 2016-11-08 20:29:33 +00:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mpu3050-core.c iio: gyro: mpu3050: Allow open drain with anything 2017-07-02 10:24:51 +01:00
mpu3050-i2c.c iio: gyro: mpu3050: stop double error reporting 2017-04-03 20:40:51 +01:00
mpu3050.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ssp_gyro_sensor.c iio: common: ssp_sensors: gyro: use devm_iio_device_register() 2017-01-28 12:16:17 +00:00
st_gyro.h iio: gyro: st_gyro: fix L3GD20H support 2017-07-01 10:16:37 +01:00
st_gyro_buffer.c iio: st_sensors: switch to a threaded interrupt 2016-05-29 20:21:41 +01:00
st_gyro_core.c iio: st_sensors: add register mask for status register 2017-12-25 14:26:26 +01:00
st_gyro_i2c.c iio: common: st_sensors: move st_sensors_of_i2c_probe() in common code 2017-07-01 10:16:56 +01:00
st_gyro_spi.c iio: gyro: st_gyro_spi: add OF capability to st_gyro_spi 2017-07-02 10:24:56 +01:00