Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: sun7i: pcduino3-nano: enable RGMII RX/TX delay on PHY

The RX/TX delays for the Ethernet PHY on the Linksprite pcDuino 3 Nano
are configured in hardware, using resistors that are populated to pull
the RTL8211E's RXDLY/TXDLY pins low or high as needed.

phy-mode should be set to rgmii-id to reflect this. Previously it was
set to rgmii, which used to work but now results in the delays being
disabled again as a result of the bugfix in commit bbc4d71d6354 ("net:
phy: realtek: fix rtl8211e rx/tx delay config").

Tested on two pcDuino 3 Nano boards purchased in 2015. Without this fix,
Ethernet works unreliably on one board and doesn't work at all on the
other.

Fixes: 061035d456c9 ("ARM: dts: sun7i: Add dts file for pcDuino 3 Nano board")
Signed-off-by: Adam Sampson <ats@offog.org>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Acked-by: Chen-Yu Tsai <wens@csie.org>
Link: https://lore.kernel.org/r/20201123174739.6809-1-ats@offog.org

authored by

Adam Sampson and committed by
Maxime Ripard
a7361b9c a98fd117

+2 -2
+2 -2
arch/arm/boot/dts/sun7i-a20-pcduino3-nano.dts
··· 1 1 /* 2 - * Copyright 2015 Adam Sampson <ats@offog.org> 2 + * Copyright 2015-2020 Adam Sampson <ats@offog.org> 3 3 * 4 4 * This file is dual-licensed: you can use it either under the terms 5 5 * of the GPL or the X11 license, at your option. Note that this dual ··· 115 115 pinctrl-names = "default"; 116 116 pinctrl-0 = <&gmac_rgmii_pins>; 117 117 phy-handle = <&phy1>; 118 - phy-mode = "rgmii"; 118 + phy-mode = "rgmii-id"; 119 119 status = "okay"; 120 120 }; 121 121