xref: /linux/Documentation/devicetree/bindings/iio/dac/adi,ad5770r.yaml (revision 9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e) !
1ea52c212SAlexandru Tachici# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2ea52c212SAlexandru Tachici# Copyright 2020 Analog Devices Inc.
3ea52c212SAlexandru Tachici%YAML 1.2
4ea52c212SAlexandru Tachici---
5bc4be551SFabio Estevam$id: http://devicetree.org/schemas/iio/dac/adi,ad5770r.yaml#
6ea52c212SAlexandru Tachici$schema: http://devicetree.org/meta-schemas/core.yaml#
7ea52c212SAlexandru Tachici
8ea52c212SAlexandru Tachicititle: Analog Devices AD5770R DAC device driver
9ea52c212SAlexandru Tachici
10ea52c212SAlexandru Tachicimaintainers:
11065cd7e7SAlexandru Tachici  - Alexandru Tachici <alexandru.tachici@analog.com>
12ea52c212SAlexandru Tachici
13ea52c212SAlexandru Tachicidescription: |
14ea52c212SAlexandru Tachici  Bindings for the Analog Devices AD5770R current DAC device. Datasheet can be
15ea52c212SAlexandru Tachici  found here:
16ea52c212SAlexandru Tachici    https://www.analog.com/media/en/technical-documentation/data-sheets/AD5770R.pdf
17ea52c212SAlexandru Tachici
18ea52c212SAlexandru Tachiciproperties:
19ea52c212SAlexandru Tachici  compatible:
20ea52c212SAlexandru Tachici    enum:
21ea52c212SAlexandru Tachici      - adi,ad5770r
22ea52c212SAlexandru Tachici
23ea52c212SAlexandru Tachici  reg:
24ea52c212SAlexandru Tachici    maxItems: 1
25ea52c212SAlexandru Tachici
26ea52c212SAlexandru Tachici  avdd-supply:
27ea52c212SAlexandru Tachici    description:
28ea52c212SAlexandru Tachici      AVdd voltage supply. Represents two different supplies in the datasheet
29ea52c212SAlexandru Tachici      that are in fact the same.
30ea52c212SAlexandru Tachici
31ea52c212SAlexandru Tachici  iovdd-supply:
32ea52c212SAlexandru Tachici    description:
33ea52c212SAlexandru Tachici      Voltage supply for the chip interface.
34ea52c212SAlexandru Tachici
35ea52c212SAlexandru Tachici  vref-supply:
36ea52c212SAlexandru Tachici    description: Specify the voltage of the external reference used.
37ea52c212SAlexandru Tachici      Available reference options are 1.25 V or 2.5 V. If no
38ea52c212SAlexandru Tachici      external reference declared then the device will use the
39ea52c212SAlexandru Tachici      internal reference of 1.25 V.
40ea52c212SAlexandru Tachici
41ea52c212SAlexandru Tachici  adi,external-resistor:
42ea52c212SAlexandru Tachici    description: Specify if an external 2.5k ohm resistor is used. If not
43ea52c212SAlexandru Tachici      specified the device will use an internal 2.5k ohm resistor.
44ea52c212SAlexandru Tachici      The precision resistor is used for reference current generation.
45ea52c212SAlexandru Tachici    type: boolean
46ea52c212SAlexandru Tachici
47ea52c212SAlexandru Tachici  reset-gpios:
48ea52c212SAlexandru Tachici    description: GPIO spec for the RESET pin. If specified, it will be
49ea52c212SAlexandru Tachici      asserted during driver probe.
50ea52c212SAlexandru Tachici    maxItems: 1
51ea52c212SAlexandru Tachici
524828556dSRob Herring  '#address-cells':
534828556dSRob Herring    const: 1
544828556dSRob Herring
554828556dSRob Herring  '#size-cells':
564828556dSRob Herring    const: 0
574828556dSRob Herring
582cf3818fSAlexandru Tachici  channel@0:
59ea52c212SAlexandru Tachici    description: Represents an external channel which are
60ea52c212SAlexandru Tachici      connected to the DAC. Channel 0 can act both as a current
61ea52c212SAlexandru Tachici      source and sink.
62ea52c212SAlexandru Tachici    type: object
63*c682c963SRob Herring    additionalProperties: false
64ea52c212SAlexandru Tachici
65ea52c212SAlexandru Tachici    properties:
662cf3818fSAlexandru Tachici      reg:
67ea52c212SAlexandru Tachici        description: This represents the channel number.
68ea52c212SAlexandru Tachici        const: 0
69ea52c212SAlexandru Tachici
70ea52c212SAlexandru Tachici      adi,range-microamp:
71ea52c212SAlexandru Tachici        description: Output range of the channel.
72ea52c212SAlexandru Tachici        oneOf:
73ea52c212SAlexandru Tachici          - items:
742cf3818fSAlexandru Tachici              - const: 0
752cf3818fSAlexandru Tachici              - const: 300000
762cf3818fSAlexandru Tachici          - items:
772cf3818fSAlexandru Tachici              - const: -60000
782cf3818fSAlexandru Tachici              - const: 0
792cf3818fSAlexandru Tachici          - items:
802cf3818fSAlexandru Tachici              - const: -60000
812cf3818fSAlexandru Tachici              - const: 300000
82ea52c212SAlexandru Tachici
832cf3818fSAlexandru Tachici  channel@1:
84ea52c212SAlexandru Tachici    description: Represents an external channel which are
85ea52c212SAlexandru Tachici      connected to the DAC.
86ea52c212SAlexandru Tachici    type: object
87*c682c963SRob Herring    additionalProperties: false
88ea52c212SAlexandru Tachici
89ea52c212SAlexandru Tachici    properties:
902cf3818fSAlexandru Tachici      reg:
91ea52c212SAlexandru Tachici        description: This represents the channel number.
92ea52c212SAlexandru Tachici        const: 1
93ea52c212SAlexandru Tachici
94ea52c212SAlexandru Tachici      adi,range-microamp:
95ea52c212SAlexandru Tachici        description: Output range of the channel.
962cf3818fSAlexandru Tachici        items:
972cf3818fSAlexandru Tachici          - const: 0
982cf3818fSAlexandru Tachici          - enum: [140000, 250000]
99ea52c212SAlexandru Tachici
1002cf3818fSAlexandru Tachici  channel@2:
101ea52c212SAlexandru Tachici    description: Represents an external channel which are
102ea52c212SAlexandru Tachici      connected to the DAC.
103ea52c212SAlexandru Tachici    type: object
104*c682c963SRob Herring    additionalProperties: false
105ea52c212SAlexandru Tachici
106ea52c212SAlexandru Tachici    properties:
1072cf3818fSAlexandru Tachici      reg:
108ea52c212SAlexandru Tachici        description: This represents the channel number.
109ea52c212SAlexandru Tachici        const: 2
110ea52c212SAlexandru Tachici
111ea52c212SAlexandru Tachici      adi,range-microamp:
112ea52c212SAlexandru Tachici        description: Output range of the channel.
1132cf3818fSAlexandru Tachici        items:
1142cf3818fSAlexandru Tachici          - const: 0
1152cf3818fSAlexandru Tachici          - enum: [55000, 150000]
116ea52c212SAlexandru Tachici
117ea52c212SAlexandru TachicipatternProperties:
118ea52c212SAlexandru Tachici  "^channel@([3-5])$":
119ea52c212SAlexandru Tachici    type: object
120*c682c963SRob Herring    additionalProperties: false
121ea52c212SAlexandru Tachici    description: Represents the external channels which are connected to the DAC.
122ea52c212SAlexandru Tachici    properties:
1232cf3818fSAlexandru Tachici      reg:
124ea52c212SAlexandru Tachici        description: This represents the channel number.
125ea52c212SAlexandru Tachici        minimum: 3
126ea52c212SAlexandru Tachici        maximum: 5
127ea52c212SAlexandru Tachici
128ea52c212SAlexandru Tachici      adi,range-microamp:
129ea52c212SAlexandru Tachici        description: Output range of the channel.
1302cf3818fSAlexandru Tachici        items:
1312cf3818fSAlexandru Tachici          - const: 0
1322cf3818fSAlexandru Tachici          - enum: [45000, 100000]
133ea52c212SAlexandru Tachici
134ea52c212SAlexandru Tachicirequired:
135ea52c212SAlexandru Tachici  - reg
1362cf3818fSAlexandru Tachici  - channel@0
1372cf3818fSAlexandru Tachici  - channel@1
1382cf3818fSAlexandru Tachici  - channel@2
1392cf3818fSAlexandru Tachici  - channel@3
1402cf3818fSAlexandru Tachici  - channel@4
1412cf3818fSAlexandru Tachici  - channel@5
142ea52c212SAlexandru Tachici
14325d04699SKrzysztof KozlowskiallOf:
14425d04699SKrzysztof Kozlowski  - $ref: /schemas/spi/spi-peripheral-props.yaml#
14525d04699SKrzysztof Kozlowski
14625d04699SKrzysztof KozlowskiunevaluatedProperties: false
1476fdc6e23SRob Herring
148ea52c212SAlexandru Tachiciexamples:
149ea52c212SAlexandru Tachici  - |
150ea52c212SAlexandru Tachici    spi {
151ea52c212SAlexandru Tachici        #address-cells = <1>;
152ea52c212SAlexandru Tachici        #size-cells = <0>;
153ea52c212SAlexandru Tachici
154ea52c212SAlexandru Tachici        ad5770r@0 {
1557d6243aaSFabio Estevam            compatible = "adi,ad5770r";
156ea52c212SAlexandru Tachici            reg = <0>;
157ea52c212SAlexandru Tachici            spi-max-frequency = <1000000>;
158ea52c212SAlexandru Tachici            vref-supply = <&vref>;
159ea52c212SAlexandru Tachici            adi,external-resistor;
160ea52c212SAlexandru Tachici            reset-gpios = <&gpio 22 0>;
1612cf3818fSAlexandru Tachici            #address-cells = <1>;
1622cf3818fSAlexandru Tachici            #size-cells = <0>;
163ea52c212SAlexandru Tachici
164ea52c212SAlexandru Tachici            channel@0 {
1652cf3818fSAlexandru Tachici                reg = <0>;
1662cf3818fSAlexandru Tachici                adi,range-microamp = <0 300000>;
167ea52c212SAlexandru Tachici            };
168ea52c212SAlexandru Tachici
169ea52c212SAlexandru Tachici            channel@1 {
1702cf3818fSAlexandru Tachici                reg = <1>;
171ea52c212SAlexandru Tachici                adi,range-microamp = <0 140000>;
172ea52c212SAlexandru Tachici            };
173ea52c212SAlexandru Tachici
174ea52c212SAlexandru Tachici            channel@2 {
1752cf3818fSAlexandru Tachici                reg = <2>;
176ea52c212SAlexandru Tachici                adi,range-microamp = <0 55000>;
177ea52c212SAlexandru Tachici            };
178ea52c212SAlexandru Tachici
179ea52c212SAlexandru Tachici            channel@3 {
1802cf3818fSAlexandru Tachici                reg = <3>;
181ea52c212SAlexandru Tachici                adi,range-microamp = <0 45000>;
182ea52c212SAlexandru Tachici            };
183ea52c212SAlexandru Tachici
184ea52c212SAlexandru Tachici            channel@4 {
1852cf3818fSAlexandru Tachici                reg = <4>;
186ea52c212SAlexandru Tachici                adi,range-microamp = <0 45000>;
187ea52c212SAlexandru Tachici            };
188ea52c212SAlexandru Tachici
189ea52c212SAlexandru Tachici            channel@5 {
1902cf3818fSAlexandru Tachici                reg = <5>;
191ea52c212SAlexandru Tachici                adi,range-microamp = <0 45000>;
192ea52c212SAlexandru Tachici            };
193ea52c212SAlexandru Tachici        };
194ea52c212SAlexandru Tachici    };
195ea52c212SAlexandru Tachici...
196