mbox series

[v2,0/9] iio: accel: bmc150: Add support for BMA253/BMA254

Message ID 20210610122126.50504-1-stephan@gerhold.net
Headers show
Series iio: accel: bmc150: Add support for BMA253/BMA254 | expand

Message

Stephan Gerhold June 10, 2021, 12:21 p.m. UTC
The Bosch BMA253 accelerometer is very similar to both BMA254 and BMA255.
The current situation is very confusing: BMA254 is supported by the bma180
driver, but BMA255 is supported by the bmc150-accel driver.

It turns out the bma180 and bmc150-accel drivers have quite some overlap,
and BMA253/BMA254 would be a bit better supported in bmc150-accel
(which has support for the motion trigger/interrupt).

This series adds BMA253 support to bmc150-accel and also moves BMA254
over to bmc150, removing some unnecessary code from the bma180 driver.

In v2 I also sneaked in a small fix for the scale table of BMA222
to simplify backporting for the stable people.

---
Changes in v2:
  - Add new "iio: accel: bmc150: Fix bma222 scale unit" patch at the
    beginning so the stable people can backport it without conflicts
  - Add Reviewed-by: from Hans and Andy for all previous patches
  - Add patch 3 and 4 to have all the chip lists in a consistent order
  - Fix last patch to also drop BMA254 from the file header in bma180.c

v1: https://lore.kernel.org/linux-iio/20210610095300.3613-1-stephan@gerhold.net/

Stephan Gerhold (9):
  iio: accel: bmc150: Fix bma222 scale unit
  iio: accel: bmc150: Drop misleading/duplicate chip identifiers
  iio: accel: bmc150: Drop duplicated documentation of supported chips
  iio: accel: bmc150: Sort all chip names alphabetically / by chip ID
  dt-bindings: iio: accel: bma255: Document bosch,bma253
  iio: accel: bmc150: Add device IDs for BMA253
  dt-bindings: iio: bma255: Allow multiple interrupts
  dt-bindings: iio: accel: bma180/bma255: Move bma254 to bma255 schema
  iio: accel: bma180/bmc150: Move BMA254 to bmc150-accel driver

 .../bindings/iio/accel/bosch,bma180.yaml      |  3 +-
 .../bindings/iio/accel/bosch,bma255.yaml      |  9 +-
 drivers/iio/accel/Kconfig                     |  8 +-
 drivers/iio/accel/bma180.c                    | 92 +++----------------
 drivers/iio/accel/bmc150-accel-core.c         | 87 ++++++------------
 drivers/iio/accel/bmc150-accel-i2c.c          | 52 +++++------
 drivers/iio/accel/bmc150-accel-spi.c          | 31 ++++---
 drivers/iio/accel/bmc150-accel.h              | 10 --
 8 files changed, 95 insertions(+), 197 deletions(-)