[PATCH 1/2] ti: Do not try to read the mac address if no NET is enabled

Maarten Brock Maarten.Brock at sttls.nl
Mon Sep 1 18:06:04 CEST 2025


It is pointless to fetch the mac address if it will never be used.

Signed-off-by: Maarten Brock <maarten.brock at sttls.nl>
---

 board/ti/am335x/board.c | 72 ++++++++++++++++++++---------------------
 1 file changed, 36 insertions(+), 36 deletions(-)

diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
index 4ada8b534c1..739b23b8554 100644
--- a/board/ti/am335x/board.c
+++ b/board/ti/am335x/board.c
@@ -801,10 +801,6 @@ int board_init(void)
 int board_late_init(void)
 {
 	struct udevice *dev;
-#if !defined(CONFIG_XPL_BUILD)
-	uint8_t mac_addr[6];
-	uint32_t mac_hi, mac_lo;
-#endif
 
 #ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
 	char *name = NULL;
@@ -852,40 +848,44 @@ int board_late_init(void)
 		env_set("boot_fit", "1");
 #endif
 
-#if !defined(CONFIG_XPL_BUILD)
-	/* try reading mac address from efuse */
-	mac_lo = readl(&cdev->macid0l);
-	mac_hi = readl(&cdev->macid0h);
-	mac_addr[0] = mac_hi & 0xFF;
-	mac_addr[1] = (mac_hi & 0xFF00) >> 8;
-	mac_addr[2] = (mac_hi & 0xFF0000) >> 16;
-	mac_addr[3] = (mac_hi & 0xFF000000) >> 24;
-	mac_addr[4] = mac_lo & 0xFF;
-	mac_addr[5] = (mac_lo & 0xFF00) >> 8;
-
-	if (!env_get("ethaddr")) {
-		printf("<ethaddr> not set. Validating first E-fuse MAC\n");
-
-		if (is_valid_ethaddr(mac_addr))
-			eth_env_set_enetaddr("ethaddr", mac_addr);
-	}
+	if ((CONFIG_IS_ENABLED(NET) || CONFIG_IS_ENABLED(NET_LWIP)) &&
+	    !IS_ENABLED(CONFIG_XPL_BUILD)) {
+		uint8_t mac_addr[6];
+		uint32_t mac_hi, mac_lo;
+
+		/* try reading mac address from efuse */
+		mac_lo = readl(&cdev->macid0l);
+		mac_hi = readl(&cdev->macid0h);
+		mac_addr[0] = mac_hi & 0xFF;
+		mac_addr[1] = (mac_hi & 0xFF00) >> 8;
+		mac_addr[2] = (mac_hi & 0xFF0000) >> 16;
+		mac_addr[3] = (mac_hi & 0xFF000000) >> 24;
+		mac_addr[4] = mac_lo & 0xFF;
+		mac_addr[5] = (mac_lo & 0xFF00) >> 8;
+
+		if (!env_get("ethaddr")) {
+			printf("<ethaddr> not set. Validating first E-fuse MAC\n");
+
+			if (is_valid_ethaddr(mac_addr))
+				eth_env_set_enetaddr("ethaddr", mac_addr);
+		}
 
-	mac_lo = readl(&cdev->macid1l);
-	mac_hi = readl(&cdev->macid1h);
-	mac_addr[0] = mac_hi & 0xFF;
-	mac_addr[1] = (mac_hi & 0xFF00) >> 8;
-	mac_addr[2] = (mac_hi & 0xFF0000) >> 16;
-	mac_addr[3] = (mac_hi & 0xFF000000) >> 24;
-	mac_addr[4] = mac_lo & 0xFF;
-	mac_addr[5] = (mac_lo & 0xFF00) >> 8;
-
-	if (!env_get("eth1addr")) {
-		if (is_valid_ethaddr(mac_addr))
-			eth_env_set_enetaddr("eth1addr", mac_addr);
-	}
+		mac_lo = readl(&cdev->macid1l);
+		mac_hi = readl(&cdev->macid1h);
+		mac_addr[0] = mac_hi & 0xFF;
+		mac_addr[1] = (mac_hi & 0xFF00) >> 8;
+		mac_addr[2] = (mac_hi & 0xFF0000) >> 16;
+		mac_addr[3] = (mac_hi & 0xFF000000) >> 24;
+		mac_addr[4] = mac_lo & 0xFF;
+		mac_addr[5] = (mac_lo & 0xFF00) >> 8;
+
+		if (!env_get("eth1addr")) {
+			if (is_valid_ethaddr(mac_addr))
+				eth_env_set_enetaddr("eth1addr", mac_addr);
+		}
 
-	env_set("ice_mii", prueth_is_mii ? "mii" : "rmii");
-#endif
+		env_set("ice_mii", prueth_is_mii ? "mii" : "rmii");
+	}
 
 	if (!env_get("serial#")) {
 		char *board_serial = env_get("board_serial");
-- 
2.34.1

base-commit: e4c8b32d03d7ecffd586b7d33336603ad639d7c0
branch: am335x-no-net


More information about the U-Boot mailing list