mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
2b0f623259
Currently the last 128KB of DRAM is reserved for the bootloader & early boot stacks. This means if >192KB of static DRAM is allocated, the only available heap is this region - which is disabled until the scheduler starts. As a result, you get either heap corruption on early boot if the static data overlaps startup heap (leading to very weird errors), or FreeRTOS will fail to start when it can't malloc() anything. Long term fix is to move the stacks & bootloader data to the very end of RAM, and only reserve that part for early boot. This is a little fiddly because of also wanting to make sure this memory is not preemptively fragmented when it gets reintroduced to the heap. This will become more important if/when we have more static allocation options in the future. For now, these errors make it clear why the boot has failed. Ref TW13909 |
||
---|---|---|
.. | ||
src | ||
Kconfig.projbuild | ||
Makefile.projbuild |