# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/dac/adi,ad5791.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Analog Devices AD5791 and similar DACs

maintainers:
  - Michael Hennerich <michael.hennerich@analog.com>
  - Jonathan Cameron <jic23@kernel.org>

properties:

  compatible:
    enum:
      - adi,ad5760
      - adi,ad5780
      - adi,ad5781
      - adi,ad5790
      - adi,ad5791

  reg:
    maxItems: 1

  vdd-supply: true
  vss-supply: true

  vcc-supply:
    description:
      Supply that powers the chip.

  iovcc-supply:
    description:
      Supply for the digital interface.

  vrefp-supply:
    description:
      Positive referance input voltage range. From 5v to (vdd - 2.5)

  vrefn-supply:
    description:
      Negative referance input voltage range. From (vss + 2.5) to 0.

  adi,rbuf-gain2-en:
    description: Specify to allow an external amplifier to be connected in a
      gain of two configuration.
    type: boolean

  reset-gpios:
    maxItems: 1

  clear-gpios:
    maxItems: 1

  ldac-gpios:
    description:
      LDAC pin to be used as a hardware trigger to update the DAC channels.
    maxItems: 1

required:
  - compatible
  - reg
  - vdd-supply
  - vss-supply
  - vcc-supply
  - iovcc-supply
  - vrefp-supply
  - vrefn-supply

allOf:
  - $ref: /schemas/spi/spi-peripheral-props.yaml#

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    spi {
        #address-cells = <1>;
        #size-cells = <0>;

        dac@0 {
            compatible = "adi,ad5791";
            reg = <0>;
            vss-supply = <&dac_vss>;
            vdd-supply = <&dac_vdd>;
            vcc-supply = <&dac_vcc>;
            iovcc-supply = <&dac_iovcc>;
            vrefp-supply = <&dac_vrefp>;
            vrefn-supply = <&dac_vrefn>;
            reset-gpios = <&gpio_bd 16 GPIO_ACTIVE_LOW>;
            clear-gpios = <&gpio_bd 17 GPIO_ACTIVE_LOW>;
            ldac-gpios = <&gpio_bd 18 GPIO_ACTIVE_LOW>;
        };
    };
...
