xref: /linux/Documentation/devicetree/bindings/iio/adc/ingenic,adc.yaml (revision 4b4193256c8d3bc3a5397b5cd9494c2ad386317d)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2# Copyright 2019-2020 Artur Rojek
3%YAML 1.2
4---
5$id: "http://devicetree.org/schemas/iio/adc/ingenic,adc.yaml#"
6$schema: "http://devicetree.org/meta-schemas/core.yaml#"
7
8title: Ingenic JZ47xx ADC controller IIO bindings
9
10maintainers:
11  - Artur Rojek <contact@artur-rojek.eu>
12
13description: >
14  Industrial I/O subsystem bindings for ADC controller found in
15  Ingenic JZ47xx SoCs.
16
17  ADC clients must use the format described in iio-bindings.txt, giving
18  a phandle and IIO specifier pair ("io-channels") to the ADC controller.
19
20properties:
21  compatible:
22    enum:
23      - ingenic,jz4725b-adc
24      - ingenic,jz4740-adc
25      - ingenic,jz4770-adc
26
27  '#io-channel-cells':
28    const: 1
29    description:
30      Must be set to <1> to indicate channels are selected by index.
31
32  reg:
33    maxItems: 1
34
35  clocks:
36    maxItems: 1
37
38  clock-names:
39    items:
40      - const: adc
41
42  interrupts:
43    maxItems: 1
44
45required:
46  - compatible
47  - '#io-channel-cells'
48  - reg
49  - clocks
50  - clock-names
51  - interrupts
52
53additionalProperties: false
54
55examples:
56  - |
57    #include <dt-bindings/clock/jz4740-cgu.h>
58    #include <dt-bindings/iio/adc/ingenic,adc.h>
59
60    adc@10070000 {
61            compatible = "ingenic,jz4740-adc";
62            #io-channel-cells = <1>;
63
64            reg = <0x10070000 0x30>;
65
66            clocks = <&cgu JZ4740_CLK_ADC>;
67            clock-names = "adc";
68
69            interrupt-parent = <&intc>;
70            interrupts = <18>;
71    };
72