176 lines
3.9 KiB
YAML
176 lines
3.9 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
|
# Copyright 2019 Analog Devices Inc.
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/iio/adc/adi,ad7476.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: AD7476 and similar simple SPI ADCs from multiple manufacturers.
|
|
|
|
maintainers:
|
|
- Michael Hennerich <michael.hennerich@analog.com>
|
|
|
|
description: |
|
|
A lot of simple SPI ADCs have very straight forward interfaces.
|
|
They typically don't provide a MOSI pin, simply reading out data
|
|
on MISO when the clock toggles.
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- adi,ad7091
|
|
- adi,ad7091r
|
|
- adi,ad7273
|
|
- adi,ad7274
|
|
- adi,ad7276
|
|
- adi,ad7277
|
|
- adi,ad7278
|
|
- adi,ad7466
|
|
- adi,ad7467
|
|
- adi,ad7468
|
|
- adi,ad7475
|
|
- adi,ad7476
|
|
- adi,ad7476a
|
|
- adi,ad7477
|
|
- adi,ad7477a
|
|
- adi,ad7478
|
|
- adi,ad7478a
|
|
- adi,ad7495
|
|
- adi,ad7910
|
|
- adi,ad7920
|
|
- adi,ad7940
|
|
- ti,adc081s
|
|
- ti,adc101s
|
|
- ti,adc121s
|
|
- ti,ads7866
|
|
- ti,ads7867
|
|
- ti,ads7868
|
|
- lltc,ltc2314-14
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
vcc-supply:
|
|
description:
|
|
Main powersupply voltage for the chips, sometimes referred to as VDD on
|
|
datasheets. If there is no separate vref-supply, then this is needed
|
|
to establish channel scaling.
|
|
|
|
vdrive-supply:
|
|
description:
|
|
Some devices have separate supply for their digital control side.
|
|
|
|
vref-supply:
|
|
description:
|
|
Some devices have a specific reference voltage supplied on a different pin
|
|
to the other supplies. Needed to be able to establish channel scaling
|
|
unless there is also an internal reference available (e.g. ad7091r)
|
|
|
|
adi,conversion-start-gpios:
|
|
description: A GPIO used to trigger the start of a conversion
|
|
maxItems: 1
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
|
|
allOf:
|
|
- $ref: /schemas/spi/spi-peripheral-props.yaml#
|
|
|
|
# Devices where reference is vcc
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- adi,ad7091
|
|
- adi,ad7276
|
|
- adi,ad7277
|
|
- adi,ad7278
|
|
- adi,ad7466
|
|
- adi,ad7467
|
|
- adi,ad7468
|
|
- adi,ad7940
|
|
- ti,adc081s
|
|
- ti,adc101s
|
|
- ti,adc121s
|
|
- ti,ads7866
|
|
- ti,ads7868
|
|
then:
|
|
required:
|
|
- vcc-supply
|
|
# Devices with a vref
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- adi,ad7091r
|
|
- adi,ad7273
|
|
- adi,ad7274
|
|
- adi,ad7475
|
|
- lltc,ltc2314-14
|
|
then:
|
|
properties:
|
|
vref-supply: true
|
|
else:
|
|
properties:
|
|
vref-supply: false
|
|
# Devices with a vref where it is not optional
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- adi,ad7273
|
|
- adi,ad7274
|
|
- adi,ad7475
|
|
- lltc,ltc2314-14
|
|
then:
|
|
required:
|
|
- vref-supply
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- adi,ad7475
|
|
- adi,ad7495
|
|
then:
|
|
properties:
|
|
vdrive-supply: true
|
|
else:
|
|
properties:
|
|
vdrive-supply: false
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- adi,ad7091
|
|
- adi,ad7091r
|
|
then:
|
|
properties:
|
|
adi,conversion-start-gpios: true
|
|
else:
|
|
properties:
|
|
adi,conversion-start-gpios: false
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
spi {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
adc@0 {
|
|
compatible = "adi,ad7091r";
|
|
reg = <0>;
|
|
spi-max-frequency = <5000000>;
|
|
vcc-supply = <&adc_vcc>;
|
|
vref-supply = <&adc_vref>;
|
|
};
|
|
};
|
|
...
|