Re: [PATCH v6 1/6] dt-bindings: iio: imu: icm42600: Add ICM-42670-P

From: Marcelo Schmitt

Date: Mon Oct 12 2026 - 18:04:05 EST


Hi Krzysztof,

On 10/12, Krzysztof Kozlowski wrote:
> On 12/10/2026 12:43, Kanak Shilledar wrote:
> > Hi Krzystztof,
> >
> > On Mon, 2026-10-12 at 10:58 +0200, Krzysztof Kozlowski wrote:
> >> On Fri, Oct 09, 2026 at 04:12:06PM +0200, Kanak Shilledar wrote:
> >>>    It has a configurable host interface that supports I3C, I2C and
> >>> SPI serial
> >>> -  communication, features a 2kB FIFO and 2 programmable interrupts
> >>> with
> >>> +  communication, features up to 2.25kB FIFO and 2 programmable
> >>> interrupts with
> >>>    ultra-low-power wake-on-motion support to minimize system power
> >>> consumption.
> >>>  
> >>>    Other industry-leading features include InvenSense on-chip APEX
> >>> Motion
> >>> @@ -28,6 +29,7 @@ properties:
> >>>    compatible:
> >>>      oneOf:
> >>>        - enum:
> >>> +          - invensense,icm42370p
> >>>            - invensense,icm42600
> >>>            - invensense,icm42602
> >>>            - invensense,icm42605
> >>
> >> Why aren't the interrupts required?
> >
> > The interrupts are only required if using the device is used in
> > buffered mode. Which will be added later and the dt-binding will be
> > updated when the buffer support is added. Currently, the device works
> > without any interrupts.
> >
>
> That's misleading or confusing. Either the device works or does not
> without interrupt hooked up. Consult hardware datasheet if in doubts.
>
> Driver support is different thing here and you cannot make it required
> later, because that would be unjustified ABI break.

I looked into icm42605 data sheet and saw no clear statement about the interrupts
being required. The timing diagrams only show protocol specific lines and it
looks like the interrupt sources can even be disabled (not routed out to any
interrupt pin). Maybe I'm missing something and the interrupts are required for
some sort of reset function or so? Otherwise, I don't see how the interrupts are
required.

Kanak, do you have access to any of those other chips to test whether they work
without interrupts? If possible, can you also check the data sheets for the other
parts besides icm42370p and icm42605?

Maybe
- if:
properties:
compatible:
contains:
enum:
- invensense,icm42600
- invensense,icm42602
- invensense,icm42605
- invensense,icm42622
- invensense,icm42631
- invensense,icm42686
- invensense,icm42688
then:
required:
- interrupts
was a documentation mistake?

With best regards,
Marcelo