[PATCH v4 7/7] ARM: dts: berlin: add the pinctrl node and muxing setup for uarts
From: sebastian.hesselbarth@gmail.com (Sebastian Hesselbarth)
Date: 2014-05-19 17:37:07
Also in:
lkml
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: Antoine Tenart <redacted> Add pinctrl bindings and system control nodes to what we currently know about Berlin SoCs. Where available, also set default pinctrl property for uarts, when there is only one pinmux option for it. Signed-off-by: Antoine Tenart <redacted> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> --- Changelog: v3->v4: - remove "marvell," prefix from pinctrl function/groups property Cc: Linus Walleij <redacted> Cc: Antoine Tenart <redacted> Cc: Alexandre Belloni <redacted> Cc: Thomas Petazzoni <redacted> Cc: zmxu at marvell.com Cc: jszhang at marvell.com Cc: linux-arm-kernel at lists.infradead.org Cc: linux-kernel at vger.kernel.org --- arch/arm/boot/dts/berlin2.dtsi | 26 ++++++++++++++++++++++++++ arch/arm/boot/dts/berlin2cd.dtsi | 12 ++++++++++++ arch/arm/boot/dts/berlin2q.dtsi | 19 +++++++++++++++++++ 3 files changed, 57 insertions(+)
diff --git a/arch/arm/boot/dts/berlin2.dtsi b/arch/arm/boot/dts/berlin2.dtsi
index 591d4b8c1c2b..2477dac4d643 100644
--- a/arch/arm/boot/dts/berlin2.dtsi
+++ b/arch/arm/boot/dts/berlin2.dtsi@@ -296,6 +296,8 @@ reg-io-width = <1>; interrupts = <8>; clocks = <&refclk>; + pinctrl-0 = <&uart0_pmux>; + pinctrl-names = "default"; status = "disabled"; };
@@ -306,6 +308,8 @@ reg-io-width = <1>; interrupts = <9>; clocks = <&refclk>; + pinctrl-0 = <&uart1_pmux>; + pinctrl-names = "default"; status = "disabled"; };
@@ -316,9 +320,31 @@ reg-io-width = <1>; interrupts = <10>; clocks = <&refclk>; + pinctrl-0 = <&uart2_pmux>; + pinctrl-names = "default"; status = "disabled"; }; + sysctrl: system-controller at d000 { + compatible = "marvell,berlin2-system-ctrl"; + reg = <0xd000 0x100>; + + uart0_pmux: uart0-pmux { + groups = "GSM4"; + function = "uart0"; + }; + + uart1_pmux: uart1-pmux { + groups = "GSM5"; + function = "uart1"; + }; + + uart2_pmux: uart2-pmux { + groups = "GSM3"; + function = "uart2"; + }; + }; + sic: interrupt-controller at e000 { compatible = "snps,dw-apb-ictl"; reg = <0xe000 0x400>;
diff --git a/arch/arm/boot/dts/berlin2cd.dtsi b/arch/arm/boot/dts/berlin2cd.dtsi
index 1385caa6d029..cc1df65da504 100644
--- a/arch/arm/boot/dts/berlin2cd.dtsi
+++ b/arch/arm/boot/dts/berlin2cd.dtsi@@ -234,6 +234,11 @@ reg = <0xea0000 0x400>; clocks = <&refclk>; clock-names = "refclk"; + + uart0_pmux: uart0-pmux { + groups = "G6"; + function = "uart0"; + }; }; apb at fc0000 {
@@ -281,6 +286,8 @@ reg-io-width = <1>; interrupts = <8>; clocks = <&refclk>; + pinctrl-0 = <&uart0_pmux>; + pinctrl-names = "default"; status = "disabled"; };
@@ -294,6 +301,11 @@ status = "disabled"; }; + sysctrl: system-controller at d000 { + compatible = "marvell,berlin2cd-system-ctrl"; + reg = <0xd000 0x100>; + }; + sic: interrupt-controller at e000 { compatible = "snps,dw-apb-ictl"; reg = <0xe000 0x400>;
diff --git a/arch/arm/boot/dts/berlin2q.dtsi b/arch/arm/boot/dts/berlin2q.dtsi
index cd3287c95f1a..81712f5954ef 100644
--- a/arch/arm/boot/dts/berlin2q.dtsi
+++ b/arch/arm/boot/dts/berlin2q.dtsi@@ -294,6 +294,8 @@ interrupts = <8>; clocks = <&refclk>; reg-shift = <2>; + pinctrl-0 = <&uart0_pmux>; + pinctrl-names = "default"; status = "disabled"; };
@@ -304,9 +306,26 @@ interrupts = <9>; clocks = <&refclk>; reg-shift = <2>; + pinctrl-0 = <&uart1_pmux>; + pinctrl-names = "default"; status = "disabled"; }; + sysctrl: pin-controller at d000 { + compatible = "marvell,berlin2q-system-ctrl"; + reg = <0xd000 0x100>; + + uart0_pmux: uart0-pmux { + groups = "GSM12"; + function = "uart0"; + }; + + uart1_pmux: uart1-pmux { + groups = "GSM14"; + function = "uart1"; + }; + }; + sic: interrupt-controller at e000 { compatible = "snps,dw-apb-ictl"; reg = <0xe000 0x30>;
--
1.9.1