diff --git a/board/amlogic/vim3/vim3.c b/board/amlogic/vim3/vim3.c index 5d9ac6458d6..fcd60ab1e05 100644 --- a/board/amlogic/vim3/vim3.c +++ b/board/amlogic/vim3/vim3.c @@ -153,6 +153,7 @@ int misc_init_r(void) { u8 mac_addr[MAC_ADDR_LEN]; char efuse_mac_addr[EFUSE_MAC_SIZE], tmp[3]; + char serial_string[EFUSE_MAC_SIZE + 1]; ssize_t len; if (!eth_env_get_enetaddr("ethaddr", mac_addr)) { @@ -177,5 +178,13 @@ int misc_init_r(void) eth_env_get_enetaddr("ethaddr", mac_addr); } + if (!env_get("serial#")) { + eth_env_get_enetaddr("ethaddr", mac_addr); + sprintf(serial_string, "%02X%02X%02X%02X%02X%02X", + mac_addr[0], mac_addr[1], mac_addr[2], + mac_addr[3], mac_addr[4], mac_addr[5]); + env_set("serial#", serial_string); + } + return 0; }