From 08eccb081cbcffa36a114c6d850fd52a322ef4ac Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Tue, 31 Mar 2026 22:04:44 -1000 Subject: [PATCH] Revert "Revert: only enable configSUPPORT_STATIC_ALLOCATION on BK72xx" This reverts commit 444ee47ecbab602fe2f981a5881f07532ab72b4a. --- esphome/components/libretiny/__init__.py | 15 +++++++-------- .../components/libretiny/freertos_static_alloc.c | 4 ++-- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/esphome/components/libretiny/__init__.py b/esphome/components/libretiny/__init__.py index 418a9991a4..2eeb880997 100644 --- a/esphome/components/libretiny/__init__.py +++ b/esphome/components/libretiny/__init__.py @@ -438,14 +438,13 @@ async def component_to_code(config): # 4-8KB flash). Even if linked, it would use locks, so explicit FreeRTOS # mutexes are simpler and equivalent. cg.add_define(ThreadModel.MULTI_NO_ATOMICS) - # Enable FreeRTOS static allocation so FreeRTOSQueue can use - # xQueueCreateStatic (queue storage in BSS, no heap allocation). - # Also moves FreeRTOS internal structures (timer command queue) to BSS. - # BK72xx's FreeRTOSConfig.h doesn't define this, defaulting to 0. - # The -D wins over the #ifndef default in FreeRTOS.h. - # Only enabled on BK72xx — RTL87xx loses heap with it enabled due to - # different FreeRTOS internals. - cg.add_build_flag("-DconfigSUPPORT_STATIC_ALLOCATION=1") + + # Enable FreeRTOS static allocation APIs (xQueueCreateStatic, etc.). + # Moves FreeRTOS internal structures (timer command queue) from heap to BSS, + # and allows FreeRTOSQueue to use xQueueCreateStatic on BK72xx. + # LibreTiny's FreeRTOSConfig.h doesn't define this, defaulting to 0. + # The -D wins over the #ifndef default in FreeRTOS.h. + cg.add_build_flag("-DconfigSUPPORT_STATIC_ALLOCATION=1") # RTL8710B needs FreeRTOS 8.2.3+ for xTaskNotifyGive/ulTaskNotifyTake # required by AsyncTCP 3.4.3+ (https://github.com/esphome/esphome/issues/10220) diff --git a/esphome/components/libretiny/freertos_static_alloc.c b/esphome/components/libretiny/freertos_static_alloc.c index cd919e86a9..dc95eda785 100644 --- a/esphome/components/libretiny/freertos_static_alloc.c +++ b/esphome/components/libretiny/freertos_static_alloc.c @@ -10,7 +10,7 @@ * allowing queue storage to live in BSS with zero runtime heap allocation. */ -#ifdef USE_BK72XX +#ifdef USE_LIBRETINY #include #include @@ -45,4 +45,4 @@ void vApplicationGetTimerTaskMemory(StaticTask_t **ppxTimerTaskTCBBuffer, StackT #endif /* configSUPPORT_STATIC_ALLOCATION */ -#endif /* USE_BK72XX */ +#endif /* USE_LIBRETINY */