summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorJernej Skrabec <jernej.skrabec@siol.net>2019-09-29 10:52:59 +0200
committerMaxime Ripard <mripard@kernel.org>2019-09-30 22:12:03 +0200
commitccdf3aaa27ded6db9a93eed3ca7468bb2353b8fe (patch)
tree5c7b8a74f534373339605c9b14c795b822585a34 /arch
parentarm64: dts: allwinner: a64: Drop PMU node (diff)
downloadlinux-ccdf3aaa27ded6db9a93eed3ca7468bb2353b8fe.tar.xz
linux-ccdf3aaa27ded6db9a93eed3ca7468bb2353b8fe.zip
arm64: dts: allwinner: a64: sopine-baseboard: Add PHY regulator delay
It turns out that sopine-baseboard needs same fix as pine64-plus for ethernet PHY. Here too Realtek ethernet PHY chip needs additional power on delay to properly initialize. Datasheet mentions that chip needs 30 ms to be properly powered on and that it needs some more time to be initialized. Fix that by adding 100ms ramp delay to regulator responsible for powering PHY. Note that issue was found out and fix tested on pine64-lts, but it's basically the same as sopine-baseboard, only layout and connectors differ. Fixes: bdfe4cebea11 ("arm64: allwinner: a64: add Ethernet PHY regulator for several boards") Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net> Signed-off-by: Maxime Ripard <mripard@kernel.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
index e6fb9683f213..25099202c52c 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
@@ -159,6 +159,12 @@
};
&reg_dc1sw {
+ /*
+ * Ethernet PHY needs 30ms to properly power up and some more
+ * to initialize. 100ms should be plenty of time to finish
+ * whole process.
+ */
+ regulator-enable-ramp-delay = <100000>;
regulator-name = "vcc-phy";
};