On Thu, Oct 01, 2026 at 12:11:49PM +0300, Radu Sabau via B4 Relay wrote: > From: Radu Sabau > > Add device tree bindings for the Analog Devices ADIS16607 Precision > MEMS Inertial Measurement Unit. The ADIS16607 integrates a triaxial > gyroscope, triaxial accelerometer, and temperature sensor, and > communicates over SPI Half-Duplex. > > Three compatible variants are supported: adis16607-1, adis16607-2, ^^^^^^^^^^^^^^^^^^^ > and adis16607-3. > > The binding exposes optional properties for: > - An external clock for sync mode (falling back to the internal 8 kHz > clock when absent) > - A hardware reset GPIO (active low) > - FIFO mode for buffered data acquisition with a configurable watermark > > Signed-off-by: Radu Sabau > --- > .../devicetree/bindings/iio/imu/adi,adis16607.yaml | 91 ++++++++++++++++++++++ > MAINTAINERS | 7 ++ > 2 files changed, 98 insertions(+) > > diff --git a/Documentation/devicetree/bindings/iio/imu/adi,adis16607.yaml b/Documentation/devicetree/bindings/iio/imu/adi,adis16607.yaml > new file mode 100644 > index 000000000000..5fb1ba36e0b7 > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/imu/adi,adis16607.yaml > @@ -0,0 +1,91 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/imu/adi,adis16607.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog Devices ADIS16607 IMU > + > +maintainers: > + - Radu Sabau > + > +description: | > + Analog Devices ADIS16607 Precision MEMS Inertial Measurement Unit (IMU) > + with a triaxial gyroscope, triaxial accelerometer, and temperature sensor. > + Uses SPI Half-Duplex communication protocol. > + > +properties: > + compatible: > + enum: > + - adi,adis16607-2 > + - adi,adis16607-3 Yet they are not compatible. Why? pw-bot: changes-requested > + > + reg: > + maxItems: 1 > + > + spi-cpha: true > + > + spi-cpol: true > + > + spi-max-frequency: > + maximum: 15000000 > + > + vdd-supply: true > + > + interrupts: > + maxItems: 1 > + > + clocks: > + description: > + Optional external clock for sync mode. If not provided, the internal > + 8 kHz clock is used. > + maxItems: 1 > + > + reset-gpios: > + description: > + Optional GPIO for hardware reset. If specified, it will be asserted > + during driver probe. The line is active low. > + maxItems: 1 > + > + adi,fifo-enable: > + type: boolean > + description: > + Enable hardware FIFO mode for buffered data acquisition. When enabled, > + the driver uses the device FIFO with configurable watermark threshold > + instead of single-sample burst reads. What aspect of the usecase does setting this depend on? Why not just always enable this? Cheers, Conor. > + > +required: > + - compatible > + - reg > + - interrupts > + - spi-cpha > + - spi-cpol > + - vdd-supply > + > +allOf: > + - $ref: /schemas/spi/spi-peripheral-props.yaml# > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include > + #include > + spi { > + #address-cells = <1>; > + #size-cells = <0>; > + > + imu@0 { > + compatible = "adi,adis16607-2"; > + reg = <0>; > + spi-cpha; > + spi-cpol; > + spi-max-frequency = <15000000>; > + vdd-supply = <&vdd>; > + interrupts = <4 IRQ_TYPE_EDGE_RISING>; > + interrupt-parent = <&gpio>; > + clocks = <&sync_clk>; > + reset-gpios = <&gpio 10 GPIO_ACTIVE_LOW>; > + adi,fifo-enable; > + }; > + }; > diff --git a/MAINTAINERS b/MAINTAINERS > index a7fd31320b38..f6ad73be5260 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -1717,6 +1717,13 @@ S: Supported > W: https://ez.analog.com/linux-software-drivers > F: Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml > > +ANALOG DEVICES INC ADIS16607 DRIVER > +M: Radu Sabau > +L: linux-iio@vger.kernel.org > +S: Supported > +W: https://ez.analog.com/linux-software-drivers > +F: Documentation/devicetree/bindings/iio/imu/adi,adis16607.yaml > + > ANALOG DEVICES INC ADL8113 DRIVER > M: Antoniu Miclaus > L: linux-iio@vger.kernel.org > > -- > 2.43.0 > >