From 95a5d3ff369237ec7b35cb3fb2c4696872f223ce Mon Sep 17 00:00:00 2001 From: Darian Leung Date: Mon, 18 Dec 2023 05:05:26 +0800 Subject: [PATCH] docs(freertos/idf): Add IDF FreeRTOS upgarde migration notes for v5.2 --- docs/en/migration-guides/release-5.x/5.2/system.rst | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/en/migration-guides/release-5.x/5.2/system.rst b/docs/en/migration-guides/release-5.x/5.2/system.rst index 916ad605f3..7f2b7a8c82 100644 --- a/docs/en/migration-guides/release-5.x/5.2/system.rst +++ b/docs/en/migration-guides/release-5.x/5.2/system.rst @@ -6,6 +6,19 @@ System FreeRTOS -------- +IDF FreeRTOS Upgrade +^^^^^^^^^^^^^^^^^^^^ + +The IDF FreeRTOS kernel (which is a dual-core SMP implementation of FreeRTOS) has been upgraded to be based on Vanilla FreeRTOS v10.5.1. With this upgrade, the design and implementation of IDF FreeRTOS has also been changed significantly. As a result, users should take not of the following changes to kernel behavior and API: + +- When enabling single-core mode via the :ref:`CONFIG_FREERTOS_UNICORE` option, the kernel's behavior will now be identical to Vanilla FreeRTOS (see :ref:`freertos-idf-single-core` for more details). +- For SMP related APIs that were added by IDF FreeRTOS, checks on ``xCoreID`` arguments are now stricter. Providing out of range values for ``xCoreID`` arguments will now trigger an assert. +- The following SMP related APIs are now deprecated and replaced due to naming consistency reasons: + + - ``xTaskGetAffinity()`` is deprecated, call :cpp:func:`xTaskGetCoreID` instead. + - ``xTaskGetIdleTaskHandleForCPU()`` is deprecated, call :cpp:func:`xTaskGetIdleTaskHandleForCore` instead. + - ``xTaskGetCurrentTaskHandleForCPU()`` is deprecated, call :cpp:func:`xTaskGetCurrentTaskHandleForCore` instead. + Task Snapshot ^^^^^^^^^^^^^