aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot/uboot-mvebu/patches/0002-arm-mvebu-Espressobin-move-network-setup-into-a-sepa.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/boot/uboot-mvebu/patches/0002-arm-mvebu-Espressobin-move-network-setup-into-a-sepa.patch')
-rw-r--r--package/boot/uboot-mvebu/patches/0002-arm-mvebu-Espressobin-move-network-setup-into-a-sepa.patch53
1 files changed, 53 insertions, 0 deletions
diff --git a/package/boot/uboot-mvebu/patches/0002-arm-mvebu-Espressobin-move-network-setup-into-a-sepa.patch b/package/boot/uboot-mvebu/patches/0002-arm-mvebu-Espressobin-move-network-setup-into-a-sepa.patch
new file mode 100644
index 00000000000..175deb397f5
--- /dev/null
+++ b/package/boot/uboot-mvebu/patches/0002-arm-mvebu-Espressobin-move-network-setup-into-a-sepa.patch
@@ -0,0 +1,53 @@
+From 3f8c18894a50fd45b81a807f217893f289500bc6 Mon Sep 17 00:00:00 2001
+From: Robert Marko <robert.marko@sartura.hr>
+Date: Thu, 3 Aug 2023 14:24:31 +0200
+Subject: [PATCH 2/3] arm: mvebu: Espressobin: move network setup into a
+ separate function
+
+Currently, Esspresobin switch is being setup directly in last_stage_init()
+which makes it hard to add support for any other board to be setup.
+
+So, lets just move the switch setup code to a separate function and call it
+if compatible matches, there should be no functional change.
+
+Signed-off-by: Robert Marko <robert.marko@sartura.hr>
+---
+ board/Marvell/mvebu_armada-37xx/board.c | 16 +++++++++++-----
+ 1 file changed, 11 insertions(+), 5 deletions(-)
+
+--- a/board/Marvell/mvebu_armada-37xx/board.c
++++ b/board/Marvell/mvebu_armada-37xx/board.c
+@@ -300,15 +300,11 @@ static int mii_multi_chip_mode_write(str
+ return 0;
+ }
+
+-/* Bring-up board-specific network stuff */
+-int last_stage_init(void)
++static int espressobin_last_stage_init(void)
+ {
+ struct udevice *bus;
+ ofnode node;
+
+- if (!of_machine_is_compatible("globalscale,espressobin"))
+- return 0;
+-
+ node = ofnode_by_compatible(ofnode_null(), "marvell,orion-mdio");
+ if (!ofnode_valid(node) ||
+ uclass_get_device_by_ofnode(UCLASS_MDIO, node, &bus) ||
+@@ -356,6 +352,16 @@ int last_stage_init(void)
+
+ return 0;
+ }
++
++/* Bring-up board-specific network stuff */
++int last_stage_init(void)
++{
++
++ if (of_machine_is_compatible("globalscale,espressobin"))
++ return espressobin_last_stage_init();
++
++ return 0;
++}
+ #endif
+
+ #ifdef CONFIG_OF_BOARD_SETUP