dt-bindings: iio: dac: ad5686: add reset/ldac/gain support

Add GPIO property for RESET, LDAC and GAIN pin. RESET is active-low, LDAC
is used to load DAC channels with values from input registers and GAIN
can double the voltage in output channels. The gain-gpios property is
not available to all supported parts. The adi,range-double property
indicates that GAIN pin is hardwired to high in case gain-gpios is not
set, otherwise it sets the initial value for the gain setting.

Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Rodrigo Alencar <rodrigo.alencar@analog.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
This commit is contained in:
Rodrigo Alencar 2026-06-28 15:08:10 +01:00 committed by Jonathan Cameron
parent 5b78dd16e5
commit 1c110ae2ba

View File

@ -35,17 +35,53 @@ properties:
vcc-supply:
description: If not supplied the internal reference is used.
reset-gpios:
description: Active-low RESET pin to reset the device.
maxItems: 1
ldac-gpios:
description:
Active-low LDAC pin used to asynchronously update the DAC channels.
maxItems: 1
gain-gpios:
description:
GAIN pin that sets a multiplier for the DAC output voltage. When high,
the DAC output voltage is multiplied by 2, otherwise it is unchanged.
maxItems: 1
adi,range-double:
description:
Sets the initial voltage output range from 0 to 2xVREF. On devices that
have a GAIN pin and no gain-gpios property is set, this indicates the pin
is hardwired high.
type: boolean
required:
- compatible
- reg
allOf:
- $ref: /schemas/spi/spi-peripheral-props.yaml#
- if:
properties:
compatible:
contains:
enum:
- adi,ad5310r
- adi,ad5681r
- adi,ad5682r
- adi,ad5683
- adi,ad5683r
then:
properties:
gain-gpios: false
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
spi {
#address-cells = <1>;
#size-cells = <0>;
@ -53,6 +89,8 @@ examples:
reg = <0>;
compatible = "adi,ad5310r";
vcc-supply = <&dac_vref0>;
reset-gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
ldac-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
};
};
...