Files
brnQuanFW/external/CMSIS_5/CMSIS/DoxyGen/RTOS2/src/history.txt
2023-09-09 08:03:56 +01:00

264 lines
9.7 KiB
Plaintext

/**
\page rtos_revisionHistory Revision History
\section GenRTOS2Rev CMSIS-RTOS API Version 2
<table class="cmtable" summary="Revision History">
<tr>
<th>Version</th>
<th>Description</th>
</tr>
<tr>
<td>V2.2.0</td>
<td>
Added support for Process Isolation (Functional Safety):
- Kernel Management: \ref osKernelProtect, \ref osKernelDestroyClass
- Thread Management: \ref osThreadGetClass, \ref osThreadGetZone,<br>
\ref osThreadSuspendClass, \ref osThreadResumeClass, \ref osThreadTerminateZone,<br>
\ref osThreadFeedWatchdog, \ref osThreadProtectPrivileged
- Thread attributes: \ref osThreadZone, \ref osThreadUnprivileged, \ref osThreadPrivileged
- Object attributes: \ref osSafetyClass
- Handler functions: \ref osWatchdogAlarm_Handler
- Zone Management: \ref osZoneSetup_Callback
- Exception Faults: \ref osFaultResume
Additional functions allowed to be called from Interrupt Service Routines:
- \ref osThreadGetName, \ref osEventFlagsGetName, \ref osTimerGetName, \ref osMutexGetName, \ref osSemaphoreGetName, \ref osMemoryPoolGetName, \ref osMessageQueueGetName
</td>
</tr>
<tr>
<td>V2.1.3</td>
<td>
Additional functions allowed to be called from Interrupt Service Routines:
- \ref osThreadGetId
</td>
</tr>
<tr>
<td>V2.1.2</td>
<td>
Additional functions allowed to be called from Interrupt Service Routines:
- \ref osKernelGetInfo, \ref osKernelGetState
</td>
</tr>
<tr>
<td>V2.1.1</td>
<td>
Additional functions allowed to be called from Interrupt Service Routines:
- \ref osKernelGetTickCount, \ref osKernelGetTickFreq
Changed Kernel Tick type to uint32_t:
- updated: \ref osKernelGetTickCount, \ref osDelayUntil
</td>
</tr>
<tr>
<td>V2.1.0</td>
<td>
Support for critical and uncritical sections (nesting safe):
- updated: \ref osKernelLock, \ref osKernelUnlock
- added: \ref osKernelRestoreLock
Updated \ref CMSIS_RTOS_ThreadFlagsMgmt "Thread Flags" and \ref CMSIS_RTOS_EventFlags "Event Flags":
- changed flags parameter and return type from int32_t to uint32_t
</td>
</tr>
<tr>
<td>V2.0.0</td>
<td>
New API Version 2.0 available.
- See \ref rtos_api2 for a detailed function reference.
- See \ref os2Migration for details on the migration process from API Version 1.
</td>
</tr>
<tr>
<td>V1.02 - only documentation changes</td>
<td>
Added: Overview of the \ref rtosValidation "CMSIS-RTOS Validation" Software Pack.\n
Clarified: Behavior of \ref CMSIS_RTOS_TimeOutValue.
</td>
</tr>
<tr>
<td>V1.02</td>
<td>Added: New control functions for short timeouts in microsecond resolution \b osKernelSysTick,
\b osKernelSysTickFrequency, \b osKernelSysTickMicroSec.\n
Removed: osSignalGet.
</td>
</tr>fv
<tr>
<td>V1.01</td>
<td>Added capabilities for C++, kernel initialization and object deletion.\n
Prepared for C++ class interface. In this context to \em const attribute has been moved from osXxxxDef_t typedefs to
the osXxxxDef macros.\n
Added: \ref osTimerDelete, \ref osMutexDelete, \ref osSemaphoreDelete.\n
Added: \ref osKernelInitialize that prepares the kernel for object creation.\n
</td>
</tr>
<tr>
<td>
V1.00</td>
<td>First official Release.\n
Added: \ref osKernelStart; starting 'main' as a thread is now an optional feature.\n
Semaphores have now the standard behavior.\n
\b osTimerCreate does no longer start the timer. Added: \ref osTimerStart (replaces osTimerRestart).\n
Changed: osThreadPass is renamed to \ref osThreadYield.
</td>
</tr>
<tr>
<td>V0.02</td>
<td>Preview Release.</td>
</tr>
</table>
\section RTX5RevisionHistory CMSIS-RTOS RTX Version 5
<table class="cmtable" summary="Revision History">
<tr>
<th>Version</th>
<th>Description</th>
</tr>
<tr>
<td>V5.7.0</td>
<td>
- Based on CMSIS-RTOS API V2.2.0.
- Added support for Process Isolation: MPU Protected Zones, Safety Classes, Thread Watchdogs.
- Reduced component variants: Library (Library_NS replacement), Source (Source_NS replacement).
</td>
</tr>
<tr>
<td>V5.5.5</td>
<td>
- Added de-allocation of Arm C library thread data (libspace) when thread is terminated.
- Updated SysTick implementation for OS Tick (initial count value).
- Added Thread Entry wrapper (compatible with GDB stack unwind).
</td>
</tr>
<tr>
<td>V5.5.4</td>
<td>
- Fixed potential register R1 corruption when calling OS functions from threads multiple times with same arguments (when using high level compiler optimizations).
- Fixed timer interval when periodic timer is restarted.
- Added Floating-point initialization for Arm C Library.
- Minor code optimizations in osMessageQueuePut/Get.
</td>
</tr>
<tr>
<td>V5.5.3</td>
<td>
- CVE-2021-27431 vulnerability mitigation.
- Added OS Initialization for IAR.
- Fixed osDelay/osDelayUntil error handling.
- Fixed Round-Robin (timeout value is not reset when switching to higher priority threads).
- Fixed osThreadJoin (when terminating thread which is waiting to be joined).
- Fixed Message Queue Data allocation size when using object specific memory allocation.
- Fixed Mutex priority inversion (when mixing mutexes with and without priority inherit).
- Enhanced stack overrun checking.
- Updated osKernelResume handling (processing past sleep ticks).
- Updated configuration (Event Recorder).
- Reorganized and optimized IRQ modules.
</td>
</tr>
<tr>
<td>V5.5.2</td>
<td>
- Added support for Cortex-M55.
- Fixed thread priority restore on mutex acquire timeout (when priority inherit is used).
- Enhanced support for Armv8-M (specifying thread TrustZone module identifier is optional).
- Updated configuration default values (Global Dynamic Memory and Thread Stack).
</td>
</tr>
<tr>
<td>V5.5.1</td>
<td>
- Fixed osMutexRelease issue (thread owning multiple mutexes).
- Improved osThreadJoin robustness (user programing errors).
</td>
</tr>
<tr>
<td>V5.5.0</td>
<td>
- Updated and enhanced generated events (reorganized components).
- Updated configuration (Event Recorder).
- Updated Component Viewer (improved performance).
- Minor code optimizations.
</td>
</tr>
<tr>
<td>V5.4.0</td>
<td>
- Based on CMSIS-RTOS API V2.1.3.
- Added support for Event Recorder initialization and filter setup.
- Added support to use RTOS as Event Recorder Time Stamp source.
- Fixed osDelayUntil longest delay (limited to 2^31-1).
- Fixed optimization issue when using GCC optimization level 3.
- Fixed osMemoryPoolAlloc to avoid potential race condition.
- Restructured exception handling for Cortex-A devices.
- Minor code optimizations (removed unnecessary checks).
</td>
</tr>
<tr>
<td>V5.3.0</td>
<td>
- Added Object Memory usage counters.
- Added support for additional external configuration file.
- Added user configurable names for system threads (Idle and Timer).
- Added support for OS sections when using ARMCC5.
- Added callback for MPU integration (experimental)
- Increased default thread stack sizes to 256 bytes.
- Fixed stack context display for running thread in SCVD.
- Enhanced MISRA Compliance.
</td>
</tr>
<tr>
<td>V5.2.3</td>
<td>
- Based on CMSIS-RTOS API V2.1.2.
- Added TrustZone Module Identifier configuration for Idle and Timer Thread.
- Moved SVC/PendSV handler priority setup from osKernelInitialize to osKernelStart (User Priority Grouping can be updated after osKernelInitialize but before osKernelStart).
- Corrected SysTick and PendSV handlers for ARMv8-M Baseline.
- Corrected memory allocation for stack and data when "Object specific Memory allocation" configuration is used.
- Added support for ARMv8-M IAR compiler.
</td>
</tr>
<tr>
<td>V5.2.2</td>
<td>
- Corrected IRQ and SVC exception handlers for Cortex-A.
</td>
</tr>
<tr>
<td>V5.2.1</td>
<td>
- Corrected SysTick and SVC Interrupt Priority for Cortex-M.
</td>
</tr>
<tr>
<td>V5.2.0</td>
<td>
- Based on CMSIS-RTOS API V2.1.1.
- Added support for Cortex-A.
- Using OS Tick API for RTX Kernel Timer Tick.
- Fixed potential corruption of terminated threads list.
- Corrected MessageQueue to use actual message length (before padding).
- Corrected parameters for ThreadEnumerate and MessageQueueInserted events.
- Timer Thread creation moved to osKernelStart.
</td>
</tr>
<tr>
<td>V5.1.0</td>
<td>
- Based on CMSIS-RTOS API V2.1.0.
- Added support for Event recording.
- Added support for IAR compiler.
- Updated configuration files: RTX_Config.h for the configuration settings and RTX_config.c for implementing the \ref rtx5_specific.
- osRtx name-space for RTX specific symbols.
</td>
</tr>
<tr>
<td>V5.0.0</td>
<td>
Initial release compliant to CMSIS-RTOS2.\n
</td>
</tr>
</table>
*/