esp-idf/components/freertos/FreeRTOS-Kernel/include/freertos
Darian Leung 7a4e1fee99 freertos: Fix xTaskIncrementTick()
Previously, xTaskIncrementTick() would always trigger a yield (i.e., return pdTRUE)
when called on core 1. This would mean core 1 would call vTaskSwitchContext() on
every tick, leading to uneccesary CPU overhead.

This commit fixes xTaskIncrementTick() in the following ways:

- Clearly mark IDF additions in xTaskIncrementTick()
- Moved esp_vApplicationTickHook() to be called direclty in xPortSysTickHandler() in order to
  simplify xTaskIncrementTick().
- Only core 0 calls xTaskIncrementTick() in order to simplify the function's logic. Core 0 is
  solely responsible for managing xTickCount and xPendedTicks
- All other cores call xTaskIncrementTickOtherCores() instead which is a simplified version of
  xTaskIncrementTick() and handles the following:
    - Check if core 0 has unblocked a higher priority task to run
    - Check if the current core requires time slicing
    - Call vApplicationTickHook()
2022-07-20 11:31:50 +08:00
..
atomic.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
croutine.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
deprecated_definitions.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
event_groups.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
FreeRTOS.h freertos: Refactor configuration files 2022-02-10 21:23:46 +08:00
list.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
message_buffer.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
mpu_prototypes.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
mpu_wrappers.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
portable.h freertos: Refactor configuration files 2022-02-10 21:23:46 +08:00
projdefs.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
queue.h docs: fix all doxygen warnings 2022-05-12 14:50:03 +08:00
semphr.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
stack_macros.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
StackMacros.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
stdint.readme freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
stream_buffer.h freertos: Add SPDX license identifiers and update xtensa port files 2022-02-03 17:08:14 +08:00
task.h freertos: Fix xTaskIncrementTick() 2022-07-20 11:31:50 +08:00
timers.h freertos: Refactor configuration files 2022-02-10 21:23:46 +08:00