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

title: Analog Devices AD4000 and similar Analog to Digital Converters

maintainers:
  - Marcelo Schmitt <marcelo.schmitt@analog.com>

description: |
  Analog Devices AD4000 family of Analog to Digital Converters with SPI support.
  Specifications can be found at:
    https://www.analog.com/media/en/technical-documentation/data-sheets/ad4000-4004-4008.pdf
    https://www.analog.com/media/en/technical-documentation/data-sheets/ad4001-4005.pdf
    https://www.analog.com/media/en/technical-documentation/data-sheets/ad4002-4006-4010.pdf
    https://www.analog.com/media/en/technical-documentation/data-sheets/ad4003-4007-4011.pdf
    https://www.analog.com/media/en/technical-documentation/data-sheets/ad4020-4021-4022.pdf
    https://www.analog.com/media/en/technical-documentation/data-sheets/adaq4001.pdf
    https://www.analog.com/media/en/technical-documentation/data-sheets/adaq4003.pdf

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

properties:
  compatible:
    oneOf:
      - const: adi,ad4000
      - items:
          - enum:
              - adi,ad4004
              - adi,ad4008
          - const: adi,ad4000

      - const: adi,ad4001
      - items:
          - enum:
              - adi,ad4005
          - const: adi,ad4001

      - const: adi,ad4002
      - items:
          - enum:
              - adi,ad4006
              - adi,ad4010
          - const: adi,ad4002

      - const: adi,ad4003
      - items:
          - enum:
              - adi,ad4007
              - adi,ad4011
          - const: adi,ad4003

      - const: adi,ad4020
      - items:
          - enum:
              - adi,ad4021
              - adi,ad4022
          - const: adi,ad4020

      - const: adi,adaq4001

      - const: adi,adaq4003

  reg:
    maxItems: 1

  spi-max-frequency:
    maximum: 102040816 # for VIO > 2.7 V, 81300813 for VIO > 1.7 V

  adi,sdi-pin:
    $ref: /schemas/types.yaml#/definitions/string
    enum: [ high, low, cs, sdi ]
    default: sdi
    description:
      Describes how the ADC SDI pin is wired. A value of "sdi" indicates that
      the ADC SDI is connected to host SDO. "high" indicates that the ADC SDI
      pin is hard-wired to logic high (VIO). "low" indicates that it is
      hard-wired low (GND). "cs" indicates that the ADC SDI pin is connected to
      the host CS line.

  '#daisy-chained-devices': true

  vdd-supply:
    description: A 1.8V supply that powers the chip (VDD).

  vio-supply:
    description:
      A 1.8V to 5.5V supply for the digital inputs and outputs (VIO).

  ref-supply:
    description:
      A 2.5 to 5V supply for the external reference voltage (REF).

  cnv-gpios:
    description:
      When provided, this property indicates the GPIO that is connected to the
      CNV pin.
    maxItems: 1

  adi,high-z-input:
    type: boolean
    description:
      High-Z mode allows the amplifier and RC filter in front of the ADC to be
      chosen based on the signal bandwidth of interest, rather than the settling
      requirements of the switched capacitor SAR ADC inputs.

  adi,gain-milli:
    description: |
      The hardware gain applied to the ADC input (in milli units).
      The gain provided by the ADC input scaler is defined by the hardware
      connections between chip pins OUT+, R1K-, R1K1-, R1K+, R1K1+, and OUT-.
      If not present, default to 1000 (no actual gain applied).
    $ref: /schemas/types.yaml#/definitions/uint16
    enum: [454, 909, 1000, 1900]
    default: 1000

  interrupts:
    description:
      The SDO pin can also function as a busy indicator. This node should be
      connected to an interrupt that is triggered when the SDO line goes low
      while the SDI line is high and the CNV line is low ("3-wire" mode) or the
      SDI line is low and the CNV line is high ("4-wire" mode); or when the SDO
      line goes high while the SDI and CNV lines are high (chain mode),
    maxItems: 1

required:
  - compatible
  - reg
  - vdd-supply
  - vio-supply
  - ref-supply

allOf:
  # The configuration register can only be accessed if SDI is connected to MOSI
  - if:
      required:
        - adi,sdi-pin
    then:
      properties:
        adi,high-z-input: false
  # chain mode has lower SCLK max rate
  - if:
      required:
        - '#daisy-chained-devices'
    then:
      properties:
        spi-max-frequency:
          maximum: 50000000 # for VIO > 2.7 V, 40000000 for VIO > 1.7 V
  # Gain property only applies to ADAQ devices
  - if:
      properties:
        compatible:
          not:
            contains:
              enum:
                - adi,adaq4001
                - adi,adaq4003
    then:
      properties:
        adi,gain-milli: false

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    spi {
        #address-cells = <1>;
        #size-cells = <0>;
        adc@0 {
            compatible = "adi,ad4020";
            reg = <0>;
            spi-max-frequency = <71000000>;
            vdd-supply = <&supply_1_8V>;
            vio-supply = <&supply_1_8V>;
            ref-supply = <&supply_5V>;
            adi,sdi-pin = "cs";
            cnv-gpios = <&gpio0 88 GPIO_ACTIVE_HIGH>;
        };
    };
  - |
    spi {
        #address-cells = <1>;
        #size-cells = <0>;
        adc@0 {
            compatible = "adi,adaq4003";
            reg = <0>;
            spi-max-frequency = <80000000>;
            vdd-supply = <&supply_1_8V>;
            vio-supply = <&supply_1_8V>;
            ref-supply = <&supply_5V>;
            adi,high-z-input;
            adi,gain-milli = /bits/ 16 <454>;
        };
    };
