]> git.ipfire.org Git - thirdparty/u-boot.git/blob - Bindings/iio/adc/envelope-detector.yaml
Squashed 'dts/upstream/' content from commit aaba2d45dc2a
[thirdparty/u-boot.git] / Bindings / iio / adc / envelope-detector.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/iio/adc/envelope-detector.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: ADC envelope detector using a DAC and a comparator
8
9 maintainers:
10 - Peter Rosin <peda@axentia.se>
11
12 description: |
13 The DAC is used to find the peak level of an alternating voltage input
14 signal by a binary search using the output of a comparator wired to
15 an interrupt pin. Like so:
16 _
17 | \
18 input +------>-------|+ \
19 | \
20 .-------. | }---.
21 | | | / |
22 | dac|-->--|- / |
23 | | |_/ |
24 | | |
25 | | |
26 | irq|------<-------'
27 | |
28 '-------'
29
30 properties:
31 compatible:
32 const: axentia,tse850-envelope-detector
33
34 io-channels:
35 maxItems: 1
36 description: Channel node of the dac to be used for comparator input.
37
38 io-channel-names:
39 const: dac
40
41 interrupts:
42 maxItems: 1
43
44 interrupt-names:
45 const: comp
46
47 required:
48 - compatible
49 - io-channels
50 - io-channel-names
51 - interrupts
52 - interrupt-names
53
54 additionalProperties: false
55
56 examples:
57 - |
58 #include <dt-bindings/interrupt-controller/irq.h>
59 i2c {
60 #address-cells = <1>;
61 #size-cells = <0>;
62 dpot: dpot@28 {
63 compatible = "microchip,mcp4651-104";
64 reg = <0x28>;
65 #io-channel-cells = <1>;
66 };
67 };
68
69 dac: dac {
70 compatible = "dpot-dac";
71 vref-supply = <&reg_3v3>;
72 io-channels = <&dpot 0>;
73 io-channel-names = "dpot";
74 #io-channel-cells = <1>;
75 };
76
77 envelope-detector {
78 compatible = "axentia,tse850-envelope-detector";
79 io-channels = <&dac 0>;
80 io-channel-names = "dac";
81
82 interrupt-parent = <&gpio>;
83 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
84 interrupt-names = "comp";
85 };
86 ...