Skip to content

RFC iio:st_sensors: fixes and lps22hb pressure sensor

Gregor Boirie linux-iio 1 version Applied

Status from this message: Applied to the togreg branch of iio.git - initially pushed out as

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest9 patches 27 repliesApplied

Patches in v1 Applied

#Subject and filesSizeRepliesApplied
1/9iio:st_pressure:initial lps22hb sensor supportDocumentation/devicetree/bindings/iio/st-sensors.txt drivers/iio/pressure/Kconfig drivers/iio/pressure/st_pressure.h +3 more+97 -53 replies
2/9iio:st_pressure: fix sampling gainsdrivers/iio/pressure/st_pressure_core.c+75 -343 replies
3/9iio:st_pressure: lps22hb temperature supportdrivers/iio/pressure/st_pressure_core.c+24 -21 reply
4/9iio:st_sensors: align on storagebits boundariesdrivers/iio/common/st_sensors/st_sensors_buffer.c drivers/iio/common/st_sensors/st_sensors_core.c+18 -225 replies
5/9iio:st_pressure: align storagebits on power of 2drivers/iio/pressure/st_pressure_core.c+2 -20 replies
6/9iio:st_pressure: temperature triggered bufferingdrivers/iio/pressure/st_pressure_core.c+9 -112 replies
7/9iio:st_sensors: unexport st_sensors_get_buffer_elementdrivers/iio/common/st_sensors/st_sensors_buffer.c include/linux/iio/common/st_sensors.h+1 -41 reply
8/9iio:st_sensors: emulate SMBus block read if neededdrivers/iio/common/st_sensors/st_sensors_i2c.c+2 -21 reply
9/9iio:st_sensors: fix power regulator usagedrivers/iio/accel/st_accel_core.c drivers/iio/common/st_sensors/st_sensors_core.c drivers/iio/gyro/st_gyro_core.c +3 more+57 -223 replies

Reviews trailers per patch

None of the 9 patches has a Reviewed-by or Acked-by.

PatchLinus Walleij
SeriesT-b
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [RFC PATCH v1 0/9] iio:st_sensors: fixes and lps22hb pressure sensor

This preliminary patch series adds support for a new ST LPS22HB pressure sensor and introduce a few fixes related to st_pressure core and st_sensors triggered buffering.
It is not meant to be reviewed for definitive inclusion as it touches too many drivers / devices I cannot test with.
Note that as a few minor and more controversial patches (7, 8 and 9) might also be candidate for a seperate series.

Patch 2 makes st_pressure sensors compliant with ABI and fixes a few missing sampling gains. Scale / offset computation is modified to address all gains currently possible. It impacts LPS331AP, LPS001WP and LPS25H sensors. Please please please ! If anyone owning one of these could run some tests, I'd be glad to get some feedback since I have none of them.

Patch 4 is a rework of the way st_sensors samples are stored in memory to comply with IIO expected alignment contraints (some st_pressure samples are 24 bits long). It is heavily based upon Linux Walleij' approach where each channel is captured individually. See http://www.spinics.net/lists/linux-iio/msg24028.html
and http://www.spinics.net/lists/linux-iio/msg23598.html threads for more infos. This patch impacts all st_sensors.
Please please please ! If anyone owning one of these could run some tests...

Patch 5 enforces 32 bits storage alignment for 24 bits long st_pressure sampling channels.
Patch 6 enables triggered buffering for st_pressure temperature channels. We need temperature samples to control on-board device temperature (noise and drift removal).
Both patches impact st_pressure sensors mentionned above. Please please please ! If anyone owning one of these could run some tests...

Regards,
gregor.

Gregor Boirie (9):
iio:st_pressure:initial lps22hb sensor support iio:st_pressure: fix sampling gains iio:st_pressure: lps22hb temperature support iio:st_sensors: align on storagebits boundaries iio:st_pressure: align storagebits on power of 2 iio:st_pressure: temperature triggered buffering iio:st_sensors: unexport st_sensors_get_buffer_element iio:st_sensors: emulate SMBus block read if needed iio:st_sensors: fix power regulator usage

 .../devicetree/bindings/iio/st-sensors.txt         |   1 +
 drivers/iio/accel/st_accel_core.c                  |  12 +-
 drivers/iio/common/st_sensors/st_sensors_buffer.c  |  41 ++--
 drivers/iio/common/st_sensors/st_sensors_core.c    |  31 ++-
 drivers/iio/common/st_sensors/st_sensors_i2c.c     |   4 +-
 drivers/iio/gyro/st_gyro_core.c                    |  12 +-
 drivers/iio/magnetometer/st_magn_core.c            |  12 +-
 drivers/iio/pressure/Kconfig                       |   2 +-
 drivers/iio/pressure/st_pressure.h                 |   1 +
 drivers/iio/pressure/st_pressure_core.c            | 250 ++++++++++++++++-----
 drivers/iio/pressure/st_pressure_i2c.c             |   4 +
 drivers/iio/pressure/st_pressure_spi.c             |   1 +
 include/linux/iio/common/st_sensors.h              |   4 +-
 13 files changed, 278 insertions(+), 97 deletions(-)
Signature · 1 line
2.1.4