15956d97fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 25956d97fSEmmanuel Vadot%YAML 1.2 35956d97fSEmmanuel Vadot--- 45956d97fSEmmanuel Vadot$id: http://devicetree.org/schemas/iio/dac/adi,ad5755.yaml# 55956d97fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 65956d97fSEmmanuel Vadot 75956d97fSEmmanuel Vadottitle: Analog Devices AD5755 Multi-Channel DAC 85956d97fSEmmanuel Vadot 95956d97fSEmmanuel Vadotmaintainers: 105956d97fSEmmanuel Vadot - Sean Nyekjaer <sean.nyekjaer@prevas.dk> 115956d97fSEmmanuel Vadot 125956d97fSEmmanuel Vadotproperties: 135956d97fSEmmanuel Vadot compatible: 145956d97fSEmmanuel Vadot enum: 155956d97fSEmmanuel Vadot - adi,ad5755 165956d97fSEmmanuel Vadot - adi,ad5755-1 175956d97fSEmmanuel Vadot - adi,ad5757 185956d97fSEmmanuel Vadot - adi,ad5735 195956d97fSEmmanuel Vadot - adi,ad5737 205956d97fSEmmanuel Vadot 215956d97fSEmmanuel Vadot reg: 225956d97fSEmmanuel Vadot maxItems: 1 235956d97fSEmmanuel Vadot 245956d97fSEmmanuel Vadot spi-cpha: 255956d97fSEmmanuel Vadot description: Either this or spi-cpol but not both. 265956d97fSEmmanuel Vadot spi-cpol: true 275956d97fSEmmanuel Vadot 285956d97fSEmmanuel Vadot adi,ext-dc-dc-compenstation-resistor: 295956d97fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 305956d97fSEmmanuel Vadot description: 315956d97fSEmmanuel Vadot Set if the hardware have an external resistor and thereby bypasses 325956d97fSEmmanuel Vadot the internal compensation resistor. 335956d97fSEmmanuel Vadot 345956d97fSEmmanuel Vadot adi,dc-dc-phase: 355956d97fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 365956d97fSEmmanuel Vadot enum: [0, 1, 2, 3] 375956d97fSEmmanuel Vadot description: | 385956d97fSEmmanuel Vadot Valid values for DC DC Phase control is: 395956d97fSEmmanuel Vadot 0: All dc-to-dc converters clock on the same edge. 405956d97fSEmmanuel Vadot 1: Channel A and Channel B clock on the same edge, 415956d97fSEmmanuel Vadot Channel C and Channel D clock on opposite edges. 425956d97fSEmmanuel Vadot 2: Channel A and Channel C clock on the same edge, 435956d97fSEmmanuel Vadot Channel B and Channel D clock on opposite edges. 445956d97fSEmmanuel Vadot 3: Channel A, Channel B, Channel C, and Channel D 455956d97fSEmmanuel Vadot clock 90 degrees out of phase from each other. 465956d97fSEmmanuel Vadot 475956d97fSEmmanuel Vadot adi,dc-dc-freq-hz: 485956d97fSEmmanuel Vadot enum: [250000, 410000, 650000] 495956d97fSEmmanuel Vadot 505956d97fSEmmanuel Vadot adi,dc-dc-max-microvolt: 515956d97fSEmmanuel Vadot description: 525956d97fSEmmanuel Vadot Maximum allowed Vboost voltage supplied by the dc-to-dc converter. 535956d97fSEmmanuel Vadot enum: [23000000, 24500000, 27000000, 29500000] 545956d97fSEmmanuel Vadot 555956d97fSEmmanuel Vadot "#address-cells": 565956d97fSEmmanuel Vadot const: 1 575956d97fSEmmanuel Vadot 585956d97fSEmmanuel Vadot "#size-cells": 595956d97fSEmmanuel Vadot const: 0 605956d97fSEmmanuel Vadot 615956d97fSEmmanuel Vadot "#io-channel-cells": 625956d97fSEmmanuel Vadot const: 1 635956d97fSEmmanuel Vadot 645956d97fSEmmanuel Vadotrequired: 655956d97fSEmmanuel Vadot - compatible 665956d97fSEmmanuel Vadot - reg 675956d97fSEmmanuel Vadot 685956d97fSEmmanuel VadotpatternProperties: 695956d97fSEmmanuel Vadot "^channel@[0-7]$": 705956d97fSEmmanuel Vadot type: object 715956d97fSEmmanuel Vadot description: Child node to describe a channel 725956d97fSEmmanuel Vadot properties: 735956d97fSEmmanuel Vadot reg: 745956d97fSEmmanuel Vadot maxItems: 1 755956d97fSEmmanuel Vadot 765956d97fSEmmanuel Vadot adi,mode: 775956d97fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 785956d97fSEmmanuel Vadot minimum: 0 795956d97fSEmmanuel Vadot maximum: 6 805956d97fSEmmanuel Vadot description: | 815956d97fSEmmanuel Vadot Valid values for DAC modes is: 825956d97fSEmmanuel Vadot 0: 0 V to 5 V voltage range. 835956d97fSEmmanuel Vadot 1: 0 V to 10 V voltage range. 845956d97fSEmmanuel Vadot 2: Plus minus 5 V voltage range. 855956d97fSEmmanuel Vadot 3: Plus minus 10 V voltage range. 865956d97fSEmmanuel Vadot 4: 4 mA to 20 mA current range. 875956d97fSEmmanuel Vadot 5: 0 mA to 20 mA current range. 885956d97fSEmmanuel Vadot 6: 0 mA to 24 mA current range. 895956d97fSEmmanuel Vadot 905956d97fSEmmanuel Vadot adi,ext-current-sense-resistor: 915956d97fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 925956d97fSEmmanuel Vadot description: 935956d97fSEmmanuel Vadot Set if the hardware has an external current sense resistor 945956d97fSEmmanuel Vadot 955956d97fSEmmanuel Vadot adi,enable-voltage-overrange: 965956d97fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 975956d97fSEmmanuel Vadot description: Enable voltage overrange 985956d97fSEmmanuel Vadot 995956d97fSEmmanuel Vadot adi,slew: 1005956d97fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 1015956d97fSEmmanuel Vadot description: | 1025956d97fSEmmanuel Vadot Array of slewrate settings should contain 3 fields: 1035956d97fSEmmanuel Vadot 1: Should be either 0 or 1 in order to enable or disable slewrate. 1045956d97fSEmmanuel Vadot 2: Slew rate update frequency 1055956d97fSEmmanuel Vadot 3: Slew step size 1065956d97fSEmmanuel Vadot items: 1075956d97fSEmmanuel Vadot - enum: [0, 1] 1085956d97fSEmmanuel Vadot - enum: [64000, 32000, 16000, 8000, 4000, 2000, 1000, 500, 250, 125, 64, 32, 16, 8, 4, 0] 1095956d97fSEmmanuel Vadot - enum: [1, 2, 4, 16, 32, 64, 128, 256] 1105956d97fSEmmanuel Vadot 1115956d97fSEmmanuel Vadot required: 1125956d97fSEmmanuel Vadot - reg 1135956d97fSEmmanuel Vadot 1145956d97fSEmmanuel Vadot additionalProperties: false 1155956d97fSEmmanuel Vadot 1165956d97fSEmmanuel VadotoneOf: 1175956d97fSEmmanuel Vadot - required: 1185956d97fSEmmanuel Vadot - spi-cpha 1195956d97fSEmmanuel Vadot - required: 1205956d97fSEmmanuel Vadot - spi-cpol 1215956d97fSEmmanuel Vadot 122*7ef62cebSEmmanuel VadotallOf: 123*7ef62cebSEmmanuel Vadot - $ref: /schemas/spi/spi-peripheral-props.yaml# 124*7ef62cebSEmmanuel Vadot 125*7ef62cebSEmmanuel VadotunevaluatedProperties: false 126*7ef62cebSEmmanuel Vadot 1275956d97fSEmmanuel Vadotexamples: 1285956d97fSEmmanuel Vadot - | 1295956d97fSEmmanuel Vadot spi { 1305956d97fSEmmanuel Vadot #address-cells = <1>; 1315956d97fSEmmanuel Vadot #size-cells = <0>; 1325956d97fSEmmanuel Vadot 1335956d97fSEmmanuel Vadot dac@0 { 1345956d97fSEmmanuel Vadot #address-cells = <1>; 1355956d97fSEmmanuel Vadot #size-cells = <0>; 1365956d97fSEmmanuel Vadot compatible = "adi,ad5755"; 1375956d97fSEmmanuel Vadot reg = <0>; 1385956d97fSEmmanuel Vadot spi-max-frequency = <1000000>; 1395956d97fSEmmanuel Vadot spi-cpha; 1405956d97fSEmmanuel Vadot adi,dc-dc-phase = <0>; 1415956d97fSEmmanuel Vadot adi,dc-dc-freq-hz = <410000>; 1425956d97fSEmmanuel Vadot adi,dc-dc-max-microvolt = <23000000>; 1435956d97fSEmmanuel Vadot channel@0 { 1445956d97fSEmmanuel Vadot reg = <0>; 1455956d97fSEmmanuel Vadot adi,mode = <4>; 1465956d97fSEmmanuel Vadot adi,ext-current-sense-resistor; 1475956d97fSEmmanuel Vadot adi,slew = <0 64000 1>; 1485956d97fSEmmanuel Vadot }; 1495956d97fSEmmanuel Vadot channel@1 { 1505956d97fSEmmanuel Vadot reg = <1>; 1515956d97fSEmmanuel Vadot adi,mode = <4>; 1525956d97fSEmmanuel Vadot adi,ext-current-sense-resistor; 1535956d97fSEmmanuel Vadot adi,slew = <0 64000 1>; 1545956d97fSEmmanuel Vadot }; 1555956d97fSEmmanuel Vadot channel@2 { 1565956d97fSEmmanuel Vadot reg = <2>; 1575956d97fSEmmanuel Vadot adi,mode = <4>; 1585956d97fSEmmanuel Vadot adi,ext-current-sense-resistor; 1595956d97fSEmmanuel Vadot adi,slew = <0 64000 1>; 1605956d97fSEmmanuel Vadot }; 1615956d97fSEmmanuel Vadot channel@3 { 1625956d97fSEmmanuel Vadot reg = <3>; 1635956d97fSEmmanuel Vadot adi,mode = <4>; 1645956d97fSEmmanuel Vadot adi,ext-current-sense-resistor; 1655956d97fSEmmanuel Vadot adi,slew = <0 64000 1>; 1665956d97fSEmmanuel Vadot }; 1675956d97fSEmmanuel Vadot }; 1685956d97fSEmmanuel Vadot }; 1695956d97fSEmmanuel Vadot... 170