Merge commit '81fd23e2b3ccf71c807e671444e8accaba98ca53' of https://git.pengutronix...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / mux / adi,adgs1408.txt
1 Bindings for Analog Devices ADGS1408/1409 8:1/Dual 4:1 Mux
2
3 Required properties:
4 - compatible : Should be one of
5         * "adi,adgs1408"
6         * "adi,adgs1409"
7 * Standard mux-controller bindings as described in mux-controller.yaml
8
9 Optional properties for ADGS1408/1409:
10 - gpio-controller : if present, #gpio-cells is required.
11 - #gpio-cells : should be <2>
12                         - First cell is the GPO line number, i.e. 0 to 3
13                         for ADGS1408 and 0 to 4 for ADGS1409
14                         - Second cell is used to specify active high (0)
15                         or active low (1)
16
17 Optional properties:
18 - idle-state : if present, the state that the mux controller will have
19   when idle. The special state MUX_IDLE_AS_IS is the default and
20   MUX_IDLE_DISCONNECT is also supported.
21
22 States 0 through 7 correspond to signals S1 through S8 in the datasheet.
23 For ADGS1409 only states 0 to 3 are available.
24
25 Example:
26
27         /*
28          * One mux controller.
29          * Mux state set to idle as is (no idle-state declared)
30          */
31         &spi0 {
32                 mux: mux-controller@0 {
33                         compatible = "adi,adgs1408";
34                         reg = <0>;
35                         spi-max-frequency = <1000000>;
36                         #mux-control-cells = <0>;
37                 };
38         }
39
40         adc-mux {
41                 compatible = "io-channel-mux";
42                 io-channels = <&adc 1>;
43                 io-channel-names = "parent";
44                 mux-controls = <&mux>;
45
46                 channels = "out_a0", "out_a1", "test0", "test1",
47                         "out_b0", "out_b1", "testb0", "testb1";
48         };