[PATCH 3/4] arm: mvebu: dts: uDPU: fix non-working networking
Robert Marko
robert.marko at sartura.hr
Wed Mar 23 14:39:02 CET 2022
uDPU is a bit of a specific device in that it does not have any copper
ports nor any ethernet PHY-s but 2 SFP ports.
This is an issue since MVNETA requires a PHY phandle or a fixed-link to
be defined under its node.
Since U-boot has no SFP support this is reasonable in order to know how
to configure the MAC.
However this also means that networking does not work on uDPU at all
currently, and fails with:
uDPU>> dhcp
Could not get PHY for neta at 30000: addr 0
phy_connect failed
Could not get PHY for neta at 40000: addr 1
phy_connect failed
So, to provide working networking using only SFP-s let add the fixed-link
at 1G which is much more common than 2.5G SFP-s as well as disable the
TX_DISABLE pins like done on Armada 7040 and 8040 platforms.
Since uDPU is not using any of the GPIO-s on the SB controller for any
purpose other than GPIO, a call to the pinctrl must be made in order for
it to get probed and thus register the SB GPIO bank, otherwise SB GPIO-s
are not registered at all.
Signed-off-by: Robert Marko <robert.marko at sartura.hr>
---
arch/arm/dts/armada-3720-uDPU-u-boot.dtsi | 27 +++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/arch/arm/dts/armada-3720-uDPU-u-boot.dtsi b/arch/arm/dts/armada-3720-uDPU-u-boot.dtsi
index cf8ae4412b..14c4fe1aff 100644
--- a/arch/arm/dts/armada-3720-uDPU-u-boot.dtsi
+++ b/arch/arm/dts/armada-3720-uDPU-u-boot.dtsi
@@ -31,3 +31,30 @@
&sdhci0 {
u-boot,dm-pre-reloc;
};
+
+&pinctrl_sb {
+ sfp_pins: sfp-pins {
+ groups = "pcie1_clkreq";
+ function = "gpio";
+ };
+};
+
+ð0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&sfp_pins>;
+ marvell,sfp-tx-disable-gpio = <&gpiosb 4 GPIO_ACTIVE_HIGH>;
+
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+};
+
+ð1 {
+ marvell,sfp-tx-disable-gpio = <&gpiosb 9 GPIO_ACTIVE_HIGH>;
+
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+};
--
2.35.1
More information about the U-Boot
mailing list