summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomer Maimon <tmaimon77@gmail.com>2018-05-17 16:24:09 +0300
committerJoel Stanley <joel@jms.id.au>2018-05-18 11:03:32 +0300
commit1098e853c2b7705ef8f960db1dddf11f5c765831 (patch)
treefff4f779f7e195cdddac5d8e519bce768a2e78e8
parent9224ca752a6d305a1066ef249fd53d54e6d59ba7 (diff)
downloadlinux-1098e853c2b7705ef8f960db1dddf11f5c765831.tar.xz
dt-binding: pinctrl: document NPCM7xx pin controller DT bindings
Added device tree binding documentation for Nuvoton NPCM7xx pin controller OpenBMC-Staging-Count: 1 Signed-off-by: Tomer Maimon <tmaimon77@gmail.com> Signed-off-by: Joel Stanley <joel@jms.id.au>
-rw-r--r--Documentation/devicetree/bindings/pinctrl/nuvoton,npcm7xx-pinctrl.txt70
1 files changed, 70 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/pinctrl/nuvoton,npcm7xx-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/nuvoton,npcm7xx-pinctrl.txt
new file mode 100644
index 000000000000..a2bba4d5893e
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinctrl/nuvoton,npcm7xx-pinctrl.txt
@@ -0,0 +1,70 @@
+Nuvoton NPCM7XX Pin Controllers
+
+The NPCM7XX Pin Controller multi-function routed through
+the multiplexing block, Each pin supports GPIO functionality (GPIOx)
+and multiple functions that directly connect the pin to different
+hardware blocks.
+
+Required properties:
+- compatible : "nuvoton,npcm750-pinctrl" for Poleg NPCM750.
+
+Contents of function subnode node
+---------------------------------
+Required subnode-properties:
+- groups : An array of strings. Each string contains the name of a group.
+- function: A string containing the name of the function to mux to the
+ group.
+
+ Valid values for group and function names can be found from looking at the
+ group and function arrays in driver files:
+ drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c
+
+For example, pinctrl might have subnodes like the following:
+ r1err_pins: r1err_pins {
+ groups = "r1err";
+ function = "r1err";
+ };
+ r1md_pins: r1md_pins {
+ groups = "r1md";
+ function = "r1md";
+ };
+ r1_pins: r1_pins {
+ groups = "r1";
+ function = "r1";
+ };
+
+For a specific board, if it wants to use EMC (10/100 network),
+it can add the following to its board-specific .dts file.
+emc0: eth@f0825000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&r1_pins
+ &r1err_pins
+ &r1md_pins>;
+ phy-mode = "rmii";
+
+if EMC hardware is not used the EMC pin can used for GPIO56
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio56_pins>
+
+Examples
+========
+
+pinctrl: pinctrl@0 {
+ compatible = "nuvoton,npcm7xx-pinctrl";
+ status = "okay";
+ iox1_pins: iox1_pins {
+ groups = "iox1";
+ function = "iox1";
+ };
+ iox2_pins: iox2_pins {
+ groups = "iox2";
+ function = "iox2";
+ };
+
+ ....
+
+ clkreq_pins: clkreq_pins {
+ groups = "clkreq";
+ function = "clkreq";
+ };
+};