summaryrefslogtreecommitdiff
path: root/board/amlogic/p200/p200.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2024-03-25 22:15:47 -0400
committerTom Rini <trini@konsulko.com>2024-03-25 22:15:47 -0400
commitab8d9ca3044acf51d8ff3bf3c4718c48f30ad606 (patch)
tree35c2e2eae8ed2cf1dda331b19dd806a33aaad913 /board/amlogic/p200/p200.c
parent8ef8dcc54a0d507912ee57e15a541c5cebcfca76 (diff)
parentdde373bde392c38649c8c4420e0c98ef8d38d9dc (diff)
Merge tag 'v2024.04-rc5' into next
Prepare v2024.04-rc5
Diffstat (limited to 'board/amlogic/p200/p200.c')
-rw-r--r--board/amlogic/p200/p200.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/board/amlogic/p200/p200.c b/board/amlogic/p200/p200.c
index 7c432f9d281..754242e4a9f 100644
--- a/board/amlogic/p200/p200.c
+++ b/board/amlogic/p200/p200.c
@@ -21,20 +21,24 @@
int misc_init_r(void)
{
- u8 mac_addr[EFUSE_MAC_SIZE];
- char serial[EFUSE_SN_SIZE];
+ u8 mac_addr[EFUSE_MAC_SIZE + 1];
+ char serial[EFUSE_SN_SIZE + 1];
ssize_t len;
if (!eth_env_get_enetaddr("ethaddr", mac_addr)) {
len = meson_sm_read_efuse(EFUSE_MAC_OFFSET,
mac_addr, EFUSE_MAC_SIZE);
+ mac_addr[len] = '\0';
if (len == EFUSE_MAC_SIZE && is_valid_ethaddr(mac_addr))
eth_env_set_enetaddr("ethaddr", mac_addr);
+ else
+ meson_generate_serial_ethaddr();
}
if (!env_get("serial#")) {
len = meson_sm_read_efuse(EFUSE_SN_OFFSET, serial,
EFUSE_SN_SIZE);
+ serial[len] = '\0';
if (len == EFUSE_SN_SIZE)
env_set("serial#", serial);
}