xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/iio/imu/adi,adis16475.yaml (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*4882a593Smuzhiyun%YAML 1.2
3*4882a593Smuzhiyun---
4*4882a593Smuzhiyun$id: http://devicetree.org/schemas/iio/imu/adi,adis16475.yaml#
5*4882a593Smuzhiyun$schema: http://devicetree.org/meta-schemas/core.yaml#
6*4882a593Smuzhiyun
7*4882a593Smuzhiyuntitle: Analog Devices ADIS16475 and similar IMUs
8*4882a593Smuzhiyun
9*4882a593Smuzhiyunmaintainers:
10*4882a593Smuzhiyun  - Nuno Sá <nuno.sa@analog.com>
11*4882a593Smuzhiyun
12*4882a593Smuzhiyundescription: |
13*4882a593Smuzhiyun  Analog Devices ADIS16475 and similar IMUs
14*4882a593Smuzhiyun  https://www.analog.com/media/en/technical-documentation/data-sheets/ADIS16475.pdf
15*4882a593Smuzhiyun
16*4882a593Smuzhiyunproperties:
17*4882a593Smuzhiyun  compatible:
18*4882a593Smuzhiyun    enum:
19*4882a593Smuzhiyun      - adi,adis16475-1
20*4882a593Smuzhiyun      - adi,adis16475-2
21*4882a593Smuzhiyun      - adi,adis16475-3
22*4882a593Smuzhiyun      - adi,adis16477-1
23*4882a593Smuzhiyun      - adi,adis16477-2
24*4882a593Smuzhiyun      - adi,adis16477-3
25*4882a593Smuzhiyun      - adi,adis16470
26*4882a593Smuzhiyun      - adi,adis16465-1
27*4882a593Smuzhiyun      - adi,adis16465-2
28*4882a593Smuzhiyun      - adi,adis16465-3
29*4882a593Smuzhiyun      - adi,adis16467-1
30*4882a593Smuzhiyun      - adi,adis16467-2
31*4882a593Smuzhiyun      - adi,adis16467-3
32*4882a593Smuzhiyun      - adi,adis16500
33*4882a593Smuzhiyun      - adi,adis16505-1
34*4882a593Smuzhiyun      - adi,adis16505-2
35*4882a593Smuzhiyun      - adi,adis16505-3
36*4882a593Smuzhiyun      - adi,adis16507-1
37*4882a593Smuzhiyun      - adi,adis16507-2
38*4882a593Smuzhiyun      - adi,adis16507-3
39*4882a593Smuzhiyun
40*4882a593Smuzhiyun  reg:
41*4882a593Smuzhiyun    maxItems: 1
42*4882a593Smuzhiyun
43*4882a593Smuzhiyun  spi-cpha: true
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun  spi-cpol: true
46*4882a593Smuzhiyun
47*4882a593Smuzhiyun  spi-max-frequency:
48*4882a593Smuzhiyun    maximum: 2000000
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun  interrupts:
51*4882a593Smuzhiyun    maxItems: 1
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun  clocks:
54*4882a593Smuzhiyun    maxItems: 1
55*4882a593Smuzhiyun
56*4882a593Smuzhiyun  reset-gpios:
57*4882a593Smuzhiyun    description:
58*4882a593Smuzhiyun      Must be the device tree identifier of the RESET pin. If specified,
59*4882a593Smuzhiyun      it will be asserted during driver probe. As the line is active low,
60*4882a593Smuzhiyun      it should be marked GPIO_ACTIVE_LOW.
61*4882a593Smuzhiyun    maxItems: 1
62*4882a593Smuzhiyun
63*4882a593Smuzhiyun  adi,sync-mode:
64*4882a593Smuzhiyun    description:
65*4882a593Smuzhiyun      Configures the device SYNC pin. The following modes are supported
66*4882a593Smuzhiyun      0 - output_sync
67*4882a593Smuzhiyun      1 - direct_sync
68*4882a593Smuzhiyun      2 - scaled_sync
69*4882a593Smuzhiyun      3 - pulse_sync
70*4882a593Smuzhiyun    $ref: /schemas/types.yaml#/definitions/uint32
71*4882a593Smuzhiyun    minimum: 0
72*4882a593Smuzhiyun    maximum: 3
73*4882a593Smuzhiyun
74*4882a593Smuzhiyun  adi,scaled-output-hz:
75*4882a593Smuzhiyun    description:
76*4882a593Smuzhiyun      This property must be present if the clock mode is scaled-sync through
77*4882a593Smuzhiyun      clock-names property. In this mode, the input clock can have a range
78*4882a593Smuzhiyun      of 1Hz to 128HZ which must be scaled to originate an allowable sample
79*4882a593Smuzhiyun      rate. This property specifies that rate.
80*4882a593Smuzhiyun    minimum: 1900
81*4882a593Smuzhiyun    maximum: 2100
82*4882a593Smuzhiyun
83*4882a593Smuzhiyunrequired:
84*4882a593Smuzhiyun  - compatible
85*4882a593Smuzhiyun  - reg
86*4882a593Smuzhiyun  - interrupts
87*4882a593Smuzhiyun  - spi-cpha
88*4882a593Smuzhiyun  - spi-cpol
89*4882a593Smuzhiyun
90*4882a593SmuzhiyunallOf:
91*4882a593Smuzhiyun  - if:
92*4882a593Smuzhiyun      properties:
93*4882a593Smuzhiyun        compatible:
94*4882a593Smuzhiyun          contains:
95*4882a593Smuzhiyun            enum:
96*4882a593Smuzhiyun              - adi,adis16500
97*4882a593Smuzhiyun              - adi,adis16505-1
98*4882a593Smuzhiyun              - adi,adis16505-2
99*4882a593Smuzhiyun              - adi,adis16505-3
100*4882a593Smuzhiyun              - adi,adis16507-1
101*4882a593Smuzhiyun              - adi,adis16507-2
102*4882a593Smuzhiyun              - adi,adis16507-3
103*4882a593Smuzhiyun
104*4882a593Smuzhiyun    then:
105*4882a593Smuzhiyun      properties:
106*4882a593Smuzhiyun        adi,sync-mode:
107*4882a593Smuzhiyun          minimum: 0
108*4882a593Smuzhiyun          maximum: 2
109*4882a593Smuzhiyun
110*4882a593Smuzhiyun  - if:
111*4882a593Smuzhiyun      properties:
112*4882a593Smuzhiyun        adi,sync-mode:
113*4882a593Smuzhiyun          enum: [1, 2, 3]
114*4882a593Smuzhiyun
115*4882a593Smuzhiyun    then:
116*4882a593Smuzhiyun      dependencies:
117*4882a593Smuzhiyun        adi,sync-mode: [ clocks ]
118*4882a593Smuzhiyun
119*4882a593SmuzhiyunadditionalProperties: false
120*4882a593Smuzhiyun
121*4882a593Smuzhiyunexamples:
122*4882a593Smuzhiyun  - |
123*4882a593Smuzhiyun    #include <dt-bindings/interrupt-controller/irq.h>
124*4882a593Smuzhiyun    spi {
125*4882a593Smuzhiyun            #address-cells = <1>;
126*4882a593Smuzhiyun            #size-cells = <0>;
127*4882a593Smuzhiyun
128*4882a593Smuzhiyun            adis16475: adis16475-3@0 {
129*4882a593Smuzhiyun                    compatible = "adi,adis16475-3";
130*4882a593Smuzhiyun                    reg = <0>;
131*4882a593Smuzhiyun                    spi-cpha;
132*4882a593Smuzhiyun                    spi-cpol;
133*4882a593Smuzhiyun                    spi-max-frequency = <2000000>;
134*4882a593Smuzhiyun                    interrupts = <4 IRQ_TYPE_EDGE_RISING>;
135*4882a593Smuzhiyun                    interrupt-parent = <&gpio>;
136*4882a593Smuzhiyun            };
137*4882a593Smuzhiyun    };
138*4882a593Smuzhiyun...
139