gustavonihei opened a new pull request, #8166: URL: https://github.com/apache/nuttx/pull/8166
## Summary This PR intends to enable the separation of Kernel and Userspace heaps in ESP32 operating under Flat mode, by relying on the `MM_KERNEL_HEAP` extension brought by #8140. This new feature enables the allocation of the entire Userspace heap into SPI RAM and reserving the Internal RAM exclusively for the Kernel heap, which may benefit some timing-constrained Kernel components (e.g. Wi-Fi driver). ## Impact **Breaking change**: `ESP32_SPIRAM` no longer auto selects `XTENSA_IMEM_USE_SEPARATE_HEAP`. `XTENSA_IMEM_USE_SEPARATE_HEAP` is now selected by `ESP32_IMM_HEAP`, which in turn is **not** enabled by default. Drivers that previously relied on `XTENSA_IMEM_USE_SEPARATE_HEAP` now bring in `ESP32_IMM_HEAP` if `ESP32_SPIRAM` is also selected, with the notable exception from `ESP32_WIFI`. `ESP32_WIFI` previously used `XTENSA_IMEM_USE_SEPARATE_HEAP` for allocating dynamic data into Internal RAM via a specific API. With this PR, there is now an alternative approach using `MM_KERNEL_HEAP`. So it is up to the user to either select `ESP32_IMM_HEAP` or `MM_KERNEL_HEAP`. In order to keep the current behavior, custom board users shall select `ESP32_IMM_HEAP` on Kconfig. ## Testing Successful execution of `ostest` in `esp32-devkitc:psram_usrheap` defconfig. Successful connection to Wi-Fi network using a custom version of `esp32-devkitc:wapi`.  -- 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]
