This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch releases/12.13
in repository https://gitbox.apache.org/repos/asf/nuttx.git


The following commit(s) were added to refs/heads/releases/12.13 by this push:
     new 9f794ace0e0 boards/esp32s3: Fix MAC address byte order in LAN9250 
driver
9f794ace0e0 is described below

commit 9f794ace0e06a57b187fdbef2ddd283435a8d805
Author: nuttxs <[email protected]>
AuthorDate: Tue Mar 10 10:58:58 2026 +0800

    boards/esp32s3: Fix MAC address byte order in LAN9250 driver
    
    Fix MAC address byte order by reversing 6 bytes after reading
    from eFuse. Adjust offset logic to apply after byte reversal,
    ensuring Ethernet MAC is base_mac +3. Comply with Espressif's
    MAC address generation specification for ESP32S3
    
    Signed-off-by: nuttxs <[email protected]>
---
 boards/xtensa/esp32s3/common/src/esp32s3_lan9250.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/boards/xtensa/esp32s3/common/src/esp32s3_lan9250.c 
b/boards/xtensa/esp32s3/common/src/esp32s3_lan9250.c
index 3accb752fce..5eeae968f45 100644
--- a/boards/xtensa/esp32s3/common/src/esp32s3_lan9250.c
+++ b/boards/xtensa/esp32s3/common/src/esp32s3_lan9250.c
@@ -188,8 +188,8 @@ static int lan9250_getmac(const struct lan9250_lower_s 
*lower, uint8_t *mac)
 {
   int fd;
   int ret;
-#ifndef CONFIG_ESP32S3_UNIVERSAL_MAC_ADDRESSES_FOUR
   int i;
+#ifndef CONFIG_ESP32S3_UNIVERSAL_MAC_ADDRESSES_FOUR
   uint8_t tmp;
 #endif
 
@@ -227,6 +227,11 @@ static int lan9250_getmac(const struct lan9250_lower_s 
*lower, uint8_t *mac)
 
   close(fd);
 
+  for (i = 0; i < 6; i++)
+    {
+      mac[i] = mac[5 - i];
+    }
+
 #ifdef CONFIG_ESP32S3_UNIVERSAL_MAC_ADDRESSES_FOUR
   mac[5] += 3;
 #else

Reply via email to