linux-stable/drivers/iio/pressure
Matti Vaittinen 81ca5979b6 iio: pressure: Support ROHM BU1390
Support for the ROHM BM1390 pressure sensor. The BM1390GLV-Z can measure
pressures ranging from 300 hPa to 1300 hPa with configurable measurement
averaging and internal FIFO. The sensor does also provide temperature
measurements.

Sensor does also contain IIR filter implemented in HW. The data-sheet
says the IIR filter can be configured to be "weak", "middle" or
"strong". Some RMS noise figures are provided in data sheet but no
accurate maths for the filter configurations is provided. Hence, the IIR
filter configuration is not supported by this driver and the filter is
configured to the "middle" setting (at least not for now).

The FIFO measurement mode is only measuring the pressure and not the
temperature. The driver measures temperature when FIFO is flushed and
simply uses the same measured temperature value to all reported
temperatures. This should not be a problem when temperature is not
changing very rapidly (several degrees C / second) but allows users to
get the temperature measurements from sensor without any additional logic.

This driver allows the sensor to be used in two muitually exclusive ways,

1. With trigger (data-ready IRQ).
In this case the FIFO is not used as we get data ready for each collected
sample. Instead, for each data-ready IRQ we read the sample from sensor
and push it to the IIO buffer.

2. With hardware FIFO and watermark IRQ.
In this case the data-ready is not used but we enable watermark IRQ. At
each watermark IRQ we go and read all samples in FIFO and push them to the
IIO buffer.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Link: https://lore.kernel.org/r/4f23211e3cf248f9f48ddb2a752387bb00e9c2c4.1695727471.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2023-10-05 14:44:06 +01:00
..
abp060mg.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
bmp280-core.c iio: pressure: bmp280: Add nvmem operations for BMP580 2023-03-11 12:18:29 +00:00
bmp280-i2c.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
bmp280-regmap.c iio: pressure: bmp280: Add support for new sensor BMP580 2023-03-11 12:18:29 +00:00
bmp280-spi.c iio: pressure: bmp280: Add support for new sensor BMP580 2023-03-11 12:18:29 +00:00
bmp280.h iio: pressure: bmp280: Add nvmem operations for BMP580 2023-03-11 12:18:29 +00:00
cros_ec_baro.c iio: cros: Register FIFO callback after sensor is registered 2022-07-18 18:29:13 +01:00
dlhl60d.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
dps310.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
hid-sensor-press.c iio: pressure: hid-sensor: Convert to platform remove callback returning void 2023-09-23 15:06:56 +01:00
hp03.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
hp206c.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
icp10100.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
Kconfig iio: pressure: Support ROHM BU1390 2023-10-05 14:44:06 +01:00
Makefile iio: pressure: Support ROHM BU1390 2023-10-05 14:44:06 +01:00
mpl115.c iio: pressure: mpl115: Implementing low power mode by shutdown gpio 2022-11-23 19:44:00 +00:00
mpl115.h iio: pressure: mpl115: Implementing low power mode by shutdown gpio 2022-11-23 19:44:00 +00:00
mpl115_i2c.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
mpl115_spi.c iio: pressure: mpl115: Implementing low power mode by shutdown gpio 2022-11-23 19:44:00 +00:00
mpl3115.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
mprls0025pa.c iio: pressure: Honeywell mprls0025pa pressure sensor 2023-05-21 18:54:58 +01:00
ms5611.h iio: pressure: ms5611: Switch to fully devm_ managed registration. 2022-12-28 17:19:45 +00:00
ms5611_core.c iio: pressure: ms5611: Switch to fully devm_ managed registration. 2022-12-28 17:19:45 +00:00
ms5611_i2c.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
ms5611_spi.c iio: pressure: ms5611: Switch to fully devm_ managed registration. 2022-12-28 17:19:45 +00:00
ms5637.c iio: pressure: ms5637: Use i2c_get_match_data() 2023-09-12 10:42:04 +01:00
rohm-bm1390.c iio: pressure: Support ROHM BU1390 2023-10-05 14:44:06 +01:00
st_pressure.h iio: pressure: st_pressure: Add support for LPS22DF 2022-09-21 18:42:53 +01:00
st_pressure_buffer.c iio:st-sensors: Remove duplicate MODULE_* 2022-02-18 11:36:54 +00:00
st_pressure_core.c iio: pressure: st_pressure: Add support for LPS22DF 2022-09-21 18:42:53 +01:00
st_pressure_i2c.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
st_pressure_spi.c iio: pressure: st_pressure: Add support for LPS22DF 2022-09-21 18:42:53 +01:00
t5403.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
zpa2326.c iio: Rename iio_trigger_poll_chained and add kernel-doc 2023-03-11 12:18:29 +00:00
zpa2326.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
zpa2326_i2c.c iio: Switch i2c drivers back to use .probe() 2023-05-21 18:54:53 +01:00
zpa2326_spi.c Char/Misc and other driver updates for 5.18-rc1 2022-03-28 12:27:35 -07:00