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,ad7091r5.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Analog Devices AD7091R-2/-4/-5/-8 Multi-Channel 12-Bit ADCs 8 9maintainers: 10 - Michael Hennerich <michael.hennerich@analog.com> 11 - Marcelo Schmitt <marcelo.schmitt@analog.com> 12 13description: | 14 Analog Devices AD7091R5 4-Channel 12-Bit ADC supporting I2C interface 15 https://www.analog.com/media/en/technical-documentation/data-sheets/ad7091r-5.pdf 16 Analog Devices AD7091R-2/AD7091R-4/AD7091R-8 2-/4-/8-Channel 12-Bit ADCs 17 supporting SPI interface 18 https://www.analog.com/media/en/technical-documentation/data-sheets/AD7091R-2_7091R-4_7091R-8.pdf 19 20properties: 21 compatible: 22 enum: 23 - adi,ad7091r2 24 - adi,ad7091r4 25 - adi,ad7091r5 26 - adi,ad7091r8 27 28 reg: 29 maxItems: 1 30 31 vdd-supply: 32 description: 33 Provide VDD power to the sensor (VDD range is from 2.7V to 5.25V). 34 35 vdrive-supply: 36 description: 37 Determines the voltage level at which the interface logic will operate. 38 The V_drive voltage range is from 1.8V to 5.25V and must not exceed VDD by 39 more than 0.3V. 40 41 vref-supply: 42 description: 43 Phandle to the vref power supply 44 45 convst-gpios: 46 description: 47 GPIO connected to the CONVST pin. 48 This logic input is used to initiate conversions on the analog 49 input channels. 50 maxItems: 1 51 52 reset-gpios: 53 maxItems: 1 54 55 interrupts: 56 description: 57 Interrupt for signaling when conversion results exceed the high limit for 58 ADC readings or fall below the low limit for them. Interrupt source must 59 be attached to ALERT/BUSY/GPO0 pin. 60 maxItems: 1 61 62required: 63 - compatible 64 - reg 65 66allOf: 67 - $ref: /schemas/spi/spi-peripheral-props.yaml# 68 69 # AD7091R-2 does not have ALERT/BUSY/GPO pin 70 - if: 71 properties: 72 compatible: 73 contains: 74 enum: 75 - adi,ad7091r2 76 then: 77 properties: 78 interrupts: false 79 80 - if: 81 properties: 82 compatible: 83 contains: 84 enum: 85 - adi,ad7091r2 86 - adi,ad7091r4 87 - adi,ad7091r8 88 then: 89 required: 90 - convst-gpios 91 92unevaluatedProperties: false 93 94examples: 95 - | 96 #include <dt-bindings/gpio/gpio.h> 97 #include <dt-bindings/interrupt-controller/irq.h> 98 i2c { 99 #address-cells = <1>; 100 #size-cells = <0>; 101 102 adc@2f { 103 compatible = "adi,ad7091r5"; 104 reg = <0x2f>; 105 106 interrupts = <25 IRQ_TYPE_EDGE_FALLING>; 107 interrupt-parent = <&gpio>; 108 }; 109 }; 110 - | 111 #include <dt-bindings/gpio/gpio.h> 112 #include <dt-bindings/interrupt-controller/irq.h> 113 spi { 114 #address-cells = <1>; 115 #size-cells = <0>; 116 117 adc@0 { 118 compatible = "adi,ad7091r8"; 119 reg = <0x0>; 120 spi-max-frequency = <1000000>; 121 vref-supply = <&adc_vref>; 122 convst-gpios = <&gpio 25 GPIO_ACTIVE_LOW>; 123 reset-gpios = <&gpio 27 GPIO_ACTIVE_LOW>; 124 interrupts = <22 IRQ_TYPE_EDGE_FALLING>; 125 interrupt-parent = <&gpio>; 126 }; 127 }; 128... 129