A number of fixes to the mprls0025pa driver: - an off-by-one initially caused by a typo in the bindings file - two error fields are never checked during sensor interaction - unsafe initialization if the driver is instantiated via sysfs and the bindings are missing Quality of life changes: - a refactor that adds a pressure-triplet property which initializes pmin-pascal and pmax-pascal just like in the hsc030pa driver. The user only needs to extract a short string from the chip name instead of looking up the chip in the datasheet, understand the nomenclature, extract the measurement range and then convert all units to pascals. New feature: - SPI compatibility for Honeywell MPR sensors that require it. Both binding and driver are backwards compatible. Tested in I2C and SPI modes with two different sensors. The refactor requires property function present in the togreg branch. Datasheet: https://prod-edam.honeywell.com/content/dam/honeywell-edam/sps/siot/en-us/products/sensors/pressure-sensors/board-mount-pressure-sensors/micropressure-mpr-series/documents/sps-siot-mpr-series-datasheet-32332628-ciid-172626.pdf Co-developed-by: Andreas Klinger <ak@xxxxxxxxxxxxx> Signed-off-by: Andreas Klinger <ak@xxxxxxxxxxxxx> Signed-off-by: Petre Rodan <petre.rodan@xxxxxxxxxxxxxxx> Petre Rodan (10): dt-bindings: iio: pressure: honeywell,mprls0025pa.yaml improvements dt-bindings: iio: pressure: honeywell,mprls0025pa.yaml add pressure-triplet dt-bindings: iio: pressure: honeywell,mprls0025pa.yaml add spi bus iio: pressure: mprls0025pa fix off-by-one enum iio: pressure: mprls0025pa improve driver error resilience iio: pressure: mprls0025pa remove defaults iio: pressure: mprls0025pa whitespace cleanup iio: pressure: mprls0025pa refactor iio: pressure: mprls0025pa add triplet property iio: pressure: mprls0025pa add SPI driver .../iio/pressure/honeywell,mprls0025pa.yaml | 98 ++++-- MAINTAINERS | 3 +- drivers/iio/pressure/Kconfig | 14 +- drivers/iio/pressure/Makefile | 2 + drivers/iio/pressure/mprls0025pa.c | 313 +++++++++--------- drivers/iio/pressure/mprls0025pa.h | 102 ++++++ drivers/iio/pressure/mprls0025pa_i2c.c | 98 ++++++ drivers/iio/pressure/mprls0025pa_spi.c | 89 +++++ 8 files changed, 542 insertions(+), 177 deletions(-) create mode 100644 drivers/iio/pressure/mprls0025pa.h create mode 100644 drivers/iio/pressure/mprls0025pa_i2c.c create mode 100644 drivers/iio/pressure/mprls0025pa_spi.c -- 2.41.0