87 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/iio/adc/envelope-detector.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: ADC envelope detector using a DAC and a comparator8 9maintainers:10 - Peter Rosin <peda@axentia.se>11 12description: |13 The DAC is used to find the peak level of an alternating voltage input14 signal by a binary search using the output of a comparator wired to15 an interrupt pin. Like so:16 _17 | \18 input +------>-------|+ \19 | \20 .-------. | }---.21 | | | / |22 | dac|-->--|- / |23 | | |_/ |24 | | |25 | | |26 | irq|------<-------'27 | |28 '-------'29 30properties:31 compatible:32 const: axentia,tse850-envelope-detector33 34 io-channels:35 maxItems: 136 description: Channel node of the dac to be used for comparator input.37 38 io-channel-names:39 const: dac40 41 interrupts:42 maxItems: 143 44 interrupt-names:45 const: comp46 47required:48 - compatible49 - io-channels50 - io-channel-names51 - interrupts52 - interrupt-names53 54additionalProperties: false55 56examples: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 = <®_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...87