From 4d636c9d43fcaec7807e08c5cc7ba7984e18a58a Mon Sep 17 00:00:00 2001 From: "Chen.Zhao" Date: Mon, 23 Dec 2024 16:29:06 +0800 Subject: [PATCH] Force set mac from eeprom even if current mac is valid --- board/aspeed/evb_ast2600/evb_ast2600.c | 2 ++ cmd/nvedit.c | 3 +++ include/configs/aspeed-common.h | 2 ++ 3 files changed, 7 insertions(+) diff --git a/board/aspeed/evb_ast2600/evb_ast2600.c b/board/aspeed/evb_ast2600/evb_ast2600.c index dfb4c7c7ef..62b2cb3585 100644 --- a/board/aspeed/evb_ast2600/evb_ast2600.c +++ b/board/aspeed/evb_ast2600/evb_ast2600.c @@ -220,6 +220,7 @@ int mac_read_from_eeprom(void) u8 ethaddr[MAC_NUM*MAC_BYTE_SIZE]; char addr_str[100]; + printf("mac_read_from_eeprom\n"); memset(ethaddr, 0, sizeof(ethaddr)); if (get_ethaddr_from_eeprom(ethaddr)) { @@ -228,6 +229,7 @@ int mac_read_from_eeprom(void) } for (int i = 0; i < MAC_NUM; i++) { if (is_valid_ethaddr(ðaddr[MAC_BYTE_SIZE*i])) { + printf("eth%d mac:0x%x 0x%x 0x%x 0x%x 0x%x 0x%x\n",i,ethaddr[0+6*i],ethaddr[1+6*i],ethaddr[2+6*i],ethaddr[3+6*i],ethaddr[4+6*i],ethaddr[5+6*i]); memset(addr_str, 0, sizeof(addr_str)); if (i == 0) { snprintf(addr_str, sizeof(addr_str), "ethaddr"); diff --git a/cmd/nvedit.c b/cmd/nvedit.c index 24a6cf7824..2df944eefb 100644 --- a/cmd/nvedit.c +++ b/cmd/nvedit.c @@ -373,8 +373,11 @@ int eth_env_set_enetaddr(const char *name, const uint8_t *enetaddr) { char buf[ARP_HLEN_ASCII + 1]; + /*Luxshare remark this code to force write ethaddr and not check current mac address */ + #if 0 if (eth_env_get_enetaddr(name, (uint8_t *)buf)) return -EEXIST; + #endif sprintf(buf, "%pM", enetaddr); diff --git a/include/configs/aspeed-common.h b/include/configs/aspeed-common.h index 62570cea47..5892b28b2f 100644 --- a/include/configs/aspeed-common.h +++ b/include/configs/aspeed-common.h @@ -86,4 +86,6 @@ #define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE) #endif +#define CONFIG_ENV_OVERWRITE + #endif /* __ASPEED_COMMON_CONFIG_H */ -- 2.25.1