Merge branch 'i2c/for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
[deliverable/linux.git] / Documentation / devicetree / bindings / pinctrl / meson,pinctrl.txt
CommitLineData
ae76f13b
BG
1== Amlogic Meson pinmux controller ==
2
3Required properties for the root node:
11ca8735
CC
4 - compatible: one of "amlogic,meson8-cbus-pinctrl"
5 "amlogic,meson8b-cbus-pinctrl"
6 "amlogic,meson8-aobus-pinctrl"
7 "amlogic,meson8b-aobus-pinctrl"
ae76f13b
BG
8 - reg: address and size of registers controlling irq functionality
9
10=== GPIO sub-nodes ===
11
11ca8735
CC
12The GPIO bank for the controller is represented as a sub-node and it acts as a
13GPIO controller.
ae76f13b
BG
14
15Required properties for sub-nodes are:
16 - reg: should contain address and size for mux, pull-enable, pull and
17 gpio register sets
18 - reg-names: an array of strings describing the "reg" entries. Must
19 contain "mux", "pull" and "gpio". "pull-enable" is optional and
20 when it is missing the "pull" registers are used instead
21 - gpio-controller: identifies the node as a gpio controller
22 - #gpio-cells: must be 2
23
ae76f13b
BG
24=== Other sub-nodes ===
25
26Child nodes without the "gpio-controller" represent some desired
27configuration for a pin or a group. Those nodes can be pinmux nodes or
28configuration nodes.
29
30Required properties for pinmux nodes are:
31 - groups: a list of pinmux groups. The list of all available groups
32 depends on the SoC and can be found in driver sources.
33 - function: the name of a function to activate for the specified set
34 of groups. The list of all available functions depends on the SoC
35 and can be found in driver sources.
36
37Required properties for configuration nodes:
38 - pins: a list of pin names
39
40Configuration nodes support the generic properties "bias-disable",
41"bias-pull-up" and "bias-pull-down", described in file
42pinctrl-bindings.txt
43
44=== Example ===
45
46 pinctrl: pinctrl@c1109880 {
11ca8735 47 compatible = "amlogic,meson8-cbus-pinctrl";
ae76f13b
BG
48 reg = <0xc1109880 0x10>;
49 #address-cells = <1>;
50 #size-cells = <1>;
51 ranges;
52
53 gpio: banks@c11080b0 {
54 reg = <0xc11080b0 0x28>,
55 <0xc11080e8 0x18>,
56 <0xc1108120 0x18>,
57 <0xc1108030 0x30>;
58 reg-names = "mux", "pull", "pull-enable", "gpio";
59 gpio-controller;
60 #gpio-cells = <2>;
61 };
62
ae76f13b
BG
63 nand {
64 mux {
65 groups = "nand_io", "nand_io_ce0", "nand_io_ce1",
66 "nand_io_rb0", "nand_ale", "nand_cle",
67 "nand_wen_clk", "nand_ren_clk", "nand_dqs",
68 "nand_ce2", "nand_ce3";
69 function = "nand";
70 };
71 };
ae76f13b 72 };
This page took 0.166292 seconds and 5 git commands to generate.