Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / pinctrl / cortina,gemini-pinctrl.txt
1 Cortina Systems Gemini pin controller
2
3 This pin controller is found in the Cortina Systems Gemini SoC family,
4 see further arm/gemini.txt. It is a purely group-based multiplexing pin
5 controller.
6
7 The pin controller node must be a subnode of the system controller node.
8
9 Required properties:
10 - compatible: "cortina,gemini-pinctrl"
11
12 Subnodes of the pin controller contain pin control multiplexing set-up
13 and pin configuration of individual pins.
14
15 Please refer to pinctrl-bindings.txt for generic pin multiplexing nodes
16 and generic pin config nodes.
17
18 Supported configurations:
19 - skew-delay is supported on the Ethernet pins
20 - drive-strength with 4, 8, 12 or 16 mA as argument is supported for
21   entire groups on the groups "idegrp", "gmii_gmac0_grp", "gmii_gmac1_grp"
22   and "pcigrp".
23
24 Example:
25
26
27 syscon {
28         compatible = "cortina,gemini-syscon";
29         ...
30         pinctrl {
31                 compatible = "cortina,gemini-pinctrl";
32                 pinctrl-names = "default";
33                 pinctrl-0 = <&dram_default_pins>, <&system_default_pins>,
34                     <&vcontrol_default_pins>;
35
36                 dram_default_pins: pinctrl-dram {
37                         mux {
38                                 function = "dram";
39                                 groups = "dramgrp";
40                         };
41                 };
42                 rtc_default_pins: pinctrl-rtc {
43                         mux {
44                                 function = "rtc";
45                                 groups = "rtcgrp";
46                         };
47                 };
48                 power_default_pins: pinctrl-power {
49                         mux {
50                                 function = "power";
51                                 groups = "powergrp";
52                         };
53                 };
54                 system_default_pins: pinctrl-system {
55                         mux {
56                                 function = "system";
57                                 groups = "systemgrp";
58                         };
59                 };
60                 (...)
61                 uart_default_pins: pinctrl-uart {
62                         mux {
63                                 function = "uart";
64                                 groups = "uartrxtxgrp";
65                         };
66                 };
67         };
68 };