1416f882cSBeniamin Bia# SPDX-License-Identifier: GPL-2.0 2416f882cSBeniamin Bia%YAML 1.2 3416f882cSBeniamin Bia--- 4416f882cSBeniamin Bia$id: http://devicetree.org/schemas/iio/adc/adi,ad7606.yaml# 5416f882cSBeniamin Bia$schema: http://devicetree.org/meta-schemas/core.yaml# 6416f882cSBeniamin Bia 7416f882cSBeniamin Biatitle: Analog Devices AD7606 Simultaneous Sampling ADC 8416f882cSBeniamin Bia 9416f882cSBeniamin Biamaintainers: 102e645db3SKrzysztof Kozlowski - Michael Hennerich <michael.hennerich@analog.com> 11416f882cSBeniamin Bia 12416f882cSBeniamin Biadescription: | 13416f882cSBeniamin Bia Analog Devices AD7606 Simultaneous Sampling ADC 14416f882cSBeniamin Bia https://www.analog.com/media/en/technical-documentation/data-sheets/ad7606_7606-6_7606-4.pdf 156b4d6822SBeniamin Bia https://www.analog.com/media/en/technical-documentation/data-sheets/AD7606B.pdf 16416f882cSBeniamin Bia https://www.analog.com/media/en/technical-documentation/data-sheets/AD7616.pdf 17416f882cSBeniamin Bia 18416f882cSBeniamin Biaproperties: 19416f882cSBeniamin Bia compatible: 20416f882cSBeniamin Bia enum: 21416f882cSBeniamin Bia - adi,ad7605-4 22416f882cSBeniamin Bia - adi,ad7606-8 23416f882cSBeniamin Bia - adi,ad7606-6 24416f882cSBeniamin Bia - adi,ad7606-4 256b4d6822SBeniamin Bia - adi,ad7606b 26416f882cSBeniamin Bia - adi,ad7616 27416f882cSBeniamin Bia 28416f882cSBeniamin Bia reg: 29416f882cSBeniamin Bia maxItems: 1 30416f882cSBeniamin Bia 31416f882cSBeniamin Bia spi-cpha: true 32416f882cSBeniamin Bia 334828556dSRob Herring spi-cpol: true 344828556dSRob Herring 35f3dde260SRob Herring avcc-supply: true 36416f882cSBeniamin Bia 37416f882cSBeniamin Bia interrupts: 38416f882cSBeniamin Bia maxItems: 1 39416f882cSBeniamin Bia 40416f882cSBeniamin Bia adi,conversion-start-gpios: 41416f882cSBeniamin Bia description: 42416f882cSBeniamin Bia Must be the device tree identifier of the CONVST pin. 43416f882cSBeniamin Bia This logic input is used to initiate conversions on the analog 44416f882cSBeniamin Bia input channels. As the line is active high, it should be marked 45416f882cSBeniamin Bia GPIO_ACTIVE_HIGH. 46416f882cSBeniamin Bia maxItems: 1 47416f882cSBeniamin Bia 48416f882cSBeniamin Bia reset-gpios: 49416f882cSBeniamin Bia description: 50416f882cSBeniamin Bia Must be the device tree identifier of the RESET pin. If specified, 51416f882cSBeniamin Bia it will be asserted during driver probe. As the line is active high, 52416f882cSBeniamin Bia it should be marked GPIO_ACTIVE_HIGH. 53416f882cSBeniamin Bia maxItems: 1 54416f882cSBeniamin Bia 55416f882cSBeniamin Bia standby-gpios: 56416f882cSBeniamin Bia description: 57416f882cSBeniamin Bia Must be the device tree identifier of the STBY pin. This pin is used 58416f882cSBeniamin Bia to place the AD7606 into one of two power-down modes, Standby mode or 59416f882cSBeniamin Bia Shutdown mode. As the line is active low, it should be marked 60416f882cSBeniamin Bia GPIO_ACTIVE_LOW. 61416f882cSBeniamin Bia maxItems: 1 62416f882cSBeniamin Bia 63416f882cSBeniamin Bia adi,first-data-gpios: 64416f882cSBeniamin Bia description: 65416f882cSBeniamin Bia Must be the device tree identifier of the FRSTDATA pin. 66416f882cSBeniamin Bia The FRSTDATA output indicates when the first channel, V1, is 67416f882cSBeniamin Bia being read back on either the parallel, byte or serial interface. 68416f882cSBeniamin Bia As the line is active high, it should be marked GPIO_ACTIVE_HIGH. 69416f882cSBeniamin Bia maxItems: 1 70416f882cSBeniamin Bia 71416f882cSBeniamin Bia adi,range-gpios: 72416f882cSBeniamin Bia description: 73416f882cSBeniamin Bia Must be the device tree identifier of the RANGE pin. The polarity on 74416f882cSBeniamin Bia this pin determines the input range of the analog input channels. If 75416f882cSBeniamin Bia this pin is tied to a logic high, the analog input range is ±10V for 76416f882cSBeniamin Bia all channels. If this pin is tied to a logic low, the analog input range 77416f882cSBeniamin Bia is ±5V for all channels. As the line is active high, it should be marked 78416f882cSBeniamin Bia GPIO_ACTIVE_HIGH. 79416f882cSBeniamin Bia maxItems: 1 80416f882cSBeniamin Bia 81416f882cSBeniamin Bia adi,oversampling-ratio-gpios: 82416f882cSBeniamin Bia description: 83416f882cSBeniamin Bia Must be the device tree identifier of the over-sampling 84416f882cSBeniamin Bia mode pins. As the line is active high, it should be marked 85416f882cSBeniamin Bia GPIO_ACTIVE_HIGH. 86a6c4f77cSBeniamin Bia maxItems: 3 87416f882cSBeniamin Bia 88416f882cSBeniamin Bia adi,sw-mode: 89416f882cSBeniamin Bia description: 906b4d6822SBeniamin Bia Software mode of operation, so far available only for ad7616 and ad7606b. 91416f882cSBeniamin Bia It is enabled when all three oversampling mode pins are connected to 92416f882cSBeniamin Bia high level. The device is configured by the corresponding registers. If the 93416f882cSBeniamin Bia adi,oversampling-ratio-gpios property is defined, then the driver will set the 94416f882cSBeniamin Bia oversampling gpios to high. Otherwise, it is assumed that the pins are hardwired 95416f882cSBeniamin Bia to VDD. 96416f882cSBeniamin Bia type: boolean 97416f882cSBeniamin Bia 98416f882cSBeniamin Biarequired: 99416f882cSBeniamin Bia - compatible 100416f882cSBeniamin Bia - reg 101416f882cSBeniamin Bia - spi-cpha 102416f882cSBeniamin Bia - avcc-supply 103416f882cSBeniamin Bia - interrupts 104416f882cSBeniamin Bia - adi,conversion-start-gpios 105416f882cSBeniamin Bia 106*80137388SKrzysztof KozlowskiallOf: 107*80137388SKrzysztof Kozlowski - $ref: /schemas/spi/spi-peripheral-props.yaml# 108*80137388SKrzysztof Kozlowski 109*80137388SKrzysztof KozlowskiunevaluatedProperties: false 1106fdc6e23SRob Herring 111416f882cSBeniamin Biaexamples: 112416f882cSBeniamin Bia - | 113416f882cSBeniamin Bia #include <dt-bindings/gpio/gpio.h> 114416f882cSBeniamin Bia #include <dt-bindings/interrupt-controller/irq.h> 115416f882cSBeniamin Bia spi0 { 116416f882cSBeniamin Bia #address-cells = <1>; 117416f882cSBeniamin Bia #size-cells = <0>; 118416f882cSBeniamin Bia 119416f882cSBeniamin Bia adc@0 { 120416f882cSBeniamin Bia compatible = "adi,ad7606-8"; 121416f882cSBeniamin Bia reg = <0>; 122416f882cSBeniamin Bia spi-max-frequency = <1000000>; 123416f882cSBeniamin Bia spi-cpol; 124416f882cSBeniamin Bia spi-cpha; 125416f882cSBeniamin Bia 126416f882cSBeniamin Bia avcc-supply = <&adc_vref>; 127416f882cSBeniamin Bia 128416f882cSBeniamin Bia interrupts = <25 IRQ_TYPE_EDGE_FALLING>; 129416f882cSBeniamin Bia interrupt-parent = <&gpio>; 130416f882cSBeniamin Bia 131416f882cSBeniamin Bia adi,conversion-start-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>; 132416f882cSBeniamin Bia reset-gpios = <&gpio 27 GPIO_ACTIVE_HIGH>; 133416f882cSBeniamin Bia adi,first-data-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>; 134a6c4f77cSBeniamin Bia adi,oversampling-ratio-gpios = <&gpio 18 GPIO_ACTIVE_HIGH>, 135a6c4f77cSBeniamin Bia <&gpio 23 GPIO_ACTIVE_HIGH>, 136a6c4f77cSBeniamin Bia <&gpio 26 GPIO_ACTIVE_HIGH>; 137416f882cSBeniamin Bia standby-gpios = <&gpio 24 GPIO_ACTIVE_LOW>; 138416f882cSBeniamin Bia adi,sw-mode; 139416f882cSBeniamin Bia }; 140416f882cSBeniamin Bia }; 141416f882cSBeniamin Bia... 142