177 lines
4.3 KiB
YAML
177 lines
4.3 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/iio/adc/adi,ad7625.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Analog Devices Fast PulSAR Analog to Digital Converters
|
|
|
|
maintainers:
|
|
- Michael Hennerich <Michael.Hennerich@analog.com>
|
|
- Nuno Sá <nuno.sa@analog.com>
|
|
|
|
description: |
|
|
A family of single channel differential analog to digital converters.
|
|
|
|
* https://www.analog.com/en/products/ad7625.html
|
|
* https://www.analog.com/en/products/ad7626.html
|
|
* https://www.analog.com/en/products/ad7960.html
|
|
* https://www.analog.com/en/products/ad7961.html
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- adi,ad7625
|
|
- adi,ad7626
|
|
- adi,ad7960
|
|
- adi,ad7961
|
|
|
|
vdd1-supply: true
|
|
vdd2-supply: true
|
|
vio-supply: true
|
|
|
|
ref-supply:
|
|
description:
|
|
Voltage regulator for the external reference voltage (REF).
|
|
|
|
refin-supply:
|
|
description:
|
|
Voltage regulator for the reference buffer input (REFIN).
|
|
|
|
clocks:
|
|
description:
|
|
The clock connected to the CLK pins, gated by the clk_gate PWM.
|
|
maxItems: 1
|
|
|
|
pwms:
|
|
items:
|
|
- description: PWM connected to the CNV input on the ADC.
|
|
- description: PWM that gates the clock connected to the ADC's CLK input.
|
|
|
|
pwm-names:
|
|
items:
|
|
- const: cnv
|
|
- const: clk_gate
|
|
|
|
io-backends:
|
|
description:
|
|
The AXI ADC IP block connected to the D+/- and DCO+/- lines of the
|
|
ADC. An example backend can be found at
|
|
http://analogdevicesinc.github.io/hdl/projects/pulsar_lvds/index.html.
|
|
maxItems: 1
|
|
|
|
adi,no-dco:
|
|
$ref: /schemas/types.yaml#/definitions/flag
|
|
description:
|
|
Indicates the wiring of the DCO+/- lines. If true, then they are
|
|
grounded and the device is in self-clocked mode. If this is not
|
|
present, then the device is in echoed clock mode.
|
|
|
|
adi,en0-always-on:
|
|
$ref: /schemas/types.yaml#/definitions/flag
|
|
description:
|
|
Indicates if EN0 is hard-wired to the high state. If neither this
|
|
nor en0-gpios are present, then EN0 is hard-wired low.
|
|
|
|
adi,en1-always-on:
|
|
$ref: /schemas/types.yaml#/definitions/flag
|
|
description:
|
|
Indicates if EN1 is hard-wired to the high state. If neither this
|
|
nor en1-gpios are present, then EN1 is hard-wired low.
|
|
|
|
adi,en2-always-on:
|
|
$ref: /schemas/types.yaml#/definitions/flag
|
|
description:
|
|
Indicates if EN2 is hard-wired to the high state. If neither this
|
|
nor en2-gpios are present, then EN2 is hard-wired low.
|
|
|
|
adi,en3-always-on:
|
|
$ref: /schemas/types.yaml#/definitions/flag
|
|
description:
|
|
Indicates if EN3 is hard-wired to the high state. If neither this
|
|
nor en3-gpios are present, then EN3 is hard-wired low.
|
|
|
|
en0-gpios:
|
|
description:
|
|
Configurable EN0 pin.
|
|
|
|
en1-gpios:
|
|
description:
|
|
Configurable EN1 pin.
|
|
|
|
en2-gpios:
|
|
description:
|
|
Configurable EN2 pin.
|
|
|
|
en3-gpios:
|
|
description:
|
|
Configurable EN3 pin.
|
|
|
|
required:
|
|
- compatible
|
|
- vdd1-supply
|
|
- vdd2-supply
|
|
- vio-supply
|
|
- clocks
|
|
- pwms
|
|
- pwm-names
|
|
- io-backends
|
|
|
|
allOf:
|
|
- if:
|
|
required:
|
|
- ref-supply
|
|
then:
|
|
properties:
|
|
refin-supply: false
|
|
- if:
|
|
required:
|
|
- refin-supply
|
|
then:
|
|
properties:
|
|
ref-supply: false
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- adi,ad7625
|
|
- adi,ad7626
|
|
then:
|
|
properties:
|
|
en2-gpios: false
|
|
en3-gpios: false
|
|
adi,en2-always-on: false
|
|
adi,en3-always-on: false
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- adi,ad7960
|
|
- adi,ad7961
|
|
then:
|
|
# ad796x parts must have one of the two supplies
|
|
oneOf:
|
|
- required: [ref-supply]
|
|
- required: [refin-supply]
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
adc {
|
|
compatible = "adi,ad7625";
|
|
vdd1-supply = <&supply_5V>;
|
|
vdd2-supply = <&supply_2_5V>;
|
|
vio-supply = <&supply_2_5V>;
|
|
io-backends = <&axi_adc>;
|
|
clocks = <&ref_clk>;
|
|
pwms = <&axi_pwm_gen 0 0>, <&axi_pwm_gen 1 0>;
|
|
pwm-names = "cnv", "clk_gate";
|
|
en0-gpios = <&gpio0 86 GPIO_ACTIVE_HIGH>;
|
|
en1-gpios = <&gpio0 87 GPIO_ACTIVE_HIGH>;
|
|
};
|