1Analog Devices AD5758 DAC device driver 2 3Required properties for the AD5758: 4 - compatible: Must be "adi,ad5758" 5 - reg: SPI chip select number for the device 6 - spi-max-frequency: Max SPI frequency to use (< 50000000) 7 - spi-cpha: is the only mode that is supported 8 9Required properties: 10 11 - adi,dc-dc-mode: Mode of operation of the dc-to-dc converter 12 Dynamic Power Control (DPC) 13 In this mode, the AD5758 circuitry senses the output 14 voltage and dynamically regulates the supply voltage, 15 VDPC+, to meet compliance requirements plus an optimized 16 headroom voltage for the output buffer. 17 18 Programmable Power Control (PPC) 19 In this mode, the VDPC+ voltage is user-programmable to 20 a fixed level that needs to accommodate the maximum output 21 load required. 22 23 The output of the DAC core is either converted to a 24 current or voltage output at the VIOUT pin. Only one mode 25 can be enabled at any one time. 26 27 The following values are currently supported: 28 * 1: DPC current mode 29 * 2: DPC voltage mode 30 * 3: PPC current mode 31 32 Depending on the selected output mode (voltage or current) one of the 33 two properties must 34 be present: 35 36 - adi,range-microvolt: Voltage output range 37 The array of voltage output ranges must contain two fields: 38 * <0 5000000>: 0 V to 5 V voltage range 39 * <0 10000000>: 0 V to 10 V voltage range 40 * <(-5000000) 5000000>: ±5 V voltage range 41 * <(-10000000) 10000000>: ±10 V voltage range 42 - adi,range-microamp: Current output range 43 The array of current output ranges must contain two fields: 44 * <0 20000>: 0 mA to 20 mA current range 45 * <0 24000>: 0 mA to 24 mA current range 46 * <4 24000>: 4 mA to 20 mA current range 47 * <(-20000) 20000>: ±20 mA current range 48 * <(-24000) 24000>: ±24 mA current range 49 * <(-1000) 22000>: −1 mA to +22 mA current range 50 51Optional properties: 52 53 - reset-gpios : GPIO spec for the RESET pin. If specified, it will be 54 asserted during driver probe. 55 56 - adi,dc-dc-ilim-microamp: The dc-to-dc converter current limit 57 The following values are currently supported [uA]: 58 * 150000 59 * 200000 60 * 250000 61 * 300000 62 * 350000 63 * 400000 64 65 - adi,slew-time-us: The time it takes for the output to reach the 66 full scale [uS] 67 The supported range is between 133us up to 1023984375us 68 69AD5758 Example: 70 71 dac@0 { 72 compatible = "adi,ad5758"; 73 reg = <0>; 74 spi-max-frequency = <1000000>; 75 spi-cpha; 76 77 reset-gpios = <&gpio 22 0>; 78 79 adi,dc-dc-mode = <2>; 80 adi,range-microvolt = <0 10000000>; 81 adi,dc-dc-ilim-microamp = <200000>; 82 adi,slew-time-us = <125000>; 83 }; 84