diff --git a/components/freertos/esp_additions/arch/linux/include/freertos/FreeRTOSConfig_arch.h b/components/freertos/esp_additions/arch/linux/include/freertos/FreeRTOSConfig_arch.h index 3b454ec66d..37ddedea0a 100644 --- a/components/freertos/esp_additions/arch/linux/include/freertos/FreeRTOSConfig_arch.h +++ b/components/freertos/esp_additions/arch/linux/include/freertos/FreeRTOSConfig_arch.h @@ -6,7 +6,7 @@ #pragma once -// Linux POSIX simulator specific configuration. This file is included in the common FreeRTOSConfig.h. +/* Linux POSIX simulator specific configuration. This file is included in the common FreeRTOSConfig.h. */ #include "sdkconfig.h" @@ -16,35 +16,36 @@ * https://github.com/FreeRTOS/FreeRTOS/blob/main/FreeRTOS/Demo/Posix_GCC/FreeRTOSConfig.h * ------------------------------------------------------------------------------------------------------------------ */ -// ------------------ Scheduler Related -------------------- +/* ------------------ Scheduler Related -------------------- */ + +#define configMAX_PRIORITIES ( 7 ) +#define configUSE_PORT_OPTIMISED_TASK_SELECTION 0 -#define configMAX_PRIORITIES ( 7 ) -#define configUSE_PORT_OPTIMISED_TASK_SELECTION 0 /* The stack allocated by FreeRTOS will be passed to a pthread. - pthread has a minimal stack size which currently is 16KB. - The rest is for additional structures of the POSIX/Linux port. - This is a magic number since PTHREAD_STACK_MIN seems to not be a constant. */ -#define configMINIMAL_STACK_SIZE ( ( unsigned short ) (0x4000 + 40) / sizeof(portSTACK_TYPE) ) + * pthread has a minimal stack size which currently is 16KB. + * The rest is for additional structures of the POSIX/Linux port. + * This is a magic number since PTHREAD_STACK_MIN seems to not be a constant. */ +#define configMINIMAL_STACK_SIZE ( ( unsigned short ) ( 0x4000 + 40 ) / sizeof( portSTACK_TYPE ) ) /* Currently not used in Linux POSIX simulator */ -#define configMAX_API_CALL_INTERRUPT_PRIORITY 0 +#define configMAX_API_CALL_INTERRUPT_PRIORITY 0 -// ----------------------- System -------------------------- +/* ----------------------- System -------------------------- */ -#define configUSE_NEWLIB_REENTRANT 0 -#define configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H 0 +#define configUSE_NEWLIB_REENTRANT 0 +#define configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H 0 -// ----------------------- Memory ------------------------- +/* ----------------------- Memory ------------------------- */ -#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 65 * 1024 ) ) +#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 65 * 1024 ) ) -// ------------------- Run-time Stats ---------------------- +/* ------------------- Run-time Stats ---------------------- */ -#define configUSE_TRACE_FACILITY 1 +#define configUSE_TRACE_FACILITY 1 -// -------------------- API Includes ----------------------- +/* -------------------- API Includes ----------------------- */ -#define INCLUDE_xTaskGetCurrentTaskHandle 0 /* not defined in POSIX simulator */ -#define INCLUDE_vTaskDelayUntil 1 +#define INCLUDE_xTaskGetCurrentTaskHandle 0 /* not defined in POSIX simulator */ +#define INCLUDE_vTaskDelayUntil 1 /* ------------------------------------------------ ESP-IDF Additions -------------------------------------------------- * diff --git a/components/freertos/esp_additions/arch/riscv/include/freertos/FreeRTOSConfig_arch.h b/components/freertos/esp_additions/arch/riscv/include/freertos/FreeRTOSConfig_arch.h index b2b6a020f1..f4b4996d2f 100644 --- a/components/freertos/esp_additions/arch/riscv/include/freertos/FreeRTOSConfig_arch.h +++ b/components/freertos/esp_additions/arch/riscv/include/freertos/FreeRTOSConfig_arch.h @@ -6,7 +6,7 @@ #pragma once -// RISC-V Architecture specific configuration. This file is included in the common FreeRTOSConfig.h. +/* RISC-V Architecture specific configuration. This file is included in the common FreeRTOSConfig.h. */ #include "sdkconfig.h" @@ -14,45 +14,45 @@ * - All Vanilla FreeRTOS configuration goes into this section * ------------------------------------------------------------------------------------------------------------------ */ -// ------------------ Scheduler Related -------------------- +/* ------------------ Scheduler Related -------------------- */ -#define configMAX_PRIORITIES ( 25 ) +#define configMAX_PRIORITIES ( 25 ) #ifdef CONFIG_FREERTOS_OPTIMIZED_SCHEDULER -#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1 + #define configUSE_PORT_OPTIMISED_TASK_SELECTION 1 #else -#define configUSE_PORT_OPTIMISED_TASK_SELECTION 0 + #define configUSE_PORT_OPTIMISED_TASK_SELECTION 0 #endif /* CONFIG_FREERTOS_OPTIMIZED_SCHEDULER */ -#define configMINIMAL_STACK_SIZE ( CONFIG_FREERTOS_IDLE_TASK_STACKSIZE + configSTACK_OVERHEAD_TOTAL ) -#define configMAX_API_CALL_INTERRUPT_PRIORITY 0 +#define configMINIMAL_STACK_SIZE ( CONFIG_FREERTOS_IDLE_TASK_STACKSIZE + configSTACK_OVERHEAD_TOTAL ) +#define configMAX_API_CALL_INTERRUPT_PRIORITY 0 -// ----------------------- System -------------------------- +/* ----------------------- System -------------------------- */ -#define configUSE_NEWLIB_REENTRANT 1 -#define configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H 1 +#define configUSE_NEWLIB_REENTRANT 1 +#define configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H 1 -// ----------------------- Memory ------------------------- +/* ----------------------- Memory ------------------------- */ /* This isn't used as FreeRTOS will only allocate from internal memory (see * heap_idf.c). We simply define this macro to span all non-statically-allocated * shared RAM. */ -#define configTOTAL_HEAP_SIZE (&_heap_end - &_heap_start) +#define configTOTAL_HEAP_SIZE ( &_heap_end - &_heap_start ) -// ------------------- Run-time Stats ---------------------- +/* ------------------- Run-time Stats ---------------------- */ #if CONFIG_FREERTOS_USE_TRACE_FACILITY /* Used by uxTaskGetSystemState(), and other trace facility functions */ - #define configUSE_TRACE_FACILITY 1 + #define configUSE_TRACE_FACILITY 1 #endif /* CONFIG_FREERTOS_USE_TRACE_FACILITY */ -// -------------------- API Includes ----------------------- +/* -------------------- API Includes ----------------------- */ -#define INCLUDE_xTaskDelayUntil 1 -#define INCLUDE_xTaskGetCurrentTaskHandle 1 +#define INCLUDE_xTaskDelayUntil 1 +#define INCLUDE_xTaskGetCurrentTaskHandle 1 /* ------------------------------------------------ ESP-IDF Additions -------------------------------------------------- * * ------------------------------------------------------------------------------------------------------------------ */ #ifndef configISR_STACK_SIZE -#define configISR_STACK_SIZE (CONFIG_FREERTOS_ISR_STACKSIZE) + #define configISR_STACK_SIZE ( CONFIG_FREERTOS_ISR_STACKSIZE ) #endif diff --git a/components/freertos/esp_additions/arch/xtensa/include/freertos/FreeRTOSConfig_arch.h b/components/freertos/esp_additions/arch/xtensa/include/freertos/FreeRTOSConfig_arch.h index 4de8156f8b..a7ed6d5e4a 100644 --- a/components/freertos/esp_additions/arch/xtensa/include/freertos/FreeRTOSConfig_arch.h +++ b/components/freertos/esp_additions/arch/xtensa/include/freertos/FreeRTOSConfig_arch.h @@ -6,7 +6,7 @@ #pragma once -// Xtensa Architecture specific configuration. This file is included in the common FreeRTOSConfig.h. +/* Xtensa Architecture specific configuration. This file is included in the common FreeRTOSConfig.h. */ #include "sdkconfig.h" @@ -26,55 +26,55 @@ * - XT_USE_SWPRI We don't define this (unused) * ------------------------------------------------------------------------------------------------------------------ */ -#define configXT_SIMULATOR 0 -#define configXT_BOARD 1 /* Board mode */ +#define configXT_SIMULATOR 0 +#define configXT_BOARD 1 /* Board mode */ #if CONFIG_FREERTOS_CORETIMER_0 -#define configXT_TIMER_INDEX 0 + #define configXT_TIMER_INDEX 0 #elif CONFIG_FREERTOS_CORETIMER_1 -#define configXT_TIMER_INDEX 1 + #define configXT_TIMER_INDEX 1 #endif -#define configXT_INTEXC_HOOKS 0 +#define configXT_INTEXC_HOOKS 0 -#define configBENCHMARK 0 +#define configBENCHMARK 0 /* ------------------------------------------------- FreeRTOS Config --------------------------------------------------- * - All Vanilla FreeRTOS configuration goes into this section * ------------------------------------------------------------------------------------------------------------------ */ -// ------------------ Scheduler Related -------------------- +/* ------------------ Scheduler Related -------------------- */ -#define configMAX_PRIORITIES ( 25 ) +#define configMAX_PRIORITIES ( 25 ) #ifdef CONFIG_FREERTOS_OPTIMIZED_SCHEDULER -#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1 + #define configUSE_PORT_OPTIMISED_TASK_SELECTION 1 #else -#define configUSE_PORT_OPTIMISED_TASK_SELECTION 0 + #define configUSE_PORT_OPTIMISED_TASK_SELECTION 0 #endif /* CONFIG_FREERTOS_OPTIMIZED_SCHEDULER */ -#define configMINIMAL_STACK_SIZE ( CONFIG_FREERTOS_IDLE_TASK_STACKSIZE + configSTACK_OVERHEAD_TOTAL ) -#define configMAX_API_CALL_INTERRUPT_PRIORITY XCHAL_EXCM_LEVEL +#define configMINIMAL_STACK_SIZE ( CONFIG_FREERTOS_IDLE_TASK_STACKSIZE + configSTACK_OVERHEAD_TOTAL ) +#define configMAX_API_CALL_INTERRUPT_PRIORITY XCHAL_EXCM_LEVEL -// ----------------------- System -------------------------- +/* ----------------------- System -------------------------- */ -#define configUSE_NEWLIB_REENTRANT 1 -#define configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H 1 +#define configUSE_NEWLIB_REENTRANT 1 +#define configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H 1 -// ----------------------- Memory ------------------------- +/* ----------------------- Memory ------------------------- */ /* This isn't used as FreeRTOS will only allocate from internal memory (see * heap_idf.c). We simply define this macro to span all non-statically-allocated * shared RAM. */ -#define configTOTAL_HEAP_SIZE (&_heap_end - &_heap_start) +#define configTOTAL_HEAP_SIZE ( &_heap_end - &_heap_start ) -// ------------------- Run-time Stats ---------------------- +/* ------------------- Run-time Stats ---------------------- */ #if CONFIG_FREERTOS_USE_TRACE_FACILITY /* Used by uxTaskGetSystemState(), and other trace facility functions */ - #define configUSE_TRACE_FACILITY 1 + #define configUSE_TRACE_FACILITY 1 #endif /* CONFIG_FREERTOS_USE_TRACE_FACILITY */ -// -------------------- API Includes ----------------------- +/* -------------------- API Includes ----------------------- */ -#define INCLUDE_xTaskDelayUntil 1 -#define INCLUDE_xTaskGetCurrentTaskHandle 1 +#define INCLUDE_xTaskDelayUntil 1 +#define INCLUDE_xTaskGetCurrentTaskHandle 1 /* ------------------------------------------------ ESP-IDF Additions -------------------------------------------------- * @@ -85,7 +85,7 @@ * Size needs to be aligned to the stack increment, since the location of * the stack for the 2nd CPU will be calculated using configISR_STACK_SIZE. */ -#define configSTACK_ALIGNMENT 16 +#define configSTACK_ALIGNMENT 16 #ifndef configISR_STACK_SIZE -#define configISR_STACK_SIZE ((CONFIG_FREERTOS_ISR_STACKSIZE + configSTACK_ALIGNMENT - 1) & (~(configSTACK_ALIGNMENT - 1))) + #define configISR_STACK_SIZE ( ( CONFIG_FREERTOS_ISR_STACKSIZE + configSTACK_ALIGNMENT - 1 ) & ( ~( configSTACK_ALIGNMENT - 1 ) ) ) #endif diff --git a/components/freertos/esp_additions/include/freertos/FreeRTOSConfig.h b/components/freertos/esp_additions/include/freertos/FreeRTOSConfig.h index d93d114d45..3a3c10ea25 100644 --- a/components/freertos/esp_additions/include/freertos/FreeRTOSConfig.h +++ b/components/freertos/esp_additions/include/freertos/FreeRTOSConfig.h @@ -8,12 +8,12 @@ #include "sdkconfig.h" -/* -This file gets pulled into assembly sources. Therefore, some includes need to be wrapped in #ifndef __ASSEMBLER__ -*/ +/* This file gets pulled into assembly sources. Therefore, some includes need to + * be wrapped in #ifndef __ASSEMBLER__ */ #ifndef __ASSEMBLER__ -#include //For configASSERT() + /* For configASSERT() */ + #include #endif /* def __ASSEMBLER__ */ /* ----------------------------------------------------- Helpers ------------------------------------------------------- @@ -22,39 +22,40 @@ This file gets pulled into assembly sources. Therefore, some includes need to be /* Higher stack checker modes cause overhead on each function call */ #if CONFIG_STACK_CHECK_ALL || CONFIG_STACK_CHECK_STRONG -#define STACK_OVERHEAD_CHECKER 256 + #define STACK_OVERHEAD_CHECKER 256 #else -#define STACK_OVERHEAD_CHECKER 0 + #define STACK_OVERHEAD_CHECKER 0 #endif /* with optimizations disabled, scheduler uses additional stack */ #if CONFIG_COMPILER_OPTIMIZATION_NONE -#define STACK_OVERHEAD_OPTIMIZATION 320 + #define STACK_OVERHEAD_OPTIMIZATION 320 #else -#define STACK_OVERHEAD_OPTIMIZATION 0 + #define STACK_OVERHEAD_OPTIMIZATION 0 #endif /* apptrace mdule increases minimum stack usage */ #if CONFIG_APPTRACE_ENABLE -#define STACK_OVERHEAD_APPTRACE 1280 + #define STACK_OVERHEAD_APPTRACE 1280 #else -#define STACK_OVERHEAD_APPTRACE 0 + #define STACK_OVERHEAD_APPTRACE 0 #endif /* Stack watchpoint decreases minimum usable stack size by up to 60 bytes. - See FreeRTOS FREERTOS_WATCHPOINT_END_OF_STACK option in Kconfig. */ + * See FreeRTOS FREERTOS_WATCHPOINT_END_OF_STACK option in Kconfig. */ #if CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK -#define STACK_OVERHEAD_WATCHPOINT 60 + #define STACK_OVERHEAD_WATCHPOINT 60 #else -#define STACK_OVERHEAD_WATCHPOINT 0 + #define STACK_OVERHEAD_WATCHPOINT 0 #endif -#define configSTACK_OVERHEAD_TOTAL ( \ - STACK_OVERHEAD_CHECKER + \ - STACK_OVERHEAD_OPTIMIZATION + \ - STACK_OVERHEAD_APPTRACE + \ - STACK_OVERHEAD_WATCHPOINT \ - ) +#define configSTACK_OVERHEAD_TOTAL \ + ( \ + STACK_OVERHEAD_CHECKER + \ + STACK_OVERHEAD_OPTIMIZATION + \ + STACK_OVERHEAD_APPTRACE + \ + STACK_OVERHEAD_WATCHPOINT \ + ) /* The arch-specific FreeRTOSConfig_arch.h in esp_additions/arch_include/. * Placed here due to configSTACK_OVERHEAD_TOTAL. Todo: IDF-5712. */ @@ -69,167 +70,168 @@ This file gets pulled into assembly sources. Therefore, some includes need to be * ------------------------------------------------------------------------------------------------------------------ */ /*----------------------------------------------------------- - * Application specific definitions. - * - * These definitions should be adjusted for your particular hardware and - * application requirements. - * - * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE - * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE. - * - * See http://www.freertos.org/a00110.html - *----------------------------------------------------------*/ +* Application specific definitions. +* +* These definitions should be adjusted for your particular hardware and +* application requirements. +* +* THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE +* FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE. +* +* See http://www.freertos.org/a00110.html +*----------------------------------------------------------*/ -// ------------------ Scheduler Related -------------------- +/* ------------------ Scheduler Related -------------------- */ -#define configUSE_PREEMPTION 1 -#define configUSE_TICKLESS_IDLE CONFIG_FREERTOS_USE_TICKLESS_IDLE +#define configUSE_PREEMPTION 1 +#define configUSE_TICKLESS_IDLE CONFIG_FREERTOS_USE_TICKLESS_IDLE #if configUSE_TICKLESS_IDLE -#define configEXPECTED_IDLE_TIME_BEFORE_SLEEP CONFIG_FREERTOS_IDLE_TIME_BEFORE_SLEEP -#endif //configUSE_TICKLESS_IDLE -#define configCPU_CLOCK_HZ (CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ * 1000000) -#define configTICK_RATE_HZ CONFIG_FREERTOS_HZ -#define configUSE_TIME_SLICING 1 -#define configUSE_16_BIT_TICKS 0 -#define configIDLE_SHOULD_YIELD 0 -#define configKERNEL_INTERRUPT_PRIORITY 1 //Todo: This currently isn't used anywhere + #define configEXPECTED_IDLE_TIME_BEFORE_SLEEP CONFIG_FREERTOS_IDLE_TIME_BEFORE_SLEEP +#endif /* configUSE_TICKLESS_IDLE */ +#define configCPU_CLOCK_HZ ( CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ * 1000000 ) +#define configTICK_RATE_HZ CONFIG_FREERTOS_HZ +#define configUSE_TIME_SLICING 1 +#define configUSE_16_BIT_TICKS 0 +#define configIDLE_SHOULD_YIELD 0 +#define configKERNEL_INTERRUPT_PRIORITY 1 /*Todo: This currently isn't used anywhere */ -// ------------- Synchronization Primitives ---------------- +/* ------------- Synchronization Primitives ---------------- */ -#define configUSE_MUTEXES 1 -#define configUSE_RECURSIVE_MUTEXES 1 -#define configUSE_COUNTING_SEMAPHORES 1 -#define configUSE_QUEUE_SETS 1 -#define configQUEUE_REGISTRY_SIZE CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE -#define configUSE_TASK_NOTIFICATIONS 1 -#define configTASK_NOTIFICATION_ARRAY_ENTRIES CONFIG_FREERTOS_TASK_NOTIFICATION_ARRAY_ENTRIES +#define configUSE_MUTEXES 1 +#define configUSE_RECURSIVE_MUTEXES 1 +#define configUSE_COUNTING_SEMAPHORES 1 +#define configUSE_QUEUE_SETS 1 +#define configQUEUE_REGISTRY_SIZE CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE +#define configUSE_TASK_NOTIFICATIONS 1 +#define configTASK_NOTIFICATION_ARRAY_ENTRIES CONFIG_FREERTOS_TASK_NOTIFICATION_ARRAY_ENTRIES -// ----------------------- System -------------------------- +/* ----------------------- System -------------------------- */ -#define configMAX_TASK_NAME_LEN CONFIG_FREERTOS_MAX_TASK_NAME_LEN +#define configMAX_TASK_NAME_LEN CONFIG_FREERTOS_MAX_TASK_NAME_LEN #if CONFIG_FREERTOS_SMP /* Number of TLSP is doubled to store TLSP deletion callbacks */ -#define configNUM_THREAD_LOCAL_STORAGE_POINTERS ( CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS * 2 ) + #define configNUM_THREAD_LOCAL_STORAGE_POINTERS ( CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS * 2 ) #else /* CONFIG_FREERTOS_SMP */ -#define configNUM_THREAD_LOCAL_STORAGE_POINTERS CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS + #define configNUM_THREAD_LOCAL_STORAGE_POINTERS CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS #endif /* CONFIG_FREERTOS_SMP */ -#define configSTACK_DEPTH_TYPE uint32_t +#define configSTACK_DEPTH_TYPE uint32_t #if CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY -#define configENABLE_BACKWARD_COMPATIBILITY 1 -#else -#define configENABLE_BACKWARD_COMPATIBILITY 0 -#endif -#define configASSERT(a) assert(a) + #define configENABLE_BACKWARD_COMPATIBILITY 1 +#else /* CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY */ + #define configENABLE_BACKWARD_COMPATIBILITY 0 +#endif /* CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY */ +#define configASSERT( a ) assert( a ) -// ----------------------- Memory ------------------------- +/* ----------------------- Memory ------------------------- */ -#define configSUPPORT_STATIC_ALLOCATION 1 -#define configSUPPORT_DYNAMIC_ALLOCATION 1 -#define configAPPLICATION_ALLOCATED_HEAP 1 -#define configSTACK_ALLOCATION_FROM_SEPARATE_HEAP 0 +#define configSUPPORT_STATIC_ALLOCATION 1 +#define configSUPPORT_DYNAMIC_ALLOCATION 1 +#define configAPPLICATION_ALLOCATED_HEAP 1 +#define configSTACK_ALLOCATION_FROM_SEPARATE_HEAP 0 -// ------------------------ Hooks -------------------------- +/* ------------------------ Hooks -------------------------- */ #if CONFIG_FREERTOS_USE_IDLE_HOOK -#define configUSE_IDLE_HOOK 1 + #define configUSE_IDLE_HOOK 1 #else /* CONFIG_FREERTOS_USE_IDLE_HOOK */ -#define configUSE_IDLE_HOOK 0 + #define configUSE_IDLE_HOOK 0 #endif /* CONFIG_FREERTOS_USE_IDLE_HOOK */ #if CONFIG_FREERTOS_USE_TICK_HOOK -#define configUSE_TICK_HOOK 1 + #define configUSE_TICK_HOOK 1 #else /* CONFIG_FREERTOS_USE_TICK_HOOK */ -#define configUSE_TICK_HOOK 0 + #define configUSE_TICK_HOOK 0 #endif /* CONFIG_FREERTOS_USE_TICK_HOOK */ #if CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE -#define configCHECK_FOR_STACK_OVERFLOW 0 + #define configCHECK_FOR_STACK_OVERFLOW 0 #elif CONFIG_FREERTOS_CHECK_STACKOVERFLOW_PTRVAL -#define configCHECK_FOR_STACK_OVERFLOW 1 + #define configCHECK_FOR_STACK_OVERFLOW 1 #elif CONFIG_FREERTOS_CHECK_STACKOVERFLOW_CANARY -#define configCHECK_FOR_STACK_OVERFLOW 2 -#endif -#define configRECORD_STACK_HIGH_ADDRESS 1 // This must be set as the port requires TCB.pxEndOfStack + #define configCHECK_FOR_STACK_OVERFLOW 2 +#endif /* CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE */ +#define configRECORD_STACK_HIGH_ADDRESS 1 /* This must be set as the port requires TCB.pxEndOfStack */ -// ------------------- Run-time Stats ---------------------- +/* ------------------- Run-time Stats ---------------------- */ #ifdef CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS -#define configGENERATE_RUN_TIME_STATS 1 /* Used by vTaskGetRunTimeStats() */ -#endif + #define configGENERATE_RUN_TIME_STATS 1 /* Used by vTaskGetRunTimeStats() */ +#endif /* CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS */ #ifdef CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS -#define configUSE_STATS_FORMATTING_FUNCTIONS 1 /* Used by vTaskList() */ -#endif + #define configUSE_STATS_FORMATTING_FUNCTIONS 1 /* Used by vTaskList() */ +#endif /* CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS */ -// -------------------- Co-routines ----------------------- +/* -------------------- Co-routines ----------------------- */ -#define configUSE_CO_ROUTINES 0 // CO_ROUTINES are not supported in ESP-IDF -#define configMAX_CO_ROUTINE_PRIORITIES 2 +#define configUSE_CO_ROUTINES 0 /* CO_ROUTINES are not supported in ESP-IDF */ +#define configMAX_CO_ROUTINE_PRIORITIES 2 -// ------------------- Software Timer ---------------------- +/* ------------------- Software Timer ---------------------- */ -#define configUSE_TIMERS 1 -#define configTIMER_TASK_PRIORITY CONFIG_FREERTOS_TIMER_TASK_PRIORITY -#define configTIMER_QUEUE_LENGTH CONFIG_FREERTOS_TIMER_QUEUE_LENGTH -#define configTIMER_TASK_STACK_DEPTH CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH +#define configUSE_TIMERS 1 +#define configTIMER_TASK_PRIORITY CONFIG_FREERTOS_TIMER_TASK_PRIORITY +#define configTIMER_QUEUE_LENGTH CONFIG_FREERTOS_TIMER_QUEUE_LENGTH +#define configTIMER_TASK_STACK_DEPTH CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH -// -------------------- API Includes ----------------------- +/* -------------------- API Includes ----------------------- */ #if CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY -#define configENABLE_BACKWARD_COMPATIBILITY 1 -#else -#define configENABLE_BACKWARD_COMPATIBILITY 0 -#endif + #define configENABLE_BACKWARD_COMPATIBILITY 1 +#else /* CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY */ + #define configENABLE_BACKWARD_COMPATIBILITY 0 +#endif /* CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY */ -#define INCLUDE_vTaskPrioritySet 1 -#define INCLUDE_uxTaskPriorityGet 1 -#define INCLUDE_vTaskDelete 1 -#define INCLUDE_vTaskSuspend 1 -#define INCLUDE_vTaskDelay 1 -#define INCLUDE_xTaskGetIdleTaskHandle 1 -#define INCLUDE_xTaskAbortDelay 1 -#define INCLUDE_xSemaphoreGetMutexHolder 1 -#define INCLUDE_xTaskGetHandle 1 -#define INCLUDE_uxTaskGetStackHighWaterMark 1 -#define INCLUDE_uxTaskGetStackHighWaterMark2 1 -#define INCLUDE_eTaskGetState 1 -#define INCLUDE_xTaskResumeFromISR 1 -#define INCLUDE_xTimerPendFunctionCall 1 -#define INCLUDE_xTaskGetSchedulerState 1 -//Unlisted -#define INCLUDE_pxTaskGetStackStart 1 +#define INCLUDE_vTaskPrioritySet 1 +#define INCLUDE_uxTaskPriorityGet 1 +#define INCLUDE_vTaskDelete 1 +#define INCLUDE_vTaskSuspend 1 +#define INCLUDE_vTaskDelay 1 +#define INCLUDE_xTaskGetIdleTaskHandle 1 +#define INCLUDE_xTaskAbortDelay 1 +#define INCLUDE_xSemaphoreGetMutexHolder 1 +#define INCLUDE_xTaskGetHandle 1 +#define INCLUDE_uxTaskGetStackHighWaterMark 1 +#define INCLUDE_uxTaskGetStackHighWaterMark2 1 +#define INCLUDE_eTaskGetState 1 +#define INCLUDE_xTaskResumeFromISR 1 +#define INCLUDE_xTimerPendFunctionCall 1 +#define INCLUDE_xTaskGetSchedulerState 1 +/* Unlisted */ +#define INCLUDE_pxTaskGetStackStart 1 -// -------------------- Trace Macros ----------------------- +/* -------------------- Trace Macros ----------------------- */ /* -For trace macros. -Note: Include trace macros here and not above as trace macros are dependent on some of the FreeRTOS configs -*/ + * For trace macros. + * Note: Include trace macros here and not above as trace macros are dependent on some of the FreeRTOS configs + */ #ifndef __ASSEMBLER__ -#if CONFIG_SYSVIEW_ENABLE -#include "SEGGER_SYSVIEW_FreeRTOS.h" -#undef INLINE // to avoid redefinition -#endif //CONFIG_SYSVIEW_ENABLE + #if CONFIG_SYSVIEW_ENABLE + #include "SEGGER_SYSVIEW_FreeRTOS.h" + #undef INLINE /* to avoid redefinition */ + #endif /* CONFIG_SYSVIEW_ENABLE */ + + #if CONFIG_FREERTOS_SMP -#if CONFIG_FREERTOS_SMP /* Default values for trace macros added to ESP-IDF implementation of SYSVIEW * that is not part of Amazon SMP FreeRTOS. */ -#ifndef traceISR_EXIT - #define traceISR_EXIT() -#endif -#ifndef traceISR_ENTER - #define traceISR_ENTER(_n_) -#endif + #ifndef traceISR_EXIT + #define traceISR_EXIT() + #endif + #ifndef traceISR_ENTER + #define traceISR_ENTER( _n_ ) + #endif -#ifndef traceQUEUE_GIVE_FROM_ISR - #define traceQUEUE_GIVE_FROM_ISR( pxQueue ) -#endif + #ifndef traceQUEUE_GIVE_FROM_ISR + #define traceQUEUE_GIVE_FROM_ISR( pxQueue ) + #endif -#ifndef traceQUEUE_GIVE_FROM_ISR_FAILED - #define traceQUEUE_GIVE_FROM_ISR_FAILED( pxQueue ) -#endif + #ifndef traceQUEUE_GIVE_FROM_ISR_FAILED + #define traceQUEUE_GIVE_FROM_ISR_FAILED( pxQueue ) + #endif -#ifndef traceQUEUE_SEMAPHORE_RECEIVE - #define traceQUEUE_SEMAPHORE_RECEIVE( pxQueue ) -#endif -#endif /* CONFIG_FREERTOS_SMP */ + #ifndef traceQUEUE_SEMAPHORE_RECEIVE + #define traceQUEUE_SEMAPHORE_RECEIVE( pxQueue ) + #endif + #endif /* CONFIG_FREERTOS_SMP */ #endif /* def __ASSEMBLER__ */ /* ----------------------------------------------- Amazon SMP FreeRTOS ------------------------------------------------- @@ -237,20 +239,22 @@ Note: Include trace macros here and not above as trace macros are dependent on s * ------------------------------------------------------------------------------------------------------------------ */ #if CONFIG_FREERTOS_SMP -#ifdef CONFIG_FREERTOS_UNICORE -#define configNUM_CORES 1 -#else -#define configNUM_CORES 2 -#endif /* CONFIG_FREERTOS_UNICORE */ -#define configUSE_CORE_AFFINITY 1 -#define configRUN_MULTIPLE_PRIORITIES 1 -#define configUSE_TASK_PREEMPTION_DISABLE 1 + #ifdef CONFIG_FREERTOS_UNICORE + #define configNUM_CORES 1 + #else + #define configNUM_CORES 2 + #endif /* CONFIG_FREERTOS_UNICORE */ + #define configUSE_CORE_AFFINITY 1 + #define configRUN_MULTIPLE_PRIORITIES 1 + #define configUSE_TASK_PREEMPTION_DISABLE 1 + /* This is always enabled to call IDF style idle hooks, by can be "--Wl,--wrap" * if users enable CONFIG_FREERTOS_USE_MINIMAL_IDLE_HOOK. */ -#define configUSE_MINIMAL_IDLE_HOOK 1 + #define configUSE_MINIMAL_IDLE_HOOK 1 + /* IDF Newlib supports dynamic reentrancy. We provide our own __getreent() * function. */ -#define configNEWLIB_REENTRANT_IS_DYNAMIC 1 + #define configNEWLIB_REENTRANT_IS_DYNAMIC 1 #endif /* CONFIG_FREERTOS_SMP */ /* -------------------------------------------------- IDF FreeRTOS ----------------------------------------------------- @@ -258,24 +262,24 @@ Note: Include trace macros here and not above as trace macros are dependent on s * ------------------------------------------------------------------------------------------------------------------ */ #if !CONFIG_FREERTOS_SMP -#ifdef CONFIG_FREERTOS_UNICORE -#define configNUM_CORES 1 -#else -#define configNUM_CORES 2 -#endif /* CONFIG_FREERTOS_UNICORE */ -#ifdef CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID -#define configTASKLIST_INCLUDE_COREID 1 -#endif /* CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID */ -#ifdef CONFIG_FREERTOS_TLSP_DELETION_CALLBACKS -#define configTHREAD_LOCAL_STORAGE_DELETE_CALLBACKS 1 -#endif /* CONFIG_FREERTOS_TLSP_DELETION_CALLBACKS */ -#if CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER -#define configCHECK_MUTEX_GIVEN_BY_OWNER 1 -#endif /* CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER */ + #ifdef CONFIG_FREERTOS_UNICORE + #define configNUM_CORES 1 + #else + #define configNUM_CORES 2 + #endif /* CONFIG_FREERTOS_UNICORE */ + #ifdef CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID + #define configTASKLIST_INCLUDE_COREID 1 + #endif /* CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID */ + #ifdef CONFIG_FREERTOS_TLSP_DELETION_CALLBACKS + #define configTHREAD_LOCAL_STORAGE_DELETE_CALLBACKS 1 + #endif /* CONFIG_FREERTOS_TLSP_DELETION_CALLBACKS */ + #if CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER + #define configCHECK_MUTEX_GIVEN_BY_OWNER 1 + #endif /* CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER */ #endif /* !CONFIG_FREERTOS_SMP */ /* ------------------------------------------------ ESP-IDF Additions -------------------------------------------------- * - Any other macros required by the rest of ESP-IDF * ------------------------------------------------------------------------------------------------------------------ */ -#define portNUM_PROCESSORS configNUM_CORES +#define portNUM_PROCESSORS configNUM_CORES