Merge tag 'tegra-for-4.8-i2c' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra...
[cascardo/linux.git] / Documentation / devicetree / bindings / pinctrl / nvidia,tegra124-dpaux-padctl.txt
1 Device tree binding for NVIDIA Tegra DPAUX pad controller
2 ========================================================
3
4 The Tegra Display Port Auxiliary (DPAUX) pad controller manages two pins
5 which can be assigned to either the DPAUX channel or to an I2C
6 controller.
7
8 This document defines the device-specific binding for the DPAUX pad
9 controller. Refer to pinctrl-bindings.txt in this directory for generic
10 information about pin controller device tree bindings. Please refer to
11 the binding document ../display/tegra/nvidia,tegra20-host1x.txt for more
12 details on the DPAUX binding.
13
14 Pin muxing:
15 -----------
16
17 Child nodes contain the pinmux configurations following the conventions
18 from the pinctrl-bindings.txt document.
19
20 Since only three configurations are possible, only three child nodes are
21 needed to describe the pin mux'ing options for the DPAUX pads.
22 Furthermore, given that the pad functions are only applicable to a
23 single set of pads, the child nodes only need to describe the pad group
24 the functions are being applied to rather than the individual pads.
25
26 Required properties:
27 - groups: Must be "dpaux-io"
28 - function: Must be either "aux", "i2c" or "off".
29
30 Example:
31 --------
32
33         dpaux@545c0000 {
34                 ...
35
36                 state_dpaux_aux: pinmux-aux {
37                         groups = "dpaux-io";
38                         function = "aux";
39                 };
40
41                 state_dpaux_i2c: pinmux-i2c {
42                         groups = "dpaux-io";
43                         function = "i2c";
44                 };
45
46                 state_dpaux_off: pinmux-off {
47                         groups = "dpaux-io";
48                         function = "off";
49                 };
50         };
51
52         ...
53
54         i2c@7000d100 {
55                 ...
56                 pinctrl-0 = <&state_dpaux_i2c>;
57                 pinctrl-1 = <&state_dpaux_off>;
58                 pinctrl-names = "default", "idle";
59                 status = "disabled";
60         };