eren-terzioglu opened a new pull request, #18695:
URL: https://github.com/apache/nuttx/pull/18695

   ## Summary
   
   [GH issue](https://github.com/apache/nuttx/issues/15692) states that 
`esp32-devkitc:smp` config with enabling `CONFIG_ESP32_IRAM_HEAP` fails to boot.
   
   <!-- This field should contain a summary of the changes. It will be 
pre-filled with the commit's message and descriptions. Adjust it accordingly -->
   
   * arch/xtensa/esp32: Fix IRAM heap boot issue
   
   Fix IRAM heap boot issue for esp32
   
   ## Impact
   <!-- Please fill the following sections with YES/NO and provide a brief 
explanation -->
   
   Impact on user: Yes, a bug fixed on esp32
   <!-- Does it impact user's applications? How? -->
   
   Impact on build: No
   <!-- Does it impact on building NuttX? How? (please describe the required 
changes on the build system) -->
   
   Impact on hardware: ESP32
   <!-- Does it impact a specific hardware supported by NuttX? -->
   
   Impact on documentation: No
   <!-- Does it impact the existing documentation? Please provide additional 
documentation to reflect that -->
   
   Impact on security: No
   <!-- Does it impact NuttX's security? -->
   
   Impact on compatibility: No
   <!-- Does it impact compatibility between previous and current versions? Is 
this a breaking change? -->
   
   ## Testing
   <!-- Please provide all the testing procedure. Consider that upstream 
reviewers should be able to reproduce the same testing performed internally -->
   
   `esp32-devkitc:smp` config used with`CONFIG_ESP32_IRAM_HEAP` enabled
   
   ### Building
   <!-- Provide how to build the test for each SoC being tested -->
   
   Command to build:
   ```
   make -j distclean && ./tools/configure.sh esp32-devkitc:smp && kconfig-tweak 
-e CONFIG_ESP32_IRAM_HEAP && make olddefconfig && make -j8; make download 
ESPTOOL_PORT=/dev/ttyUSB0 ESPTOOL_BAUD=921600 ESPTOOL_BINDIR=./
   ```
   
   ### Running
   <!-- Provide how to run the test for each SoC being tested -->
   
   The device was not even booting. Used `free` command to test heap is been 
initialized too
   
   ### Results
   <!-- Provide tests' results and runtime logs -->
   
   Before fix:
   
   ```
   rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
   configsip: 188777542, SPIWP:0xee
   clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
   mode:DIO, clock div:2
   load:0x3ffb3da0,len:3568
   load:0x40080000,len:34884
   entry 0x40082d7c
   *** Booting NuttX ***
   dram: lma 0x00001020 vma 0x3ffb3da0 len 0xdf0    (3568)
   iram: lma 0x00001e18 vma 0x40080000 len 0x8844   (34884)
   padd: lma 0x0000a668 vma 0x00000000 len 0x5990   (22928)
   imap: lma 0x00010000 vma 0x400e0000 len 0x1fcdc  (130268)
   padd: lma 0x0002fce4 vma 0x00000000 len 0x314    (788)
   dmap: lma 0x00030000 vma 0x3f410000 len 0xa640   (42560)
   total segments stored 6
   [CPU0] xtensa_user_panic: User Exception: EXCCAUSE=0003 task: CPU0 IDLE
   [CPU0] dump_assert_info: Current Version: NuttX  10.4.0 30218bde9d-dirty Feb 
20 2026 14:19:14 xtensa
   [CPU0] dump_assert_info: Assertion failed user panic: at file: :0 
task(CPU0): CPU0 IDLE process: Kernel 0x400e1f90
   [CPU0] up_dump_register:    PC: 400e64c2    PS: 00060730
   [CPU0] up_dump_register:    A0: 800e772c    A1: 3ffb0b40    A2: 40088848    
A3: 400889d0
   [CPU0] up_dump_register:    A4: 40088948    A5: 3f41032c    A6: 00017630    
A7: 00000001
   [CPU0] up_dump_register:    A8: 00000000    A9: 3ffb0b30   A10: 40088848   
A11: 00000000
   [CPU0] up_dump_register:   A12: 00000188   A13: 400889d0   A14: 00000004   
A15: 00000018
   [CPU0] up_dump_register:   SAR: 00000004 CAUSE: 00000003 VADDR: 400889cc
   [CPU0] up_dump_register:  LBEG: 4000c46c  LEND: 4000c477  LCNT: 00000000
   [CPU0] dump_stacks: ERROR: Stack pointer 3ffb0b40is not within the stack
   [CPU0] dump_stackinfo: IRQ Stack:
   [CPU0] dump_stackinfo:   base: 0x3ffb1cc4
   [CPU0] dump_stackinfo:   size: 00002048
   [CPU0] stack_dump: 0x3ffb1cd4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1cf4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1d14: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1d34: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1d54: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1d74: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1d94: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1db4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1dd4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1df4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1e14: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1e34: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1e54: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1e74: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1e94: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1eb4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1ed4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1ef4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1f14: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1f34: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1f54: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1f74: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1f94: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1fb4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1fd4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb1ff4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb2014: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb2034: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb2054: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb2074: 00000109 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb2094: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb20b4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb20d4: 00000109 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb20f4: 00000000 00000000 00000000 00000009 00000109 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb2114: 00000000 00000000 00000000 00000009 00000109 
00000000 00000000 00000000
   [CPU0] stack_dump: 0x3ffb2134: 800fda3c 3ffb21b4 3ffb21f4 3f412439 32313030 
33666662 3ffb21d4 3ffb21b4
   [CPU0] stack_dump: 0x3ffb2154: 00000001 3f41a554 00000002 00000000 00000000 
00000060 3ffb22e4 3ffb22c4
   [CPU0] stack_dump: 0x3ffb2174: 00000008 3f412469 3ffb2254 00000008 00000000 
00000000 3ffb2214 3ffb21f4
   [CPU0] stack_dump: 0x3ffb2194: 00000028 00000000 00000001 00000003 800f413c 
3ffb21f4 00000007 3f412439
   [CPU0] stack_dump: 0x3ffb21b4: 3ffb22e4 3ffb22c4 00000008 3ffb22c4 800f413c 
3ffb21f4 00000067 3f412439
   [CPU0] stack_dump: 0x3ffb21d4: 3ffb22e4 3ffb22c4 00000008 fffffffc 800f4164 
3ffb2274 00000001 3f412439
   [CPU0] stack_dump: 0x3ffb21f4: 00000067 400fe848 400fe87c 400fe7d4 38206366 
34663030 20343631 62666633
   [CPU0] stack_dump: 0x3ffb2214: 30333033 33303220 33363334 32362031 36363636 
200a3333 66303034 38343865
   [CPU0] stack_dump: 0x3ffb2234: 33333320 33333336 32332034 30323633 00000000 
0000000a 5f706d75 63617473
   [CPU0] stack_dump: 0x3ffb2254: 0000000a 3ffb2304 00000008 fffffffc 80085f28 
3ffb22b4 00000001 3f412439
   [CPU0] stack_dump: 0x3ffb2274: 3ffb22e4 3ffb22c4 00000008 6b636174 3ffb22e4 
3ffb22c4 00000008 34623062
   [CPU0] stack_dump: 0x3ffb2294: 3ffb22e4 3ffb22c4 00000008 fffffffc 80085f91 
3ffb2304 3ffb2274 3ffb24c4
   [CPU0] stack_dump: 0x3ffb22b4: 3ffb22e4 3ffb22c4 00000008 fffffffc 3ffb2324 
3ffb2304 3f41273d 3ffb2294
   [CPU0] stack_dump: 0x3ffb22d4: 3ffb22e4 3ffb22c4 00000008 fffffffc 3f41273d 
3ffb22b4 3ffb22e4 3ffb22c4
   [CPU0] stack_dump: 0x3ffb22f4: 80086010 3ffb2344 3f4124e0 00000000 00000008 
fffffffc 3f41273d 3ffb22b4
   [CPU0] stack_dump: 0x3ffb2314: 3f41273d 3ffb22b4 00000008 00000009 00000000 
3ffb22b4 00000008 0002b460
   [CPU0] stack_dump: 0x3ffb2334: 8008643c 3ffb2364 3ffb0c00 00000000 3ffb1cc4 
00000800 000007f0 3f412748
   [CPU0] stack_dump: 0x3ffb2354: 80085c68 3ffb2394 3f4118cc 3ffb0c00 00000000 
00000001 00000001 3f4103ad
   [CPU0] stack_dump: 0x3ffb2374: 00000000 3ffb1cc4 00000000 00000000 80085b39 
3ffb2484 00000003 3ffb0a68
   [CPU0] stack_dump: 0x3ffb2394: 00000000 3ffb0cb4 3f41257f 400e1f90 7474754e 
6e6f0058 5845203a 55414343
   [CPU0] stack_dump: 0x3ffb23b4: 303d4553 20330030 6b736174 5043203a 00000000 
0000000a 00000000 00000000
   [CPU0] stack_dump: 0x3ffb23d4: 0000000a 2e303100 00302e34 3ffb0da8 80085c59 
3ffb2434 30330001 62383132
   [CPU0] stack_dump: 0x3ffb23f4: 64396564 7269642d 46207974 32206265 30322030 
31203632 39313a34 0034313a
   [CPU0] stack_dump: 0x3ffb2414: 3ffb2464 3ffb2444 00000008 65747820 0061736e 
3ffb2484 00000003 3ffb0a68
   [CPU0] stack_dump: 0x3ffb2434: 3ffb2464 3ffb0c00 3ffb30a0 3f4103d9 00000000 
00000000 3f4103e4 00000003
   [CPU0] stack_dump: 0x3ffb2454: 00000002 00000000 00000000 00000000 3f4103d9 
3ffb30a0 3f412763 400e1f90
   [CPU0] stack_dump: 0x3ffb2474: 40080f20 3ffb24a4 00000003 3ffb0a68 3ffb0c00 
3ffb0e18 00000000 00000004
   [CPU0] stack_dump: 0x3ffb2494: 00040023 3ffb24c4 000000ff 3ffb0ad0 00000000 
3ffb0b30 40088848 00000000
   [CPU0] stack_dump: 0x3ffb24b4: 00000000 00000000 00000000 00000000 00000000 
00000000 00000000 00000000
   [CPU0] dump_stacks: ERROR: Stack pointer 3ffb0b40 is not within the stack
   [CPU0] dump_stackinfo: User Stack:
   [CPU0] dump_stackinfo:   base: 0
   [CPU0] dump_stackinfo:   size: 00000000
   [CPU0] stack_dump: 0: 00000000 00000000 00000000 00000000 00000000 00000000 
00000000 00000000
   [CPU0] dump_fatal_info: Dump CPU1: RUNNING
   [CPU0] dump_tasks:    PID GROUP   CPU PRI POLICY   TYPE    NPX STATE   EVENT 
     SIGMASK          STACKBASE  STACKSIZE      USED   FILLED    COMMAND
   [CPU0] dump_tasks:   ----   ---     0 --- -------- ------- --- ------- 
---------- ---------------- 0x3ffb1cc4      2048      2032    99.2%!   irq
   [CPU0] dump_tasks:   ----   ---     1 --- -------- ------- --- ------- 
---------- ---------------- 0x3ffb24c4      2048      2032    99.2%!   irq
   ```
   
   After fix:
   ```
   rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
   configsip: 188777542, SPIWP:0xee
   clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
   mode:DIO, clock div:2
   load:0x3ffb3da0,len:3568
   load:0x40080000,len:35544
   entry 0x40082d8c
   *** Booting NuttX ***
   dram: lma 0x00001020 vma 0x3ffb3da0 len 0xdf0    (3568)
   iram: lma 0x00001e18 vma 0x40080000 len 0x8ad8   (35544)
   padd: lma 0x0000a908 vma 0x00000000 len 0x56f0   (22256)
   imap: lma 0x00010000 vma 0x400e0000 len 0x1fcec  (130284)
   padd: lma 0x0002fcf4 vma 0x00000000 len 0x304    (772)
   dmap: lma 0x00030000 vma 0x3f410000 len 0xa640   (42560)
   total segments stored 6
   
   NuttShell (NSH) NuttX-10.4.0
   nsh> free
         total       used       free    maxused    maxfree  nused  nfree name
         95528        408      95120        392      95120      2      1 
iramheap
        308704       9912     298792      10304     173640     29      4 Umem
   nsh> 
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to