1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/iio/adc/adi,ad7292.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Analog Devices AD7292 10-Bit Monitor and Control System
8
9maintainers:
10  - Marcelo Schmitt <marcelo.schmitt1@gmail.com>
11
12description: |
13  Analog Devices AD7292 10-Bit Monitor and Control System with ADC, DACs,
14  Temperature Sensor, and GPIOs
15
16  Specifications about the part can be found at:
17    https://www.analog.com/media/en/technical-documentation/data-sheets/ad7292.pdf
18
19properties:
20  compatible:
21    enum:
22      - adi,ad7292
23
24  reg:
25    maxItems: 1
26
27  vref-supply:
28    description: |
29      The regulator supply for ADC and DAC reference voltage.
30
31  spi-cpha: true
32
33  '#address-cells':
34    const: 1
35
36  '#size-cells':
37    const: 0
38
39required:
40  - compatible
41  - reg
42  - spi-cpha
43
44patternProperties:
45  "^channel@[0-7]$":
46    type: object
47    description: |
48      Represents the external channels which are connected to the ADC.
49      See Documentation/devicetree/bindings/iio/adc/adc.txt.
50
51    properties:
52      reg:
53        description: |
54          The channel number. It can have up to 8 channels numbered from 0 to 7.
55        items:
56          - minimum: 0
57            maximum: 7
58
59      diff-channels:
60        description: see Documentation/devicetree/bindings/iio/adc/adc.txt
61        maxItems: 1
62
63    required:
64      - reg
65
66examples:
67  - |
68    spi {
69      #address-cells = <1>;
70      #size-cells = <0>;
71
72      ad7292: adc@0 {
73        compatible = "adi,ad7292";
74        reg = <0>;
75        spi-max-frequency = <25000000>;
76        vref-supply = <&adc_vref>;
77        spi-cpha;
78
79        #address-cells = <1>;
80        #size-cells = <0>;
81
82        channel@0 {
83          reg = <0>;
84          diff-channels = <0 1>;
85        };
86        channel@2 {
87          reg = <2>;
88        };
89        channel@3 {
90          reg = <3>;
91        };
92        channel@4 {
93          reg = <4>;
94        };
95        channel@5 {
96          reg = <5>;
97        };
98        channel@6 {
99          reg = <6>;
100        };
101        channel@7 {
102          reg = <7>;
103        };
104      };
105    };
106