xref: /freebsd/sys/contrib/device-tree/Bindings/iio/dac/adi,ad5770r.yaml (revision cb7aa33ac6cd46a5434798e50363136e64f3ae98)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2c66ec88fSEmmanuel Vadot# Copyright 2020 Analog Devices Inc.
3c66ec88fSEmmanuel Vadot%YAML 1.2
4c66ec88fSEmmanuel Vadot---
5c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/iio/dac/adi,ad5770r.yaml#
6c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7c66ec88fSEmmanuel Vadot
8c66ec88fSEmmanuel Vadottitle: Analog Devices AD5770R DAC device driver
9c66ec88fSEmmanuel Vadot
10c66ec88fSEmmanuel Vadotmaintainers:
11b97ee269SEmmanuel Vadot  - Alexandru Tachici <alexandru.tachici@analog.com>
12c66ec88fSEmmanuel Vadot
13c66ec88fSEmmanuel Vadotdescription: |
14c66ec88fSEmmanuel Vadot  Bindings for the Analog Devices AD5770R current DAC device. Datasheet can be
15c66ec88fSEmmanuel Vadot  found here:
16c66ec88fSEmmanuel Vadot    https://www.analog.com/media/en/technical-documentation/data-sheets/AD5770R.pdf
17c66ec88fSEmmanuel Vadot
18c66ec88fSEmmanuel Vadotproperties:
19c66ec88fSEmmanuel Vadot  compatible:
20c66ec88fSEmmanuel Vadot    enum:
21c66ec88fSEmmanuel Vadot      - adi,ad5770r
22c66ec88fSEmmanuel Vadot
23c66ec88fSEmmanuel Vadot  reg:
24c66ec88fSEmmanuel Vadot    maxItems: 1
25c66ec88fSEmmanuel Vadot
26c66ec88fSEmmanuel Vadot  avdd-supply:
27c66ec88fSEmmanuel Vadot    description:
28c66ec88fSEmmanuel Vadot      AVdd voltage supply. Represents two different supplies in the datasheet
29c66ec88fSEmmanuel Vadot      that are in fact the same.
30c66ec88fSEmmanuel Vadot
31c66ec88fSEmmanuel Vadot  iovdd-supply:
32c66ec88fSEmmanuel Vadot    description:
33c66ec88fSEmmanuel Vadot      Voltage supply for the chip interface.
34c66ec88fSEmmanuel Vadot
35c66ec88fSEmmanuel Vadot  vref-supply:
36c66ec88fSEmmanuel Vadot    description: Specify the voltage of the external reference used.
37c66ec88fSEmmanuel Vadot      Available reference options are 1.25 V or 2.5 V. If no
38c66ec88fSEmmanuel Vadot      external reference declared then the device will use the
39c66ec88fSEmmanuel Vadot      internal reference of 1.25 V.
40c66ec88fSEmmanuel Vadot
41c66ec88fSEmmanuel Vadot  adi,external-resistor:
42c66ec88fSEmmanuel Vadot    description: Specify if an external 2.5k ohm resistor is used. If not
43c66ec88fSEmmanuel Vadot      specified the device will use an internal 2.5k ohm resistor.
44c66ec88fSEmmanuel Vadot      The precision resistor is used for reference current generation.
45c66ec88fSEmmanuel Vadot    type: boolean
46c66ec88fSEmmanuel Vadot
47c66ec88fSEmmanuel Vadot  reset-gpios:
48c66ec88fSEmmanuel Vadot    description: GPIO spec for the RESET pin. If specified, it will be
49c66ec88fSEmmanuel Vadot      asserted during driver probe.
50c66ec88fSEmmanuel Vadot    maxItems: 1
51c66ec88fSEmmanuel Vadot
526be33864SEmmanuel Vadot  '#address-cells':
536be33864SEmmanuel Vadot    const: 1
546be33864SEmmanuel Vadot
556be33864SEmmanuel Vadot  '#size-cells':
566be33864SEmmanuel Vadot    const: 0
576be33864SEmmanuel Vadot
58c66ec88fSEmmanuel Vadot  channel@0:
59c66ec88fSEmmanuel Vadot    description: Represents an external channel which are
60c66ec88fSEmmanuel Vadot      connected to the DAC. Channel 0 can act both as a current
61c66ec88fSEmmanuel Vadot      source and sink.
62c66ec88fSEmmanuel Vadot    type: object
63*7ef62cebSEmmanuel Vadot    additionalProperties: false
64c66ec88fSEmmanuel Vadot
65c66ec88fSEmmanuel Vadot    properties:
66c66ec88fSEmmanuel Vadot      reg:
67c66ec88fSEmmanuel Vadot        description: This represents the channel number.
68c66ec88fSEmmanuel Vadot        const: 0
69c66ec88fSEmmanuel Vadot
70c66ec88fSEmmanuel Vadot      adi,range-microamp:
71c66ec88fSEmmanuel Vadot        description: Output range of the channel.
72c66ec88fSEmmanuel Vadot        oneOf:
73c66ec88fSEmmanuel Vadot          - items:
74c66ec88fSEmmanuel Vadot              - const: 0
75c66ec88fSEmmanuel Vadot              - const: 300000
76c66ec88fSEmmanuel Vadot          - items:
77c66ec88fSEmmanuel Vadot              - const: -60000
78c66ec88fSEmmanuel Vadot              - const: 0
79c66ec88fSEmmanuel Vadot          - items:
80c66ec88fSEmmanuel Vadot              - const: -60000
81c66ec88fSEmmanuel Vadot              - const: 300000
82c66ec88fSEmmanuel Vadot
83c66ec88fSEmmanuel Vadot  channel@1:
84c66ec88fSEmmanuel Vadot    description: Represents an external channel which are
85c66ec88fSEmmanuel Vadot      connected to the DAC.
86c66ec88fSEmmanuel Vadot    type: object
87*7ef62cebSEmmanuel Vadot    additionalProperties: false
88c66ec88fSEmmanuel Vadot
89c66ec88fSEmmanuel Vadot    properties:
90c66ec88fSEmmanuel Vadot      reg:
91c66ec88fSEmmanuel Vadot        description: This represents the channel number.
92c66ec88fSEmmanuel Vadot        const: 1
93c66ec88fSEmmanuel Vadot
94c66ec88fSEmmanuel Vadot      adi,range-microamp:
95c66ec88fSEmmanuel Vadot        description: Output range of the channel.
96c66ec88fSEmmanuel Vadot        items:
97c66ec88fSEmmanuel Vadot          - const: 0
98c66ec88fSEmmanuel Vadot          - enum: [140000, 250000]
99c66ec88fSEmmanuel Vadot
100c66ec88fSEmmanuel Vadot  channel@2:
101c66ec88fSEmmanuel Vadot    description: Represents an external channel which are
102c66ec88fSEmmanuel Vadot      connected to the DAC.
103c66ec88fSEmmanuel Vadot    type: object
104*7ef62cebSEmmanuel Vadot    additionalProperties: false
105c66ec88fSEmmanuel Vadot
106c66ec88fSEmmanuel Vadot    properties:
107c66ec88fSEmmanuel Vadot      reg:
108c66ec88fSEmmanuel Vadot        description: This represents the channel number.
109c66ec88fSEmmanuel Vadot        const: 2
110c66ec88fSEmmanuel Vadot
111c66ec88fSEmmanuel Vadot      adi,range-microamp:
112c66ec88fSEmmanuel Vadot        description: Output range of the channel.
113c66ec88fSEmmanuel Vadot        items:
114c66ec88fSEmmanuel Vadot          - const: 0
115c66ec88fSEmmanuel Vadot          - enum: [55000, 150000]
116c66ec88fSEmmanuel Vadot
117c66ec88fSEmmanuel VadotpatternProperties:
118c66ec88fSEmmanuel Vadot  "^channel@([3-5])$":
119c66ec88fSEmmanuel Vadot    type: object
120*7ef62cebSEmmanuel Vadot    additionalProperties: false
121c66ec88fSEmmanuel Vadot    description: Represents the external channels which are connected to the DAC.
122c66ec88fSEmmanuel Vadot    properties:
123c66ec88fSEmmanuel Vadot      reg:
124c66ec88fSEmmanuel Vadot        description: This represents the channel number.
125c66ec88fSEmmanuel Vadot        minimum: 3
126c66ec88fSEmmanuel Vadot        maximum: 5
127c66ec88fSEmmanuel Vadot
128c66ec88fSEmmanuel Vadot      adi,range-microamp:
129c66ec88fSEmmanuel Vadot        description: Output range of the channel.
130c66ec88fSEmmanuel Vadot        items:
131c66ec88fSEmmanuel Vadot          - const: 0
132c66ec88fSEmmanuel Vadot          - enum: [45000, 100000]
133c66ec88fSEmmanuel Vadot
134c66ec88fSEmmanuel Vadotrequired:
135c66ec88fSEmmanuel Vadot  - reg
136c66ec88fSEmmanuel Vadot  - channel@0
137c66ec88fSEmmanuel Vadot  - channel@1
138c66ec88fSEmmanuel Vadot  - channel@2
139c66ec88fSEmmanuel Vadot  - channel@3
140c66ec88fSEmmanuel Vadot  - channel@4
141c66ec88fSEmmanuel Vadot  - channel@5
142c66ec88fSEmmanuel Vadot
143*7ef62cebSEmmanuel VadotallOf:
144*7ef62cebSEmmanuel Vadot  - $ref: /schemas/spi/spi-peripheral-props.yaml#
145*7ef62cebSEmmanuel Vadot
146*7ef62cebSEmmanuel VadotunevaluatedProperties: false
1476be33864SEmmanuel Vadot
148c66ec88fSEmmanuel Vadotexamples:
149c66ec88fSEmmanuel Vadot  - |
150c66ec88fSEmmanuel Vadot    spi {
151c66ec88fSEmmanuel Vadot        #address-cells = <1>;
152c66ec88fSEmmanuel Vadot        #size-cells = <0>;
153c66ec88fSEmmanuel Vadot
154c66ec88fSEmmanuel Vadot        ad5770r@0 {
155c66ec88fSEmmanuel Vadot            compatible = "adi,ad5770r";
156c66ec88fSEmmanuel Vadot            reg = <0>;
157c66ec88fSEmmanuel Vadot            spi-max-frequency = <1000000>;
158c66ec88fSEmmanuel Vadot            vref-supply = <&vref>;
159c66ec88fSEmmanuel Vadot            adi,external-resistor;
160c66ec88fSEmmanuel Vadot            reset-gpios = <&gpio 22 0>;
161c66ec88fSEmmanuel Vadot            #address-cells = <1>;
162c66ec88fSEmmanuel Vadot            #size-cells = <0>;
163c66ec88fSEmmanuel Vadot
164c66ec88fSEmmanuel Vadot            channel@0 {
165c66ec88fSEmmanuel Vadot                reg = <0>;
166c66ec88fSEmmanuel Vadot                adi,range-microamp = <0 300000>;
167c66ec88fSEmmanuel Vadot            };
168c66ec88fSEmmanuel Vadot
169c66ec88fSEmmanuel Vadot            channel@1 {
170c66ec88fSEmmanuel Vadot                reg = <1>;
171c66ec88fSEmmanuel Vadot                adi,range-microamp = <0 140000>;
172c66ec88fSEmmanuel Vadot            };
173c66ec88fSEmmanuel Vadot
174c66ec88fSEmmanuel Vadot            channel@2 {
175c66ec88fSEmmanuel Vadot                reg = <2>;
176c66ec88fSEmmanuel Vadot                adi,range-microamp = <0 55000>;
177c66ec88fSEmmanuel Vadot            };
178c66ec88fSEmmanuel Vadot
179c66ec88fSEmmanuel Vadot            channel@3 {
180c66ec88fSEmmanuel Vadot                reg = <3>;
181c66ec88fSEmmanuel Vadot                adi,range-microamp = <0 45000>;
182c66ec88fSEmmanuel Vadot            };
183c66ec88fSEmmanuel Vadot
184c66ec88fSEmmanuel Vadot            channel@4 {
185c66ec88fSEmmanuel Vadot                reg = <4>;
186c66ec88fSEmmanuel Vadot                adi,range-microamp = <0 45000>;
187c66ec88fSEmmanuel Vadot            };
188c66ec88fSEmmanuel Vadot
189c66ec88fSEmmanuel Vadot            channel@5 {
190c66ec88fSEmmanuel Vadot                reg = <5>;
191c66ec88fSEmmanuel Vadot                adi,range-microamp = <0 45000>;
192c66ec88fSEmmanuel Vadot            };
193c66ec88fSEmmanuel Vadot        };
194c66ec88fSEmmanuel Vadot    };
195c66ec88fSEmmanuel Vadot...
196