Re: [PATCH 3/5] dt-bindings: iio: Add adis16550 bindings

From: Jonathan Cameron
Date: Mon Oct 28 2024 - 13:12:06 EST


On Mon, 28 Oct 2024 14:35:43 +0200
Robert Budai <robert.budai@xxxxxxxxxx> wrote:

> From: Ramona Gradinariu <ramona.gradinariu@xxxxxxxxxx>
>
> Document the ADIS16550 device devicetree bindings.
What is the difference between the 16550 and 16550w.
Need to give an indication here of why the need separate compatibles.

> Co-developed-by: Antoniu Miclaus <antoniu.miclaus@xxxxxxxxxx>
> Signed-off-by: Antoniu Miclaus <antoniu.miclaus@xxxxxxxxxx>
> Signed-off-by: Ramona Gradinariu <ramona.gradinariu@xxxxxxxxxx>
> ---
> .../bindings/iio/imu/adi,adis16550.yaml | 95 +++++++++++++++++++
> MAINTAINERS | 9 ++
> 2 files changed, 104 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml
>
> diff --git a/Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml b/Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml
> new file mode 100644
> index 000000000000..a4690b39f0bd
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml
> @@ -0,0 +1,95 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/imu/adi,adis16550.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Analog Devices ADIS16550 and similar IMUs
> +
> +maintainers:
> + - Nuno Sa <nuno.sa@xxxxxxxxxx>
> + - Ramona Gradinariu <ramona.gradinariu@xxxxxxxxxx>
> + - Antoniu Miclaus <antoniu.miclaus@xxxxxxxxxx>
> +
> +properties:
> + compatible:
> + enum:
> + - adi,adis16550
> + - adi,adis16550w
> +
> + reg:
> + maxItems: 1
> +
> + spi-cpha: true
> +
> + spi-cpol: true
> +
> + spi-max-frequency:
> + maximum: 15000000
> +
> + vdd-supply: true
> +
> + interrupts:
> + maxItems: 1
> +
> + reset-gpios:
> + description:
> + Must be the device tree identifier of the RESET pin. If specified,
> + it will be asserted during driver probe. As the line is active low,
> + it should be marked GPIO_ACTIVE_LOW.
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> + description: If not provided, then the internal clock is used.
> +
> + adi,sync-mode:
> + $ref: /schemas/types.yaml#/definitions/string
> + description: |
> + Configures the device SYNC pin.
> + enum:
> + - direct_sync
> + - scaled_sync
More detail needed on this. I'm not sure why it belongs in DT and
can't be controlled based on clock input and requested sampling
frequency.

> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - spi-cpha
> + - spi-cpol
> + - spi-max-frequency
> + - vdd-supply
> +
> +allOf:
> + - if:
> + properties:
> + adi,sync-mode:
> + enum: [direct_sync, scaled_sync]
> +
> + then:
> + dependencies:
> + adi,sync-mode: [ clocks ]
> +
> + - $ref: /schemas/spi/spi-peripheral-props.yaml#
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/irq.h>
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + imu@0 {
> + compatible = "adi,adis16550";
> + reg = <0>;
> + spi-max-frequency = <15000000>;
> + spi-cpol;
> + spi-cpha;
> + vdd-supply = <&vdd>;
> + interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
> + interrupt-parent = <&gpio>;
> + };
> + };
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index a27407950242..4f45478d271a 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -1411,6 +1411,15 @@ W: https://ez.analog.com/linux-software-drivers
> F: Documentation/devicetree/bindings/iio/imu/adi,adis16475.yaml
> F: drivers/iio/imu/adis16475.c
>
> +ANALOG DEVICES INC ADIS16550 DRIVER
> +M: Nuno Sa <nuno.sa@xxxxxxxxxx>
> +M: Ramona Gradinariu <ramona.gradinariu@xxxxxxxxxx>
> +M: Antoniu Miclaus <antoniu.miclaus@xxxxxxxxxx>
> +L: linux-iio@xxxxxxxxxxxxxxx
> +S: Supported
> +W: https://ez.analog.com/linux-software-drivers
> +F: Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml
> +
> ANALOG DEVICES INC ADM1177 DRIVER
> M: Michael Hennerich <Michael.Hennerich@xxxxxxxxxx>
> L: linux-hwmon@xxxxxxxxxxxxxxx