xref: /freebsd/sys/contrib/device-tree/Bindings/iio/imu/adi,adis16475.yaml (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/iio/imu/adi,adis16475.yaml#
5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
7c66ec88fSEmmanuel Vadottitle: Analog Devices ADIS16475 and similar IMUs
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotmaintainers:
10c66ec88fSEmmanuel Vadot  - Nuno Sá <nuno.sa@analog.com>
11c66ec88fSEmmanuel Vadot
12c66ec88fSEmmanuel Vadotdescription: |
13c66ec88fSEmmanuel Vadot  Analog Devices ADIS16475 and similar IMUs
14c66ec88fSEmmanuel Vadot  https://www.analog.com/media/en/technical-documentation/data-sheets/ADIS16475.pdf
15c66ec88fSEmmanuel Vadot
16c66ec88fSEmmanuel Vadotproperties:
17c66ec88fSEmmanuel Vadot  compatible:
18c66ec88fSEmmanuel Vadot    enum:
19c66ec88fSEmmanuel Vadot      - adi,adis16475-1
20c66ec88fSEmmanuel Vadot      - adi,adis16475-2
21c66ec88fSEmmanuel Vadot      - adi,adis16475-3
22c66ec88fSEmmanuel Vadot      - adi,adis16477-1
23c66ec88fSEmmanuel Vadot      - adi,adis16477-2
24c66ec88fSEmmanuel Vadot      - adi,adis16477-3
25c66ec88fSEmmanuel Vadot      - adi,adis16470
26c66ec88fSEmmanuel Vadot      - adi,adis16465-1
27c66ec88fSEmmanuel Vadot      - adi,adis16465-2
28c66ec88fSEmmanuel Vadot      - adi,adis16465-3
29c66ec88fSEmmanuel Vadot      - adi,adis16467-1
30c66ec88fSEmmanuel Vadot      - adi,adis16467-2
31c66ec88fSEmmanuel Vadot      - adi,adis16467-3
32c66ec88fSEmmanuel Vadot      - adi,adis16500
33c66ec88fSEmmanuel Vadot      - adi,adis16505-1
34c66ec88fSEmmanuel Vadot      - adi,adis16505-2
35c66ec88fSEmmanuel Vadot      - adi,adis16505-3
36c66ec88fSEmmanuel Vadot      - adi,adis16507-1
37c66ec88fSEmmanuel Vadot      - adi,adis16507-2
38c66ec88fSEmmanuel Vadot      - adi,adis16507-3
39c66ec88fSEmmanuel Vadot
40c66ec88fSEmmanuel Vadot  reg:
41c66ec88fSEmmanuel Vadot    maxItems: 1
42c66ec88fSEmmanuel Vadot
43c66ec88fSEmmanuel Vadot  spi-cpha: true
44c66ec88fSEmmanuel Vadot
45c66ec88fSEmmanuel Vadot  spi-cpol: true
46c66ec88fSEmmanuel Vadot
47c66ec88fSEmmanuel Vadot  spi-max-frequency:
48c66ec88fSEmmanuel Vadot    maximum: 2000000
49c66ec88fSEmmanuel Vadot
50*8d13bc63SEmmanuel Vadot  spi-cs-inactive-delay-ns:
51*8d13bc63SEmmanuel Vadot    minimum: 16000
52*8d13bc63SEmmanuel Vadot    default: 16000
53*8d13bc63SEmmanuel Vadot
54c66ec88fSEmmanuel Vadot  interrupts:
55c66ec88fSEmmanuel Vadot    maxItems: 1
56c66ec88fSEmmanuel Vadot
57c66ec88fSEmmanuel Vadot  clocks:
58c66ec88fSEmmanuel Vadot    maxItems: 1
59c66ec88fSEmmanuel Vadot
60c66ec88fSEmmanuel Vadot  reset-gpios:
61c66ec88fSEmmanuel Vadot    description:
62c66ec88fSEmmanuel Vadot      Must be the device tree identifier of the RESET pin. If specified,
63c66ec88fSEmmanuel Vadot      it will be asserted during driver probe. As the line is active low,
64c66ec88fSEmmanuel Vadot      it should be marked GPIO_ACTIVE_LOW.
65c66ec88fSEmmanuel Vadot    maxItems: 1
66c66ec88fSEmmanuel Vadot
67c66ec88fSEmmanuel Vadot  adi,sync-mode:
68c66ec88fSEmmanuel Vadot    description:
69c66ec88fSEmmanuel Vadot      Configures the device SYNC pin. The following modes are supported
70c66ec88fSEmmanuel Vadot      0 - output_sync
71c66ec88fSEmmanuel Vadot      1 - direct_sync
72c66ec88fSEmmanuel Vadot      2 - scaled_sync
73c66ec88fSEmmanuel Vadot      3 - pulse_sync
74c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
75c66ec88fSEmmanuel Vadot    minimum: 0
76c66ec88fSEmmanuel Vadot    maximum: 3
77c66ec88fSEmmanuel Vadot
78c66ec88fSEmmanuel Vadotrequired:
79c66ec88fSEmmanuel Vadot  - compatible
80c66ec88fSEmmanuel Vadot  - reg
81c66ec88fSEmmanuel Vadot  - interrupts
82c66ec88fSEmmanuel Vadot  - spi-cpha
83c66ec88fSEmmanuel Vadot  - spi-cpol
84c66ec88fSEmmanuel Vadot
85c66ec88fSEmmanuel VadotallOf:
868bab661aSEmmanuel Vadot  - $ref: /schemas/spi/spi-peripheral-props.yaml#
87c66ec88fSEmmanuel Vadot  - if:
88c66ec88fSEmmanuel Vadot      properties:
89c66ec88fSEmmanuel Vadot        compatible:
90c66ec88fSEmmanuel Vadot          contains:
91c66ec88fSEmmanuel Vadot            enum:
92c66ec88fSEmmanuel Vadot              - adi,adis16500
93c66ec88fSEmmanuel Vadot              - adi,adis16505-1
94c66ec88fSEmmanuel Vadot              - adi,adis16505-2
95c66ec88fSEmmanuel Vadot              - adi,adis16505-3
96c66ec88fSEmmanuel Vadot              - adi,adis16507-1
97c66ec88fSEmmanuel Vadot              - adi,adis16507-2
98c66ec88fSEmmanuel Vadot              - adi,adis16507-3
99c66ec88fSEmmanuel Vadot
100c66ec88fSEmmanuel Vadot    then:
101c66ec88fSEmmanuel Vadot      properties:
102c66ec88fSEmmanuel Vadot        adi,sync-mode:
103c66ec88fSEmmanuel Vadot          minimum: 0
104c66ec88fSEmmanuel Vadot          maximum: 2
105c66ec88fSEmmanuel Vadot
106c66ec88fSEmmanuel Vadot  - if:
107c66ec88fSEmmanuel Vadot      properties:
108c66ec88fSEmmanuel Vadot        adi,sync-mode:
109c66ec88fSEmmanuel Vadot          enum: [1, 2, 3]
110c66ec88fSEmmanuel Vadot
111c66ec88fSEmmanuel Vadot    then:
112c66ec88fSEmmanuel Vadot      dependencies:
113c66ec88fSEmmanuel Vadot        adi,sync-mode: [ clocks ]
114c66ec88fSEmmanuel Vadot
1158bab661aSEmmanuel VadotunevaluatedProperties: false
1166be33864SEmmanuel Vadot
117c66ec88fSEmmanuel Vadotexamples:
118c66ec88fSEmmanuel Vadot  - |
119c66ec88fSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
120c66ec88fSEmmanuel Vadot    spi {
121c66ec88fSEmmanuel Vadot        #address-cells = <1>;
122c66ec88fSEmmanuel Vadot        #size-cells = <0>;
123c66ec88fSEmmanuel Vadot
124c66ec88fSEmmanuel Vadot        adis16475: adis16475-3@0 {
125c66ec88fSEmmanuel Vadot            compatible = "adi,adis16475-3";
126c66ec88fSEmmanuel Vadot            reg = <0>;
127c66ec88fSEmmanuel Vadot            spi-cpha;
128c66ec88fSEmmanuel Vadot            spi-cpol;
129c66ec88fSEmmanuel Vadot            spi-max-frequency = <2000000>;
130c66ec88fSEmmanuel Vadot            interrupts = <4 IRQ_TYPE_EDGE_RISING>;
131c66ec88fSEmmanuel Vadot            interrupt-parent = <&gpio>;
132c66ec88fSEmmanuel Vadot        };
133c66ec88fSEmmanuel Vadot    };
134c66ec88fSEmmanuel Vadot...
135