mvebu: add a coherency fix which didn't make it to -stable, yet
[openwrt.git] / target / linux / mvebu / patches-3.18 / 012-move_ge_pinctrl_settings_for_rgmii.patch
1 From e59451432d7e0f7953e29c15e70111dfdbecc145 Mon Sep 17 00:00:00 2001
2 From: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
3 Date: Fri, 19 Sep 2014 21:24:34 +0200
4 Subject: ARM: mvebu: armada-xp: Move GE0/1 pinctrl settings for RGMII
5
6 Pinctrl settings for GE0 and GE1 are not only usable on RD-AXPWiFiAP.
7 Moreover, naming the RGMII settings pmx-ge{0,1} is not precise enough
8 as there is also a GMII setting for GE0.
9
10 Move the pinctrl sub-nodes to the common pinctrl node and rename them
11 to pmx-ge{0,1}-rgmii.
12
13 Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
14 Tested-By: Benoit Masson <yahoo@perenite.com>
15 Signed-off-by: Jason Cooper <jason@lakedaemon.net>
16
17 --- a/arch/arm/boot/dts/armada-xp-axpwifiap.dts
18 +++ b/arch/arm/boot/dts/armada-xp-axpwifiap.dts
19 @@ -84,14 +84,14 @@
20                         };
21  
22                         ethernet@70000 {
23 -                               pinctrl-0 = <&pmx_ge0>;
24 +                               pinctrl-0 = <&pmx_ge0_rgmii>;
25                                 pinctrl-names = "default";
26                                 status = "okay";
27                                 phy = <&phy0>;
28                                 phy-mode = "rgmii-id";
29                         };
30                         ethernet@74000 {
31 -                               pinctrl-0 = <&pmx_ge1>;
32 +                               pinctrl-0 = <&pmx_ge1_rgmii>;
33                                 pinctrl-names = "default";
34                                 status = "okay";
35                                 phy = <&phy1>;
36 @@ -133,20 +133,6 @@
37         pinctrl-0 = <&pmx_phy_int>;
38         pinctrl-names = "default";
39  
40 -       pmx_ge0: pmx-ge0 {
41 -               marvell,pins = "mpp0", "mpp1", "mpp2", "mpp3",
42 -                              "mpp4", "mpp5", "mpp6", "mpp7",
43 -                              "mpp8", "mpp9", "mpp10", "mpp11";
44 -               marvell,function = "ge0";
45 -       };
46 -
47 -       pmx_ge1: pmx-ge1 {
48 -               marvell,pins = "mpp12", "mpp13", "mpp14", "mpp15",
49 -                              "mpp16", "mpp17", "mpp18", "mpp19",
50 -                              "mpp20", "mpp21", "mpp22", "mpp23";
51 -               marvell,function = "ge1";
52 -       };
53 -
54         pmx_keys: pmx-keys {
55                 marvell,pins = "mpp33";
56                 marvell,function = "gpio";
57 --- a/arch/arm/boot/dts/armada-xp.dtsi
58 +++ b/arch/arm/boot/dts/armada-xp.dtsi
59 @@ -75,6 +75,22 @@
60                         pinctrl: pin-ctrl@18000 {
61                                 reg = <0x18000 0x38>;
62  
63 +                               pmx_ge0_rgmii: pmx-ge0-rgmii {
64 +                                       marvell,pins =
65 +                                            "mpp0", "mpp1", "mpp2", "mpp3",
66 +                                            "mpp4", "mpp5", "mpp6", "mpp7",
67 +                                            "mpp8", "mpp9", "mpp10", "mpp11";
68 +                                       marvell,function = "ge0";
69 +                               };
70 +
71 +                               pmx_ge1_rgmii: pmx-ge1-rgmii {
72 +                                       marvell,pins =
73 +                                            "mpp12", "mpp13", "mpp14", "mpp15",
74 +                                            "mpp16", "mpp17", "mpp18", "mpp19",
75 +                                            "mpp20", "mpp21", "mpp22", "mpp23";
76 +                                       marvell,function = "ge1";
77 +                               };
78 +
79                                 sdio_pins: sdio-pins {
80                                         marvell,pins = "mpp30", "mpp31", "mpp32",
81                                                        "mpp33", "mpp34", "mpp35";