aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Marko <robert.marko@sartura.hr>2022-03-24 10:57:38 +0100
committerStefan Roese <sr@denx.de>2022-04-21 12:31:36 +0200
commit9e778c7ffc3184bd538f2ff73d395df608d907e5 (patch)
tree63c6e26395fcb3b579bf927095714851f5612ceb
parent2b7beb9c0950ff032ab504a3adcabddae7bb9a01 (diff)
downloadu-boot-9e778c7ffc3184bd538f2ff73d395df608d907e5.zip
u-boot-9e778c7ffc3184bd538f2ff73d395df608d907e5.tar.gz
u-boot-9e778c7ffc3184bd538f2ff73d395df608d907e5.tar.bz2
arm: mvebu: dts: uDPU: fix non-working networking
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@30000: addr 0 phy_connect failed Could not get PHY for neta@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@sartura.hr> Reviewed-by: Stefan Roese <sr@denx.de>
-rw-r--r--arch/arm/dts/armada-3720-uDPU-u-boot.dtsi24
1 files changed, 24 insertions, 0 deletions
diff --git a/arch/arm/dts/armada-3720-uDPU-u-boot.dtsi b/arch/arm/dts/armada-3720-uDPU-u-boot.dtsi
index cf8ae44..47d87d4 100644
--- a/arch/arm/dts/armada-3720-uDPU-u-boot.dtsi
+++ b/arch/arm/dts/armada-3720-uDPU-u-boot.dtsi
@@ -31,3 +31,27 @@
&sdhci0 {
u-boot,dm-pre-reloc;
};
+
+&pinctrl_sb {
+ sfp_pin: sfp-pin {
+ groups = "pcie1_clkreq";
+ function = "gpio";
+ };
+};
+
+&eth0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&sfp_pin>;
+
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+};
+
+&eth1 {
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+};