diff options
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/devicetree/bindings/pinctrl/pinctrl-sirf.txt | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/pinctrl/pinctrl-sirf.txt b/Documentation/devicetree/bindings/pinctrl/pinctrl-sirf.txt new file mode 100644 index 000000000000..c596a6ad3285 --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/pinctrl-sirf.txt | |||
@@ -0,0 +1,47 @@ | |||
1 | CSR SiRFprimaII pinmux controller | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "sirf,prima2-pinctrl" | ||
5 | - reg : Address range of the pinctrl registers | ||
6 | - interrupts : Interrupts used by every GPIO group | ||
7 | - gpio-controller : Indicates this device is a GPIO controller | ||
8 | - interrupt-controller : Marks the device node as an interrupt controller | ||
9 | Optional properties: | ||
10 | - sirf,pullups : if n-th bit of m-th bank is set, set a pullup on GPIO-n of bank m | ||
11 | - sirf,pulldowns : if n-th bit of m-th bank is set, set a pulldown on GPIO-n of bank m | ||
12 | |||
13 | Please refer to pinctrl-bindings.txt in this directory for details of the common | ||
14 | pinctrl bindings used by client devices. | ||
15 | |||
16 | SiRFprimaII's pinmux nodes act as a container for an abitrary number of subnodes. | ||
17 | Each of these subnodes represents some desired configuration for a group of pins. | ||
18 | |||
19 | Required subnode-properties: | ||
20 | - sirf,pins : An array of strings. Each string contains the name of a group. | ||
21 | - sirf,function: A string containing the name of the function to mux to the | ||
22 | group. | ||
23 | |||
24 | Valid values for group and function names can be found from looking at the | ||
25 | group and function arrays in driver files: | ||
26 | drivers/pinctrl/pinctrl-sirf.c | ||
27 | |||
28 | For example, pinctrl might have subnodes like the following: | ||
29 | uart2_pins_a: uart2@0 { | ||
30 | uart { | ||
31 | sirf,pins = "uart2grp"; | ||
32 | sirf,function = "uart2"; | ||
33 | }; | ||
34 | }; | ||
35 | uart2_noflow_pins_a: uart2@1 { | ||
36 | uart { | ||
37 | sirf,pins = "uart2_nostreamctrlgrp"; | ||
38 | sirf,function = "uart2_nostreamctrl"; | ||
39 | }; | ||
40 | }; | ||
41 | |||
42 | For a specific board, if it wants to use uart2 without hardware flow control, | ||
43 | it can add the following to its board-specific .dts file. | ||
44 | uart2: uart@0xb0070000 { | ||
45 | pinctrl-names = "default"; | ||
46 | pinctrl-0 = <&uart2_noflow_pins_a>; | ||
47 | } | ||