Commit | Line | Data |
---|---|---|
408f181e BS |
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 | |
fc2b04e7 BS |
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 | |
408f181e BS |
12 | |
13 | Please refer to pinctrl-bindings.txt in this directory for details of the common | |
14 | pinctrl bindings used by client devices. | |
15 | ||
a0e27f51 | 16 | SiRFprimaII's pinmux nodes act as a container for an arbitrary number of subnodes. |
408f181e BS |
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 | } |