sunxi: update gmac with adding correct regulators on bananapi
[openwrt/openwrt.git] / target / linux / sunxi / patches-3.14 / 306-dt-sun7i-fix-gmac-on-bananapi.patch
diff --git a/target/linux/sunxi/patches-3.14/306-dt-sun7i-fix-gmac-on-bananapi.patch b/target/linux/sunxi/patches-3.14/306-dt-sun7i-fix-gmac-on-bananapi.patch
new file mode 100644 (file)
index 0000000..4c34161
--- /dev/null
@@ -0,0 +1,47 @@
+diff -ruN old/arch/arm/boot/dts/sun7i-a20-bananapi.dts new/arch/arm/boot/dts/sun7i-a20-bananapi.dts
+--- old/arch/arm/boot/dts/sun7i-a20-bananapi.dts       2014-09-19 01:08:58.000000000 +0200
++++ new/arch/arm/boot/dts/sun7i-a20-bananapi.dts       2014-09-19 01:05:02.000000000 +0200
+@@ -86,6 +86,13 @@
+                               allwinner,drive = <0>;
+                               allwinner,pull = <1>;
+                       };
++                      
++                      gmac_power_pin_bananapi: gmac_power_pin@0 {
++                              allwinner,pins = "PH23";
++                              allwinner,function = "gpio_out";
++                              allwinner,drive = <0>;
++                              allwinner,pull = <0>;
++                      };
+               };
+               lradc: lradc@01c22800 {
+@@ -134,9 +141,10 @@
+               gmac: ethernet@01c50000 {
+                       pinctrl-names = "default";
+-                      pinctrl-0 = <&gmac_pins_mii_a>;
++                      pinctrl-0 = <&gmac_pins_rgmii_a>;
+                       phy = <&phy1>;
+-                      phy-mode = "mii";
++                      phy-mode = "rgmii";
++                      phy-supply = <&reg_gmac_3v3>;
+                       status = "okay";
+                       phy1: ethernet-phy@1 {
+@@ -169,4 +177,16 @@
+                 status = "okay";
+         };
++      reg_gmac_3v3: gmac-3v3 {
++                      compatible = "regulator-fixed";
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&gmac_power_pin_bananapi>;
++                      regulator-name = "gmac-3v3";
++                      regulator-min-microvolt = <3300000>;
++                      regulator-max-microvolt = <3300000>;
++                      startup-delay-us = <50000>;
++                      enable-active-high;
++                      gpio = <&pio 7 23 0>;
++                      status = "okay";
++      };
+ };