178 lines
4.2 KiB
YAML
178 lines
4.2 KiB
YAML
|
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||
|
# Copyright 2022 Analog Devices Inc.
|
||
|
%YAML 1.2
|
||
|
---
|
||
|
$id: http://devicetree.org/schemas/iio/adc/adi,max11410.yaml#
|
||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||
|
|
||
|
title: Analog Devices MAX11410 ADC device driver
|
||
|
|
||
|
maintainers:
|
||
|
- Ibrahim Tilki <Ibrahim.Tilki@analog.com>
|
||
|
|
||
|
description: |
|
||
|
Bindings for the Analog Devices MAX11410 ADC device. Datasheet can be
|
||
|
found here:
|
||
|
https://datasheets.maximintegrated.com/en/ds/MAX11410.pdf
|
||
|
|
||
|
properties:
|
||
|
compatible:
|
||
|
enum:
|
||
|
- adi,max11410
|
||
|
|
||
|
reg:
|
||
|
maxItems: 1
|
||
|
|
||
|
interrupts:
|
||
|
minItems: 1
|
||
|
maxItems: 2
|
||
|
|
||
|
interrupt-names:
|
||
|
description: Name of the gpio pin of max11410 used for IRQ
|
||
|
minItems: 1
|
||
|
items:
|
||
|
- enum: [gpio0, gpio1]
|
||
|
- const: gpio1
|
||
|
|
||
|
'#address-cells':
|
||
|
const: 1
|
||
|
|
||
|
'#size-cells':
|
||
|
const: 0
|
||
|
|
||
|
avdd-supply:
|
||
|
description: Optional avdd supply. Used as reference when no explicit reference supplied.
|
||
|
|
||
|
vref0p-supply:
|
||
|
description: vref0p supply can be used as reference for conversion.
|
||
|
|
||
|
vref1p-supply:
|
||
|
description: vref1p supply can be used as reference for conversion.
|
||
|
|
||
|
vref2p-supply:
|
||
|
description: vref2p supply can be used as reference for conversion.
|
||
|
|
||
|
vref0n-supply:
|
||
|
description: vref0n supply can be used as reference for conversion.
|
||
|
|
||
|
vref1n-supply:
|
||
|
description: vref1n supply can be used as reference for conversion.
|
||
|
|
||
|
vref2n-supply:
|
||
|
description: vref2n supply can be used as reference for conversion.
|
||
|
|
||
|
spi-max-frequency:
|
||
|
maximum: 8000000
|
||
|
|
||
|
patternProperties:
|
||
|
"^channel(@[0-9])?$":
|
||
|
$ref: adc.yaml
|
||
|
type: object
|
||
|
description: Represents the external channels which are connected to the ADC.
|
||
|
|
||
|
properties:
|
||
|
reg:
|
||
|
description: The channel number in single-ended mode.
|
||
|
minimum: 0
|
||
|
maximum: 9
|
||
|
|
||
|
adi,reference:
|
||
|
description: |
|
||
|
Select the reference source to use when converting on
|
||
|
the specific channel. Valid values are:
|
||
|
0: VREF0P/VREF0N
|
||
|
1: VREF1P/VREF1N
|
||
|
2: VREF2P/VREF2N
|
||
|
3: AVDD/AGND
|
||
|
4: VREF0P/AGND
|
||
|
5: VREF1P/AGND
|
||
|
6: VREF2P/AGND
|
||
|
If this field is left empty, AVDD/AGND is selected.
|
||
|
$ref: /schemas/types.yaml#/definitions/uint32
|
||
|
enum: [0, 1, 2, 3, 4, 5, 6]
|
||
|
default: 3
|
||
|
|
||
|
adi,input-mode:
|
||
|
description: |
|
||
|
Select signal path of input channels. Valid values are:
|
||
|
0: Buffered, low-power, unity-gain path (default)
|
||
|
1: Bypass path
|
||
|
2: PGA path
|
||
|
$ref: /schemas/types.yaml#/definitions/uint32
|
||
|
enum: [0, 1, 2]
|
||
|
default: 0
|
||
|
|
||
|
diff-channels: true
|
||
|
|
||
|
bipolar: true
|
||
|
|
||
|
settling-time-us: true
|
||
|
|
||
|
adi,buffered-vrefp:
|
||
|
description: Enable buffered mode for positive reference.
|
||
|
type: boolean
|
||
|
|
||
|
adi,buffered-vrefn:
|
||
|
description: Enable buffered mode for negative reference.
|
||
|
type: boolean
|
||
|
|
||
|
required:
|
||
|
- reg
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
required:
|
||
|
- compatible
|
||
|
- reg
|
||
|
|
||
|
allOf:
|
||
|
- $ref: /schemas/spi/spi-peripheral-props.yaml#
|
||
|
|
||
|
unevaluatedProperties: false
|
||
|
|
||
|
examples:
|
||
|
- |
|
||
|
#include <dt-bindings/interrupt-controller/irq.h>
|
||
|
spi {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
adc@0 {
|
||
|
reg = <0>;
|
||
|
compatible = "adi,max11410";
|
||
|
spi-max-frequency = <8000000>;
|
||
|
|
||
|
interrupt-parent = <&gpio>;
|
||
|
interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
|
||
|
interrupt-names = "gpio1";
|
||
|
|
||
|
avdd-supply = <&adc_avdd>;
|
||
|
|
||
|
vref1p-supply = <&adc_vref1p>;
|
||
|
vref1n-supply = <&adc_vref1n>;
|
||
|
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
channel@0 {
|
||
|
reg = <0>;
|
||
|
};
|
||
|
|
||
|
channel@1 {
|
||
|
reg = <1>;
|
||
|
diff-channels = <2 3>;
|
||
|
adi,reference = <1>;
|
||
|
bipolar;
|
||
|
settling-time-us = <100000>;
|
||
|
};
|
||
|
|
||
|
channel@2 {
|
||
|
reg = <2>;
|
||
|
diff-channels = <7 9>;
|
||
|
adi,reference = <5>;
|
||
|
adi,input-mode = <2>;
|
||
|
settling-time-us = <50000>;
|
||
|
};
|
||
|
};
|
||
|
};
|