[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
<FR2PPF4571F02BC8869EB8C645AB10050568C30A@FR2PPF4571F02BC.DEUP281.PROD.OUTLOOK.COM>
Date: Tue, 19 Aug 2025 12:54:11 +0000
From: Remi Buisson <Remi.Buisson@....com>
To: Jonathan Cameron <jic23@...nel.org>,
Remi Buisson via B4 Relay
<devnull+remi.buisson.tdk.com@...nel.org>
CC: David Lechner <dlechner@...libre.com>,
Nuno Sá
<nuno.sa@...log.com>,
Andy Shevchenko <andy@...nel.org>, Rob Herring
<robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley
<conor+dt@...nel.org>,
"linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>,
"linux-iio@...r.kernel.org"
<linux-iio@...r.kernel.org>,
"devicetree@...r.kernel.org"
<devicetree@...r.kernel.org>
Subject: RE: [PATCH v4 1/9] dt-bindings: iio: imu: Add inv_icm45600
>
>
>From: Jonathan Cameron <jic23@...nel.org>
>Sent: Saturday, August 16, 2025 1:25 PM
>To: Remi Buisson via B4 Relay <devnull+remi.buisson.tdk.com@...nel.org>
>Cc: Remi Buisson <Remi.Buisson@....com>; David Lechner <dlechner@...libre.com>; Nuno Sá <nuno.sa@...log.com>; Andy Shevchenko <andy@...nel.org>; Rob Herring <robh@...nel.org>; Krzysztof Kozlowski <krzk+dt@...nel.org>; Conor Dooley <conor+dt@...nel.org>; linux-kernel@...r.kernel.org; linux-iio@...r.kernel.org; devicetree@...r.kernel.org
>Subject: Re: [PATCH v4 1/9] dt-bindings: iio: imu: Add inv_icm45600
>On Thu, 14 Aug 2025 08:57:15 +0000
>Remi Buisson via B4 Relay <devnull+remi.buisson.tdk.com@...nel.org> wrote:
>
>> From: Remi Buisson <remi.buisson@....com>
>>
>> Document the ICM-45600 devices devicetree bindings.
>>
>> Signed-off-by: Remi Buisson <remi.buisson@....com>
>> ---
>> .../bindings/iio/imu/invensense,icm45600.yaml | 97 ++++++++++++++++++++++
>> 1 file changed, 97 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/iio/imu/invensense,icm45600.yaml b/Documentation/devicetree/bindings/iio/imu/invensense,icm45600.yaml
>> new file mode 100644
>> index 0000000000000000000000000000000000000000..f43258124c32ebf850fc29b2e97643885e6f8480
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/iio/imu/invensense,icm45600.yaml
>> @@ -0,0 +1,97 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: https://urldefense.com/v3/__http://devicetree.org/schemas/iio/imu/invensense,icm45600.yaml*__;Iw!!FtrhtPsWDhZ6tw!CjcUnqzJgifnVuhXgtDXTefElSZCa2i4QRZ2qOVws9WEdDs5DUFvIDPEKlohjH9eyq2OH1xAOyREgA$[devicetree[.]org]
>> +$schema: https://urldefense.com/v3/__http://devicetree.org/meta-schemas/core.yaml*__;Iw!!FtrhtPsWDhZ6tw!CjcUnqzJgifnVuhXgtDXTefElSZCa2i4QRZ2qOVws9WEdDs5DUFvIDPEKlohjH9eyq2OH1x5wXoBfQ$[devicetree[.]org]
>> +
>> +title: InvenSense ICM-45600 Inertial Measurement Unit
>> +
>> +maintainers:
>> + - Remi Buisson <remi.buisson@....com>
>> +
>> +description: |
>> + 6-axis MotionTracking device that combines a 3-axis gyroscope and a 3-axis
>> + accelerometer.
>> +
>> + It has a configurable host interface that supports I3C, I2C and SPI serial
>> + communication, features up to 8kB 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
>> + Processing engine for gesture recognition, activity classification, and
>> + pedometer, along with programmable digital filters, and an embedded
>> + temperature sensor.
>> +
>> + https://invensense.tdk.com/wp-content/uploads/documentation/DS-000576_ICM-45605.pdf
>> +
>> +properties:
>> + compatible:
>> + enum:
>> + - invensense,icm45605
>> + - invensense,icm45606
>> + - invensense,icm45608
>> + - invensense,icm45634
>> + - invensense,icm45686
>> + - invensense,icm45687
>> + - invensense,icm45688p
>> + - invensense,icm45689
>> +
>> + reg:
>> + maxItems: 1
>> +
>> + interrupts:
>> + minItems: 1
>> + maxItems: 2
>> +
>> + interrupt-names:
>> + minItems: 1
>> + maxItems: 2
>> + items:
>> + enum:
>> + - INT1
>> + - INT2
>> + description: Choose chip interrupt pin to be used as interrupt input.
>
>See v1 review on this from Krzysztof that you seem to have missed.
Yes sure.
>
>> +
>> + drive-open-drain:
>> + type: boolean
>> +
>> + vdd-supply:
>
>Description doesn't add much so simply
> vdd-supply: true
>
>Might be enough.
Ok.
>
>> + description: Regulator that provides power to the sensor
>> +
>> + vddio-supply:
>> + description: Regulator that provides power to the bus
>Also very standard description so probably doesn't add anything.
Ok.
>
>> +
>> + mount-matrix:
>> + description: an optional 3x3 mounting rotation matrix
>
>Could do
> mount-matrix: true
Ok.
>
>> +
>> +required:
>> + - compatible
>> + - reg
>> + - interrupts
>Needed for any functionality to be available?
>Note that this isn't a question of what driver currently requires, but
>more what someone could implement if they happen not to have wired interrupts.
>
>That happens annoyingly often!
>
>Jonathan
I'll remove it from required, then.
And next one as well.
>> + - interrupt-names
>> + - vdd-supply
>> + - vddio-supply
>> +
>> +unevaluatedProperties: false
>> +
>> +examples:
>> + - |
>> + #include <dt-bindings/gpio/gpio.h>
>> + #include <dt-bindings/interrupt-controller/irq.h>
>> + i2c {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + imu@68 {
>> + compatible = "invensense,icm45605";
>> + reg = <0x68>;
>> + interrupt-parent = <&gpio2>;
>> + interrupt-names = "INT1";
>> + interrupts = <7 IRQ_TYPE_EDGE_RISING>;
>> + vdd-supply = <&vdd>;
>> + vddio-supply = <&vddio>;
>> + mount-matrix = "0", "-1", "0",
>> + "1", "0", "0",
>> + "0", "0", "1";
>> + };
>> + };
>>
>
>
Powered by blists - more mailing lists