summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/mux/adi,adgs1408.txt
blob: 453a38961c132ce4dbd16dfb62b5ee5cd9732e5d (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
Bindings for Analog Devices ADGS1408/1409 8:1/Dual 4:1 Mux

Required properties:
- compatible : Should be one of
	* "adi,adgs1408"
	* "adi,adgs1409"
* Standard mux-controller bindings as described in mux-controller.yaml

Optional properties for ADGS1408/1409:
- gpio-controller : if present, #gpio-cells is required.
- #gpio-cells : should be <2>
			- First cell is the GPO line number, i.e. 0 to 3
			for ADGS1408 and 0 to 4 for ADGS1409
			- Second cell is used to specify active high (0)
			or active low (1)

Optional properties:
- idle-state : if present, the state that the mux controller will have
  when idle. The special state MUX_IDLE_AS_IS is the default and
  MUX_IDLE_DISCONNECT is also supported.

States 0 through 7 correspond to signals S1 through S8 in the datasheet.
For ADGS1409 only states 0 to 3 are available.

Example:

	/*
	 * One mux controller.
	 * Mux state set to idle as is (no idle-state declared)
	 */
	&spi0 {
		mux: mux-controller@0 {
			compatible = "adi,adgs1408";
			reg = <0>;
			spi-max-frequency = <1000000>;
			#mux-control-cells = <0>;
		};
	}

	adc-mux {
		compatible = "io-channel-mux";
		io-channels = <&adc 1>;
		io-channel-names = "parent";
		mux-controls = <&mux>;

		channels = "out_a0", "out_a1", "test0", "test1",
			"out_b0", "out_b1", "testb0", "testb1";
	};