boards/esp32s3-xiao: wire up esp_openeth_initialize()

esp32s3-devkit, esp32s3-ws-lcd128, lckfb-szpi-esp32s3 and esp32-devkitc
all call esp_openeth_initialize() from their bring-up to register the
openeth MAC (the NIC QEMU's esp32s3 machine provides); esp32s3-xiao
never did, so CONFIG_ESP32S3_OPENETH built but no wlan/eth netdev ever
registered under QEMU -- same shape of gap as the IMU, SD, console,
Wi-Fi and SPI-flash wiring already fixed for this board.

Confirmed under QEMU's esp32s3 machine, combined with the esp_openeth
RX-interrupt fix (merged in 88c8623ced): the netdev registers and the
guest genuinely sends and receives.

Signed-off-by: Felipe Moura <moura.fmo@gmail.com>
Assisted-by: Claude:claude-sonnet-5
This commit is contained in:
Felipe Moura 2026-09-15 20:29:19 -03:00 • committed by Xiang Xiao
parent 88c8623ced
commit bda2251669
2 changed files with 29 additions and 0 deletions

View file

@ -98,5 +98,22 @@ int board_i2c_init(void);
int board_lsm6ds3trc_initialize(int devno, int busno);
#endif
/****************************************************************************
* Name: esp_openeth_initialize
*
* Description:
* Register the openeth MAC driver, the NIC emulated by QEMU's esp32s3
* machine. Implemented by the shared Espressif code in
* arch/xtensa/src/common/espressif/esp_openeth.c.
*
* Returned Value:
* Zero (OK) on success; a negated errno value on failure.
*
****************************************************************************/
#ifdef CONFIG_ESP32S3_OPENETH
int esp_openeth_initialize(void);
#endif
#endif /* __ASSEMBLY__ */
#endif /* __BOARDS_XTENSA_ESP32S3_ESP32S3_XIAO_SRC_ESP32S3_XIAO_H */

View file

@ -181,6 +181,18 @@ int esp32s3_bringup(void)
# endif
#endif
#ifdef CONFIG_ESP32S3_OPENETH
/* The NIC QEMU's esp32s3 machine provides; compiles away on real
* hardware, where CONFIG_ESP32S3_OPENETH is never set.
*/
ret = esp_openeth_initialize();
if (ret < 0)
{
syslog(LOG_ERR, "ERROR: Failed to initialize openeth: %d\n", ret);
}
#endif
/* If we got here then perhaps not all initialization was successful, but
* at least enough succeeded to bring-up NSH with perhaps reduced
* capabilities.