[PATCH v4 0/3] iio: imu: inv_icm42600: add support for icm42630

Jorijn van der Graaf posted 3 patches 1 month, 2 weeks ago
There is a newer version of this series
.../bindings/iio/imu/invensense,icm42600.yaml | 24 +++++++++++--------
.../iio/imu/inv_icm42600/inv_icm42600_core.c  | 16 ++++++++++---
.../iio/imu/inv_icm42600/inv_icm42600_i2c.c   | 16 ++++++-------
.../iio/imu/inv_icm42600/inv_icm42600_spi.c   | 16 ++++++-------
4 files changed, 43 insertions(+), 29 deletions(-)
[PATCH v4 0/3] iio: imu: inv_icm42600: add support for icm42630
Posted by Jorijn van der Graaf 1 month, 2 weeks ago
The TDK InvenSense ICM-42630 is a 6-axis IMU of the ICM-42600 family,
used in the Fairphone 6. It needs no part-specific driver code: TDK
confirmed it can be supported by inv_icm42600 without modification.

The binding documents the new compatible with an invensense,icm42631
fallback, and a WHOAMI mismatch no longer fails probe, so that a
fallback-matched part can probe; one informational line records the
mismatch, and a whoami of 0x00/0xff (no response) still fails. No
driver id entries are added: the part binds through the fallback.

Tested on the Fairphone 6 with the fallback pair in the devicetree,
via a backport to its 7.1-based kernel: matched as icm42631 through
the fallback, the part probes with the one informational line, and
accelerometer, gyroscope and temperature reads work.

Changes in v4:
- patch 2 (retitled): keep the WHOAMI read and log the mismatch at
  info level, following the wording Jonathan proposed, instead of
  deleting the check and the whoami definitions (Jonathan, Conor)
- patch 2: add a no-response guard, whoami 0x00/0xff still fails
  probe, matching inv_icm45600; both prints use %#04x so the two ids
  render at equal width
- patch 3: rebased over the icm42607 and mount-matrix binding changes;
  the conditional interrupts requirement added with the icm42607
  covers the ICM-42630 through its icm42631 fallback. Added Conor's
  Acked-by
- rebased onto current iio/togreg

v3: https://lore.kernel.org/all/20260728184351.75015-1-jorijnvdgraaf@catcrafts.net/
v2: https://lore.kernel.org/all/20260724202708.128267-1-jorijnvdgraaf@catcrafts.net/
v1: https://lore.kernel.org/all/20260720173411.82979-1-jorijnvdgraaf@catcrafts.net/

Jorijn van der Graaf (3):
  iio: imu: inv_icm42600: sort device id tables numerically
  iio: imu: inv_icm42600: log whoami mismatch instead of failing probe
  dt-bindings: iio: imu: icm42600: add icm42630

 .../bindings/iio/imu/invensense,icm42600.yaml | 24 +++++++++++--------
 .../iio/imu/inv_icm42600/inv_icm42600_core.c  | 16 ++++++++++---
 .../iio/imu/inv_icm42600/inv_icm42600_i2c.c   | 16 ++++++-------
 .../iio/imu/inv_icm42600/inv_icm42600_spi.c   | 16 ++++++-------
 4 files changed, 43 insertions(+), 29 deletions(-)


base-commit: 350d1fb9204b13c5f95e511e98b8bcb47574d425
-- 
2.55.0