From: Marek Vasut <marek.vasut+renesas@mailbox.org>
Date: Sun, 19 Mar 2023 17:03:17 +0000 (+0100)
Subject: net: phy: Only call phy_init() on systems needing manual relocation
X-Git-Tag: v2025.01-rc5-pxa1908~1051^2~11
X-Git-Url: http://git.dujemihanovic.xyz/img/html/static/login.html?a=commitdiff_plain;h=9461d73de988964b51a796f69ce0d9424599ebd9;p=u-boot.git

net: phy: Only call phy_init() on systems needing manual relocation

The phy_init() is now used only to perform manual relocation of PHY
driver callbacks. Wrap it in ifdeffery and only call it on systems
which still require manual relocation, i.e. m68k .

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Acked-by: Michal Simek <michal.simek@amd.com>
Tested-by: Michal Simek <michal.simek@amd.com> #microblaze (MANUAL_RELOC)
---

diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c
index 61603f2817..9b0e497f22 100644
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
@@ -463,9 +463,9 @@ U_BOOT_PHY_DRIVER(genphy) = {
 	.shutdown	= genphy_shutdown,
 };
 
+#ifdef CONFIG_NEEDS_MANUAL_RELOC
 int phy_init(void)
 {
-#ifdef CONFIG_NEEDS_MANUAL_RELOC
 	const int ll_n_ents = ll_entry_count(struct phy_driver, phy_driver);
 	struct phy_driver *drv, *ll_entry;
 
@@ -489,10 +489,10 @@ int phy_init(void)
 		if (drv->write_mmd)
 			drv->write_mmd += gd->reloc_off;
 	}
-#endif
 
 	return 0;
 }
+#endif
 
 int phy_set_supported(struct phy_device *phydev, u32 max_speed)
 {
diff --git a/net/eth_common.c b/net/eth_common.c
index 82d527abba..c94a7ba6ae 100644
--- a/net/eth_common.c
+++ b/net/eth_common.c
@@ -37,7 +37,7 @@ void eth_common_init(void)
 	miiphy_init();
 #endif
 
-#ifdef CONFIG_PHYLIB
+#if defined(CONFIG_NEEDS_MANUAL_RELOC) && defined(CONFIG_PHYLIB)
 	phy_init();
 #endif
 #endif