Path: blob/main/sys/contrib/device-tree/Bindings/iio/adc/adi,ad7606.yaml
48406 views
# SPDX-License-Identifier: GPL-2.01%YAML 1.22---3$id: http://devicetree.org/schemas/iio/adc/adi,ad7606.yaml#4$schema: http://devicetree.org/meta-schemas/core.yaml#56title: Analog Devices AD7606 Simultaneous Sampling ADC78maintainers:9- Michael Hennerich <michael.hennerich@analog.com>1011description: |12Analog Devices AD7606 Simultaneous Sampling ADC13https://www.analog.com/media/en/technical-documentation/data-sheets/AD7605-4.pdf14https://www.analog.com/media/en/technical-documentation/data-sheets/ad7606_7606-6_7606-4.pdf15https://www.analog.com/media/en/technical-documentation/data-sheets/AD7606B.pdf16https://www.analog.com/media/en/technical-documentation/data-sheets/AD7616.pdf1718properties:19compatible:20enum:21- adi,ad7605-422- adi,ad7606-423- adi,ad7606-624- adi,ad7606-8 # Referred to as AD7606 (without -8) in the datasheet25- adi,ad7606b26- adi,ad76162728reg:29maxItems: 13031spi-cpha: true3233spi-cpol: true3435avcc-supply: true3637vdrive-supply:38description:39Determines the voltage level at which the interface logic pins will40operate.4142refin-supply:43description:44The voltage supply for optional external reference voltage.4546interrupts:47description:48The BUSY pin falling edge indicates that the conversion is over, and thus49new data is available.50maxItems: 15152adi,conversion-start-gpios:53description:54Must be the device tree identifier of the CONVST pin(s). This logic input55is used to initiate conversions on the analog input channels. As the line56is active high, it should be marked GPIO_ACTIVE_HIGH.57minItems: 158maxItems: 25960reset-gpios:61description:62Must be the device tree identifier of the RESET pin. If specified, it will63be asserted during driver probe. On the AD7606x, as the line is active64high, it should be marked GPIO_ACTIVE_HIGH. On the AD7616, as the line is65active low, it should be marked GPIO_ACTIVE_LOW.66maxItems: 16768standby-gpios:69description:70Must be the device tree identifier of the STBY pin. This pin is used to71place the AD7606 into one of two power-down modes, Standby mode or72Shutdown mode. As the line is active low, it should be marked73GPIO_ACTIVE_LOW.74maxItems: 17576adi,first-data-gpios:77description:78Must be the device tree identifier of the FRSTDATA pin. The FRSTDATA79output indicates when the first channel, V1, is being read back on either80the parallel, byte or serial interface. As the line is active high, it81should be marked GPIO_ACTIVE_HIGH.82maxItems: 18384adi,range-gpios:85description:86Must be the device tree identifier of the RANGE pin. The state on this87pin determines the input range of the analog input channels. If this pin88is tied to a logic high, the analog input range is ±10V for all channels.89On the AD760X, if this pin is tied to a logic low, the analog input range90is ±5V for all channels. As the line is active high, it should be marked91GPIO_ACTIVE_HIGH. On the AD7616, there are 2 pins, and if the 2 pins are92tied to a logic high, software mode is enabled, otherwise one of the 393possible range values is selected.94minItems: 195maxItems: 29697adi,oversampling-ratio-gpios:98description:99Must be the device tree identifier of the over-sampling mode pins. As the100line is active high, it should be marked GPIO_ACTIVE_HIGH. On the AD7606X101parts that support it, if all 3 pins are tied to a logic high, software102mode is enabled.103maxItems: 3104105adi,sw-mode:106description:107Software mode of operation, so far available only for AD7616 and AD7606B.108It is enabled when all three oversampling mode pins are connected to high109level for the AD7606B, or both the range selection are connected to high110level for the AD7616. The device is configured by the corresponding111registers. If the adi,oversampling-ratio-gpios property is defined, then112the driver will set the oversampling gpios to high. Otherwise, it is113assumed that the pins are hardwired to VDD.114type: boolean115116required:117- compatible118- reg119- spi-cpha120- avcc-supply121- vdrive-supply122- interrupts123- adi,conversion-start-gpios124125allOf:126- $ref: /schemas/spi/spi-peripheral-props.yaml#127128- if:129properties:130compatible:131contains:132const: adi,ad7616133then:134properties:135adi,first-data-gpios: false136standby-gpios: false137adi,range-gpios:138maxItems: 2139else:140properties:141adi,range-gpios:142maxItems: 1143144- if:145properties:146compatible:147contains:148enum:149- adi,ad7605-4150- adi,ad7616151then:152properties:153adi,oversampling-ratio-gpios: false154155- if:156properties:157compatible:158contains:159enum:160- adi,ad7605-4161- adi,ad7606-4162- adi,ad7606-6163- adi,ad7606-8164then:165properties:166adi,sw-mode: false167else:168properties:169adi,conversion-start-gpios:170maxItems: 1171172unevaluatedProperties: false173174examples:175- |176#include <dt-bindings/gpio/gpio.h>177#include <dt-bindings/interrupt-controller/irq.h>178spi {179#address-cells = <1>;180#size-cells = <0>;181182adc@0 {183compatible = "adi,ad7606-8";184reg = <0>;185spi-max-frequency = <1000000>;186spi-cpol;187spi-cpha;188189avcc-supply = <&adc_vref>;190vdrive-supply = <&vdd_supply>;191192interrupts = <25 IRQ_TYPE_EDGE_FALLING>;193interrupt-parent = <&gpio>;194195adi,conversion-start-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;196reset-gpios = <&gpio 27 GPIO_ACTIVE_HIGH>;197adi,first-data-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;198adi,oversampling-ratio-gpios = <&gpio 18 GPIO_ACTIVE_HIGH>,199<&gpio 23 GPIO_ACTIVE_HIGH>,200<&gpio 26 GPIO_ACTIVE_HIGH>;201standby-gpios = <&gpio 24 GPIO_ACTIVE_LOW>;202};203};204...205206207