mbox series

[v3,00/10] iio: accel: bmc150: Add support for BMA253/BMA254

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

Message

Stephan Gerhold June 11, 2021, 8:08 a.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 v3:
  - Add new "iio: accel: bmc150: Clarify combo modules in Kconfig" patch
  - Sort "one-line" chip name lists as well, not just multi-line ones

v2: https://lore.kernel.org/linux-iio/20210610122126.50504-1-stephan@gerhold.net/
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 (10):
  iio: accel: bmc150: Fix bma222 scale unit
  iio: accel: bmc150: Clarify combo modules in Kconfig
  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                     | 11 ++-
 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, 98 insertions(+), 197 deletions(-)

Comments

Jonathan Cameron June 11, 2021, 5:35 p.m. UTC | #1
On Fri, 11 Jun 2021 10:08:53 +0200
Stephan Gerhold <stephan@gerhold.net> wrote:

> 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.
After cheating a bit and pulling the dependency across from my fixes-togreg
branch (along with the other patches that were there), I can now apply this.

So applied to the fixes-togreg branch of iio.git and pushed out as testing
for 0-day to have a quick poke at it before I let this going into linux-next.

Thanks,

Jonathan

> 
> ---
> Changes in v3:
>   - Add new "iio: accel: bmc150: Clarify combo modules in Kconfig" patch
>   - Sort "one-line" chip name lists as well, not just multi-line ones
> 
> v2: https://lore.kernel.org/linux-iio/20210610122126.50504-1-stephan@gerhold.net/
> 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 (10):
>   iio: accel: bmc150: Fix bma222 scale unit
>   iio: accel: bmc150: Clarify combo modules in Kconfig
>   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                     | 11 ++-
>  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, 98 insertions(+), 197 deletions(-)
>