xref: /freebsd/sys/contrib/device-tree/Bindings/iio/imu/adi,adis16475.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
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
33*0e8011faSEmmanuel Vadot      - adi,adis16501
34c66ec88fSEmmanuel Vadot      - adi,adis16505-1
35c66ec88fSEmmanuel Vadot      - adi,adis16505-2
36c66ec88fSEmmanuel Vadot      - adi,adis16505-3
37c66ec88fSEmmanuel Vadot      - adi,adis16507-1
38c66ec88fSEmmanuel Vadot      - adi,adis16507-2
39c66ec88fSEmmanuel Vadot      - adi,adis16507-3
40*0e8011faSEmmanuel Vadot      - adi,adis16575-2
41*0e8011faSEmmanuel Vadot      - adi,adis16575-3
42*0e8011faSEmmanuel Vadot      - adi,adis16576-2
43*0e8011faSEmmanuel Vadot      - adi,adis16576-3
44*0e8011faSEmmanuel Vadot      - adi,adis16577-2
45*0e8011faSEmmanuel Vadot      - adi,adis16577-3
46c66ec88fSEmmanuel Vadot
47c66ec88fSEmmanuel Vadot  reg:
48c66ec88fSEmmanuel Vadot    maxItems: 1
49c66ec88fSEmmanuel Vadot
50c66ec88fSEmmanuel Vadot  spi-cpha: true
51c66ec88fSEmmanuel Vadot
52c66ec88fSEmmanuel Vadot  spi-cpol: true
53c66ec88fSEmmanuel Vadot
54c66ec88fSEmmanuel Vadot  spi-max-frequency:
55c66ec88fSEmmanuel Vadot    maximum: 2000000
56c66ec88fSEmmanuel Vadot
578d13bc63SEmmanuel Vadot  spi-cs-inactive-delay-ns:
588d13bc63SEmmanuel Vadot    minimum: 16000
598d13bc63SEmmanuel Vadot    default: 16000
608d13bc63SEmmanuel Vadot
61c66ec88fSEmmanuel Vadot  interrupts:
62c66ec88fSEmmanuel Vadot    maxItems: 1
63c66ec88fSEmmanuel Vadot
64c66ec88fSEmmanuel Vadot  clocks:
65c66ec88fSEmmanuel Vadot    maxItems: 1
66c66ec88fSEmmanuel Vadot
67c66ec88fSEmmanuel Vadot  reset-gpios:
68c66ec88fSEmmanuel Vadot    description:
69c66ec88fSEmmanuel Vadot      Must be the device tree identifier of the RESET pin. If specified,
70c66ec88fSEmmanuel Vadot      it will be asserted during driver probe. As the line is active low,
71c66ec88fSEmmanuel Vadot      it should be marked GPIO_ACTIVE_LOW.
72c66ec88fSEmmanuel Vadot    maxItems: 1
73c66ec88fSEmmanuel Vadot
74c66ec88fSEmmanuel Vadot  adi,sync-mode:
75c66ec88fSEmmanuel Vadot    description:
76c66ec88fSEmmanuel Vadot      Configures the device SYNC pin. The following modes are supported
77c66ec88fSEmmanuel Vadot      0 - output_sync
78c66ec88fSEmmanuel Vadot      1 - direct_sync
79c66ec88fSEmmanuel Vadot      2 - scaled_sync
80c66ec88fSEmmanuel Vadot      3 - pulse_sync
81c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
82c66ec88fSEmmanuel Vadot    minimum: 0
83c66ec88fSEmmanuel Vadot    maximum: 3
84c66ec88fSEmmanuel Vadot
85c66ec88fSEmmanuel Vadotrequired:
86c66ec88fSEmmanuel Vadot  - compatible
87c66ec88fSEmmanuel Vadot  - reg
88c66ec88fSEmmanuel Vadot  - interrupts
89c66ec88fSEmmanuel Vadot  - spi-cpha
90c66ec88fSEmmanuel Vadot  - spi-cpol
91c66ec88fSEmmanuel Vadot
92c66ec88fSEmmanuel VadotallOf:
938bab661aSEmmanuel Vadot  - $ref: /schemas/spi/spi-peripheral-props.yaml#
94c66ec88fSEmmanuel Vadot  - if:
95c66ec88fSEmmanuel Vadot      properties:
96c66ec88fSEmmanuel Vadot        compatible:
97c66ec88fSEmmanuel Vadot          contains:
98c66ec88fSEmmanuel Vadot            enum:
99c66ec88fSEmmanuel Vadot              - adi,adis16500
100*0e8011faSEmmanuel Vadot              - adi,adis16501
101c66ec88fSEmmanuel Vadot              - adi,adis16505-1
102c66ec88fSEmmanuel Vadot              - adi,adis16505-2
103c66ec88fSEmmanuel Vadot              - adi,adis16505-3
104c66ec88fSEmmanuel Vadot              - adi,adis16507-1
105c66ec88fSEmmanuel Vadot              - adi,adis16507-2
106c66ec88fSEmmanuel Vadot              - adi,adis16507-3
107*0e8011faSEmmanuel Vadot              - adi,adis16575-2
108*0e8011faSEmmanuel Vadot              - adi,adis16575-3
109*0e8011faSEmmanuel Vadot              - adi,adis16576-2
110*0e8011faSEmmanuel Vadot              - adi,adis16576-3
111*0e8011faSEmmanuel Vadot              - adi,adis16577-2
112*0e8011faSEmmanuel Vadot              - adi,adis16577-3
113c66ec88fSEmmanuel Vadot
114c66ec88fSEmmanuel Vadot    then:
115c66ec88fSEmmanuel Vadot      properties:
116c66ec88fSEmmanuel Vadot        adi,sync-mode:
117c66ec88fSEmmanuel Vadot          minimum: 0
118c66ec88fSEmmanuel Vadot          maximum: 2
119c66ec88fSEmmanuel Vadot
120c66ec88fSEmmanuel Vadot  - if:
121c66ec88fSEmmanuel Vadot      properties:
122c66ec88fSEmmanuel Vadot        adi,sync-mode:
123c66ec88fSEmmanuel Vadot          enum: [1, 2, 3]
124c66ec88fSEmmanuel Vadot
125c66ec88fSEmmanuel Vadot    then:
126c66ec88fSEmmanuel Vadot      dependencies:
127c66ec88fSEmmanuel Vadot        adi,sync-mode: [ clocks ]
128c66ec88fSEmmanuel Vadot
129*0e8011faSEmmanuel Vadot  - if:
130*0e8011faSEmmanuel Vadot      properties:
131*0e8011faSEmmanuel Vadot        compatible:
132*0e8011faSEmmanuel Vadot          contains:
133*0e8011faSEmmanuel Vadot            enum:
134*0e8011faSEmmanuel Vadot              - adi,adis16575-2
135*0e8011faSEmmanuel Vadot              - adi,adis16575-3
136*0e8011faSEmmanuel Vadot              - adi,adis16576-2
137*0e8011faSEmmanuel Vadot              - adi,adis16576-3
138*0e8011faSEmmanuel Vadot              - adi,adis16577-2
139*0e8011faSEmmanuel Vadot              - adi,adis16577-3
140*0e8011faSEmmanuel Vadot
141*0e8011faSEmmanuel Vadot    then:
142*0e8011faSEmmanuel Vadot      properties:
143*0e8011faSEmmanuel Vadot        spi-max-frequency:
144*0e8011faSEmmanuel Vadot          maximum: 15000000
145*0e8011faSEmmanuel Vadot
1468bab661aSEmmanuel VadotunevaluatedProperties: false
1476be33864SEmmanuel Vadot
148c66ec88fSEmmanuel Vadotexamples:
149c66ec88fSEmmanuel Vadot  - |
150c66ec88fSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
151c66ec88fSEmmanuel Vadot    spi {
152c66ec88fSEmmanuel Vadot        #address-cells = <1>;
153c66ec88fSEmmanuel Vadot        #size-cells = <0>;
154c66ec88fSEmmanuel Vadot
155c66ec88fSEmmanuel Vadot        adis16475: adis16475-3@0 {
156c66ec88fSEmmanuel Vadot            compatible = "adi,adis16475-3";
157c66ec88fSEmmanuel Vadot            reg = <0>;
158c66ec88fSEmmanuel Vadot            spi-cpha;
159c66ec88fSEmmanuel Vadot            spi-cpol;
160c66ec88fSEmmanuel Vadot            spi-max-frequency = <2000000>;
161c66ec88fSEmmanuel Vadot            interrupts = <4 IRQ_TYPE_EDGE_RISING>;
162c66ec88fSEmmanuel Vadot            interrupt-parent = <&gpio>;
163c66ec88fSEmmanuel Vadot        };
164c66ec88fSEmmanuel Vadot    };
165c66ec88fSEmmanuel Vadot...
166