From: Viacheslav Bocharov Date: Wed, 3 Sep 2025 11:06:03 +0000 (+0300) Subject: ARM: amlogic: fix JetHub D1 eth mac fallback generation X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d521fa32cc692a44c7c11d4b2a86f371d614e727;p=thirdparty%2Fu-boot.git ARM: amlogic: fix JetHub D1 eth mac fallback generation JetHome has allocated a special range for MAC fallback on JetHub D1/D1+ devices. Signed-off-by: Viacheslav Bocharov Link: https://lore.kernel.org/r/20250903110726.546083-1-adeep@lexina.in Signed-off-by: Neil Armstrong --- diff --git a/board/amlogic/jethub-j100/jethub-j100.c b/board/amlogic/jethub-j100/jethub-j100.c index 9e87fb9f9d7..79732864d03 100644 --- a/board/amlogic/jethub-j100/jethub-j100.c +++ b/board/amlogic/jethub-j100/jethub-j100.c @@ -19,21 +19,17 @@ int misc_init_r(void) { u8 mac_addr[ARP_HLEN + 1]; char serial[SM_SERIAL_SIZE]; - u32 sid; + u16 sid; if (!meson_sm_get_serial(serial, SM_SERIAL_SIZE)) { - sid = crc32(0, (unsigned char *)serial, SM_SERIAL_SIZE); - /* Ensure the NIC specific bytes of the mac are not all 0 */ - if ((sid & 0xffff) == 0) - sid |= 0x800000; - - /* OUI registered MAC address */ - mac_addr[0] = 0x10; - mac_addr[1] = 0x27; - mac_addr[2] = 0xBE; - mac_addr[3] = (sid >> 16) & 0xff; - mac_addr[4] = (sid >> 8) & 0xff; - mac_addr[5] = (sid >> 0) & 0xff; + sid = crc32(0, (unsigned char *)serial, SM_SERIAL_SIZE) & 0xFFFF; + /* OUI registered fallback MAC address */ + mac_addr[0] = 0xF0; + mac_addr[1] = 0x57; + mac_addr[2] = 0x8D; + mac_addr[3] = 0x00; + mac_addr[4] = (sid >> 8) & 0xFF; + mac_addr[5] = sid & 0xFF; mac_addr[ARP_HLEN] = '\0'; eth_env_set_enetaddr("ethaddr", mac_addr);