]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
ARM: dts: sun9i: a80-optimus: Enable GMAC
authorChen-Yu Tsai <wens@csie.org>
Wed, 6 Feb 2019 03:32:38 +0000 (11:32 +0800)
committerMaxime Ripard <maxime.ripard@bootlin.com>
Thu, 7 Feb 2019 15:51:13 +0000 (16:51 +0100)
The A80 Optimus has a Realtek RTL8211E ethernet PHY which uses RGMII to
talk to the MAC. The PHY is powered by 2 regulators: cldo1 for the PHY's
core logic and gpio1-ldo for I/O. The latter also powers the SoC side
pins. As there is no binding to model a second regulator supply for the
PHY, it is omitted. It is however properly modeled for the PIO.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
arch/arm/boot/dts/sun9i-a80-optimus.dts

index 9c25176e69dc2f0252440041fbac3a9ba4ef7759..864715ec3cb0fd1110cd21f37e5e3e4478ed28eb 100644 (file)
@@ -120,6 +120,19 @@ &ehci2 {
        status = "okay";
 };
 
+&gmac {
+       pinctrl-names = "default";
+       pinctrl-0 = <&gmac_rgmii_pins>;
+       phy = <&phy1>;
+       phy-mode = "rgmii";
+       phy-supply = <&reg_cldo1>;
+       status = "okay";
+
+       phy1: ethernet-phy@1 {
+               reg = <1>;
+       };
+};
+
 &mmc0 {
        pinctrl-names = "default";
        pinctrl-0 = <&mmc0_pins>;
@@ -391,6 +404,14 @@ reg_cldo1: cldo1 {
                                 */
                                regulator-min-microvolt = <3300000>;
                                regulator-max-microvolt = <3300000>;
+                               /*
+                                * The PHY requires 20ms after all voltages
+                                * are applied until core logic is ready and
+                                * 30ms after the reset pin is de-asserted.
+                                * Set a 100ms delay to account for PMIC
+                                * ramp time and board traces.
+                                */
+                               regulator-enable-ramp-delay = <100000>;
                                regulator-name = "vcc-gmac-phy";
                        };