mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
Merge branch 'feature/add_run_time_counter_type_option' into 'master'
feat(freertos/idf): Add configRUN_TIME_COUNTER_TYPE option Closes IDFGH-10757 See merge request espressif/esp-idf!26704
This commit is contained in:
commit
7baebd4ae3
@ -244,6 +244,25 @@ menu "FreeRTOS"
|
||||
|
||||
Note: The clock used for run time statistics can be configured in FREERTOS_RUN_TIME_STATS_CLK.
|
||||
|
||||
choice FREERTOS_RUN_TIME_COUNTER_TYPE
|
||||
prompt "configRUN_TIME_COUNTER_TYPE"
|
||||
depends on FREERTOS_GENERATE_RUN_TIME_STATS && !FREERTOS_SMP
|
||||
default FREERTOS_RUN_TIME_COUNTER_TYPE_U32
|
||||
help
|
||||
Sets the data type used for the FreeRTOS run time stats. A larger data type can be used to reduce the
|
||||
frequency of the counter overflowing.
|
||||
|
||||
config FREERTOS_RUN_TIME_COUNTER_TYPE_U32
|
||||
bool "uint32_t"
|
||||
help
|
||||
configRUN_TIME_COUNTER_TYPE is set to uint32_t
|
||||
|
||||
config FREERTOS_RUN_TIME_COUNTER_TYPE_U64
|
||||
bool "uint64_t"
|
||||
help
|
||||
configRUN_TIME_COUNTER_TYPE is set to uint64_t
|
||||
endchoice # FREERTOS_RUN_TIME_COUNTER_TYPE
|
||||
|
||||
config FREERTOS_USE_TICKLESS_IDLE
|
||||
# Todo: Currently not supported in SMP FreeRTOS yet (IDF-4986)
|
||||
# Todo: Consider whether this option should still be exposed (IDF-4986)
|
||||
|
@ -165,6 +165,14 @@
|
||||
#define configUSE_STATS_FORMATTING_FUNCTIONS 1 /* Used by vTaskList() */
|
||||
#endif /* CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS */
|
||||
|
||||
#if !CONFIG_FREERTOS_SMP
|
||||
#if CONFIG_FREERTOS_RUN_TIME_COUNTER_TYPE_U32
|
||||
#define configRUN_TIME_COUNTER_TYPE uint32_t
|
||||
#elif CONFIG_FREERTOS_RUN_TIME_COUNTER_TYPE_U64
|
||||
#define configRUN_TIME_COUNTER_TYPE uint64_t
|
||||
#endif /* CONFIG_FREERTOS_RUN_TIME_COUNTER_TYPE_U64 */
|
||||
#endif /* !CONFIG_FREERTOS_SMP */
|
||||
|
||||
/* -------------------- Co-routines ----------------------- */
|
||||
|
||||
#define configUSE_CO_ROUTINES 0 /* CO_ROUTINES are not supported in ESP-IDF */
|
||||
|
@ -13,6 +13,7 @@ CONFIG_FREERTOS_USE_TRACE_FACILITY=y
|
||||
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
|
||||
CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID=y
|
||||
CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y
|
||||
CONFIG_FREERTOS_RUN_TIME_COUNTER_TYPE_U64=y
|
||||
CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH=y
|
||||
CONFIG_FREERTOS_FPU_IN_ISR=y
|
||||
CONFIG_FREERTOS_TASK_NOTIFICATION_ARRAY_ENTRIES=2
|
||||
|
@ -53,7 +53,7 @@ static esp_err_t print_real_time_stats(TickType_t xTicksToWait)
|
||||
{
|
||||
TaskStatus_t *start_array = NULL, *end_array = NULL;
|
||||
UBaseType_t start_array_size, end_array_size;
|
||||
uint32_t start_run_time, end_run_time;
|
||||
configRUN_TIME_COUNTER_TYPE start_run_time, end_run_time;
|
||||
esp_err_t ret;
|
||||
|
||||
//Allocate array to store current task states
|
||||
|
@ -1,2 +0,0 @@
|
||||
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
|
||||
CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y
|
@ -1,2 +1,3 @@
|
||||
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
|
||||
CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y
|
||||
CONFIG_FREERTOS_RUN_TIME_COUNTER_TYPE_U64=y
|
||||
|
Loading…
Reference in New Issue
Block a user