[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