[PATCH v2 0/4] iio: imu: inv_icm42600: add support for icm42630

Jorijn van der Graaf <[email protected]>
Newsgroups org.kernel.vger.linux-iio,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
The TDK InvenSense ICM-42630 is a 6-axis IMU of the ICM-42600 family,
used in the Fairphone 6. The existing inv_icm42600 driver drives it
unmodified.

v2 restructures the series per the v1 review: the binding documents the
new compatible with an invensense,icm42631 fallback, and the driver's
WHOAMI hard check becomes a warning so that a fallback-matched part can
probe at all (on older kernels via a backport of that one patch). The
id tables are sorted numerically in a precursor patch and the new
entries slot into numeric position.

Both resulting paths were tested on the Fairphone 6 with the fallback
pair in the devicetree, via backports to its 7.1-based kernel: matched
as icm42631 through the fallback (patch 2 alone, dedicated entries
removed), the part warns once, probes, and accelerometer, gyroscope
and temperature reads work; with the dedicated entries present it
binds as icm42630 without a warning. The fuller v1 test set (all
full-scale ranges, several sampling frequencies, watermark-paced FIFO
reads via INT1) ran with the dedicated compatible and is unchanged by
this revision.

Chris Morgan's icm42607 series [1] touches the same binding enum, so
whichever lands second has a trivial merge conflict. Its conditional
interrupts requirement covers the ICM-42630 automatically through the
fallback compatible.

Changes in v2:
- new patch 1: sort the device id tables numerically (Jonathan)
- new patch 2: warn on whoami mismatch instead of failing probe
  (Conor, Jonathan)
- patch 3 (v1 patch 1): compatible now documented with the icm42631
  fallback (Jonathan); commit message rewritten; dropped Jean-Baptiste's
  Acked-by because of the rework
- patch 4 (v1 patch 2): match entries placed in numeric position
  (Jonathan); kept Jean-Baptiste's Acked-by - the only code change is
  the entry placement; its commit message gains a sentence on the
  fallback and a more precise note on the tested backport

[1] https://lore.kernel.org/all/[email protected]/

v1: https://lore.kernel.org/all/[email protected]/

Jorijn van der Graaf (4):
  iio: imu: inv_icm42600: sort device id tables numerically
  iio: imu: inv_icm42600: warn on whoami mismatch instead of failing
    probe
  dt-bindings: iio: imu: icm42600: add icm42630
  iio: imu: inv_icm42600: add support for icm42630

 .../bindings/iio/imu/invensense,icm42600.yaml | 20 +++++++++++--------
 drivers/iio/imu/inv_icm42600/inv_icm42600.h   |  2 ++
 .../iio/imu/inv_icm42600/inv_icm42600_core.c  | 13 +++++++-----
 .../iio/imu/inv_icm42600/inv_icm42600_i2c.c   | 18 ++++++++++-------
 .../iio/imu/inv_icm42600/inv_icm42600_spi.c   | 18 ++++++++++-------
 5 files changed, 44 insertions(+), 27 deletions(-)


base-commit: 036d96ceec6d966339aea34d034420991e24cfac
-- 
2.55.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.