summaryrefslogtreecommitdiffstats
path: root/dts/Bindings/iio/adc/adi,ad7124.txt
blob: 416273dce56991e9a07a92c860c89f5ad8e383da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
Analog Devices AD7124 ADC device driver

Required properties for the AD7124:
	- compatible: Must be one of "adi,ad7124-4" or "adi,ad7124-8"
	- reg: SPI chip select number for the device
	- spi-max-frequency: Max SPI frequency to use
		see: Documentation/devicetree/bindings/spi/spi-bus.txt
	- clocks: phandle to the master clock (mclk)
		see: Documentation/devicetree/bindings/clock/clock-bindings.txt
	- clock-names: Must be "mclk".
	- interrupts: IRQ line for the ADC
		see: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt

	  Required properties:
		* #address-cells: Must be 1.
		* #size-cells: Must be 0.

	  Subnode(s) represent the external channels which are connected to the ADC.
	  Each subnode represents one channel and has the following properties:
		Required properties:
			* reg: The channel number. It can have up to 4 channels on ad7124-4
			  and 8 channels on ad7124-8, numbered from 0 to 15.
			* diff-channels: see: Documentation/devicetree/bindings/iio/adc/adc.txt

		Optional properties:
			* bipolar: see: Documentation/devicetree/bindings/iio/adc/adc.txt
			* adi,reference-select: Select the reference source to use when
			  converting on the the specific channel. Valid values are:
			  0: REFIN1(+)/REFIN1(−).
			  1: REFIN2(+)/REFIN2(−).
			  3: AVDD
			  If this field is left empty, internal reference is selected.

Optional properties:
	- refin1-supply: refin1 supply can be used as reference for conversion.
	- refin2-supply: refin2 supply can be used as reference for conversion.
	- avdd-supply: avdd supply can be used as reference for conversion.

Example:
	adc@0 {
		compatible = "adi,ad7124-4";
		reg = <0>;
		spi-max-frequency = <5000000>;
		interrupts = <25 2>;
		interrupt-parent = <&gpio>;
		refin1-supply = <&adc_vref>;
		clocks = <&ad7124_mclk>;
		clock-names = "mclk";

		#address-cells = <1>;
		#size-cells = <0>;

		channel@0 {
			reg = <0>;
			diff-channels = <0 1>;
			adi,reference-select = <0>;
		};

		channel@1 {
			reg = <1>;
			bipolar;
			diff-channels = <2 3>;
			adi,reference-select = <0>;
		};

		channel@2 {
			reg = <2>;
			diff-channels = <4 5>;
		};

		channel@3 {
			reg = <3>;
			diff-channels = <6 7>;
		};
	};