diff options
author | John Crispin <blogic@openwrt.org> | 2012-07-22 03:23:50 -0400 |
---|---|---|
committer | John Crispin <blogic@openwrt.org> | 2012-09-13 04:30:59 -0400 |
commit | 8e004b47b7645fe8ebe1bb81f75cd8f16650de68 (patch) | |
tree | 6d4151cb6ec0edeeced5b0a669363644bf925706 /Documentation/devicetree | |
parent | 5c56f76995691cf761f66d6d89a00eea80be660c (diff) |
Document: devicetree: add OF documents for lantiq falcon pinctrl
Signed-off-by: John Crispin <blogic@openwrt.org>
Signed-off-by: Thomas Langer <thomas.langer@lantiq.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Cc: devicetree-discuss@lists.ozlabs.org
Cc: linux-kernel@vger.kernel.org
Diffstat (limited to 'Documentation/devicetree')
-rw-r--r-- | Documentation/devicetree/bindings/pinctrl/lantiq,falcon-pinumx.txt | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/pinctrl/lantiq,falcon-pinumx.txt b/Documentation/devicetree/bindings/pinctrl/lantiq,falcon-pinumx.txt new file mode 100644 index 000000000000..daa768956069 --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/lantiq,falcon-pinumx.txt | |||
@@ -0,0 +1,83 @@ | |||
1 | Lantiq FALCON pinmux controller | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "lantiq,pinctrl-falcon" | ||
5 | - reg: Should contain the physical address and length of the gpio/pinmux | ||
6 | register range | ||
7 | |||
8 | Please refer to pinctrl-bindings.txt in this directory for details of the | ||
9 | common pinctrl bindings used by client devices, including the meaning of the | ||
10 | phrase "pin configuration node". | ||
11 | |||
12 | Lantiq's pin configuration nodes act as a container for an abitrary number of | ||
13 | subnodes. Each of these subnodes represents some desired configuration for a | ||
14 | pin, a group, or a list of pins or groups. This configuration can include the | ||
15 | mux function to select on those group(s), and two pin configuration parameters: | ||
16 | pull-up and open-drain | ||
17 | |||
18 | The name of each subnode is not important as long as it is unique; all subnodes | ||
19 | should be enumerated and processed purely based on their content. | ||
20 | |||
21 | Each subnode only affects those parameters that are explicitly listed. In | ||
22 | other words, a subnode that lists a mux function but no pin configuration | ||
23 | parameters implies no information about any pin configuration parameters. | ||
24 | Similarly, a pin subnode that describes a pullup parameter implies no | ||
25 | information about e.g. the mux function. | ||
26 | |||
27 | We support 2 types of nodes. | ||
28 | |||
29 | Definition of mux function groups: | ||
30 | |||
31 | Required subnode-properties: | ||
32 | - lantiq,groups : An array of strings. Each string contains the name of a group. | ||
33 | Valid values for these names are listed below. | ||
34 | - lantiq,function: A string containing the name of the function to mux to the | ||
35 | group. Valid values for function names are listed below. | ||
36 | |||
37 | Valid values for group and function names: | ||
38 | |||
39 | mux groups: | ||
40 | por, ntr, ntr8k, hrst, mdio, bootled, asc0, spi, spi cs0, spi cs1, i2c, | ||
41 | jtag, slic, pcm, asc1 | ||
42 | |||
43 | functions: | ||
44 | rst, ntr, mdio, led, asc, spi, i2c, jtag, slic, pcm | ||
45 | |||
46 | |||
47 | Definition of pin configurations: | ||
48 | |||
49 | Required subnode-properties: | ||
50 | - lantiq,pins : An array of strings. Each string contains the name of a pin. | ||
51 | Valid values for these names are listed below. | ||
52 | |||
53 | Optional subnode-properties: | ||
54 | - lantiq,pull: Integer, representing the pull-down/up to apply to the pin. | ||
55 | 0: none, 1: down | ||
56 | - lantiq,drive-current: Boolean, enables drive-current | ||
57 | - lantiq,slew-rate: Boolean, enables slew-rate | ||
58 | |||
59 | Example: | ||
60 | pinmux0 { | ||
61 | compatible = "lantiq,pinctrl-falcon"; | ||
62 | pinctrl-names = "default"; | ||
63 | pinctrl-0 = <&state_default>; | ||
64 | |||
65 | state_default: pinmux { | ||
66 | asc0 { | ||
67 | lantiq,groups = "asc0"; | ||
68 | lantiq,function = "asc"; | ||
69 | }; | ||
70 | ntr { | ||
71 | lantiq,groups = "ntr8k"; | ||
72 | lantiq,function = "ntr"; | ||
73 | }; | ||
74 | i2c { | ||
75 | lantiq,groups = "i2c"; | ||
76 | lantiq,function = "i2c"; | ||
77 | }; | ||
78 | hrst { | ||
79 | lantiq,groups = "hrst"; | ||
80 | lantiq,function = "rst"; | ||
81 | }; | ||
82 | }; | ||
83 | }; | ||