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