Revert "boards/esp32s3-xiao: switch defconfigs to nxinit entrypoint" - #20041
Merged
xiaoxiang781216 merged 1 commit intoSep 2, 2026
Merged
Conversation
This reverts commit 7cc6707. Felipe Moura de Oliveira reported on the dev mailing list that this commit hangs boot on real Seeed XIAO ESP32-S3 Sense hardware (chip rev v0.2): both defconfigs (combo, usbnsh) never reach nx_start after a normal reset (no console output, no USB enumeration; only ROM download mode via the BOOT strap pin responds). JTAG (OpenOCD + GDB) shows the core statically stuck inside the chip boot ROM address range (0x40034000-0x40048000), with nx_start never reached at its own address (0x42011068) in that build. Reverting only this commits defconfig changes on top of current master fixes the boot. Local static analysis (before/after build product comparison via esptool image_info and readelf -S) ruled out image size/segment count as the cause: both binaries have 3 segments, identical IRAM segment address/size byte-for-byte, and the flash-mapped code/data growth from this change is ~14.7KB total against an 8MB flash budget. No hardware matching the reported board was available locally to reproduce or bisect further; reverting to unblock master per the reporters request while root cause is investigated with real hardware access. Reference: https://www.mail-archive.com/dev@nuttx.apache.org/msg15063.html Assisted-by: Kiro:claude-sonnet-5 Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
JianyuWang0623
marked this pull request as ready for review
September 2, 2026 02:30
xiaoxiang781216
approved these changes
Sep 2, 2026
simbit18
approved these changes
Sep 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Revert commit
7cc6707a76b10cc951f209c09b7f2b6cd228e535("boards/esp32s3-xiao: switch defconfigs to nxinit entrypoint").Felipe Moura de Oliveira reported on the dev mailing list that this commit hangs boot on real Seeed XIAO ESP32-S3 Sense hardware (chip rev v0.2): both defconfigs (
combo,usbnsh) never reachnx_startafter a normal reset — no console output, no USB enumeration; the board only responds when forced into ROM download mode via the BOOT strap pin. JTAG (OpenOCD + GDB) shows the core statically stuck inside the chip boot ROM address range (0x40034000-0x40048000) across independent halts, whilenx_startin that build lives at a completely different address (0x42011068). Reverting only this commit's two defconfig changes on top of current master fixes the boot.Reference: https://www.mail-archive.com/dev@nuttx.apache.org/msg15063.html
I don't have this specific board (Seeed XIAO ESP32-S3 Sense) locally to reproduce. I did a static before/after build-product comparison (esptool
image_info+readelf -S) to sanity-check the most likely hypothesis (image size/segment layout), and it does not explain the hang: both binaries have 3 segments, byte-identical IRAM segment address/size, and the total flash-mapped code/data growth from the reverted commit is ~14.7KB against an 8MB flash budget — negligible. So the real root cause is still open; reverting now to unblock master per the reporter's request, root cause to be investigated further with real hardware access (the reporter offered to help test).Impact
combo/usbnshdefconfigs go back tonsh_mainas the top-level init entrypoint (pre-nxinit behavior), matching every other released esp32s3-xiao defconfig prior to7cc6707a76b.Testing
Build-only (no esp32s3-xiao hardware available locally):
Both defconfigs build cleanly after the revert, matching their pre-
7cc6707a76bstate (CONFIG_INIT_ENTRYPOINT="nsh_main", noCONFIG_SYSTEM_NXINIT). This is a pure config revert (git revert, no manual edits) so behavior is byte-for-byte the same as before the reverted commit. Runtime boot on real esp32s3-xiao hardware is not re-verified here (no such board available); the reporter (Felipe) has the hardware and offered to help validate.