CMSIS-RTOS2: Kernel Functions

| CMSIS-RTOS2 Version 2.1.3 Real-Time Operating System: API and RTX Reference Implementation

- Main Page
- Usage and Description
- Reference

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions
Kernel Functions
Event functions

Events generated by kernel functions. More...

## Functions
void | EvrRtxKernelError (int32_t status)
| Event on RTOS kernel error (Error) More...
void | EvrRtxKernelInitialize (void)
| Event on RTOS kernel initialize (API) More...
void | EvrRtxKernelInitialized (void)
| Event on successful RTOS kernel initialize (Op) More...
void | EvrRtxKernelGetInfo (osVersion_t *version, char *id_buf, uint32_t id_size)
| Event on RTOS kernel information retrieve (API) More...
void | EvrRtxKernelInfoRetrieved (const osVersion_t *version, const char *id_buf, uint32_t id_size)
| Event on successful RTOS kernel information retrieve (Op) More...
void | EvrRtxKernelGetState (osKernelState_t state)
| Event on current RTOS Kernel state retrieve (API) More...
void | EvrRtxKernelStart (void)
| Event on RTOS Kernel scheduler start (API) More...
void | EvrRtxKernelStarted (void)
| Event on successful RTOS Kernel scheduler start (Op) More...
void | EvrRtxKernelLock (void)
| Event on RTOS Kernel scheduler lock (API) More...
void | EvrRtxKernelLocked (int32_t lock)
| Event on successful RTOS Kernel scheduler lock (Op) More...
void | EvrRtxKernelUnlock (void)
| Event on RTOS Kernel scheduler unlock (API) More...
void | EvrRtxKernelUnlocked (int32_t lock)
| Event on successful RTOS Kernel scheduler unlock (Op) More...
void | EvrRtxKernelRestoreLock (int32_t lock)
| Event on RTOS Kernel scheduler lock state restore (API) More...
void | EvrRtxKernelLockRestored (int32_t lock)
| Event on successful RTOS Kernel scheduler lock state restore (Op) More...
void | EvrRtxKernelSuspend (void)
| Event on RTOS Kernel scheduler suspend (API) More...
void | EvrRtxKernelSuspended (uint32_t sleep_ticks)
| Event on successful RTOS Kernel scheduler suspend (Op) More...
void | EvrRtxKernelResume (uint32_t sleep_ticks)
| Event on RTOS Kernel scheduler resume (API) More...
void | EvrRtxKernelResumed (void)
| Event on successful RTOS Kernel scheduler resume (Op) More...
void | EvrRtxKernelGetTickCount (uint32_t count)
| Event on RTOS kernel tick count retrieve (API) More...
void | EvrRtxKernelGetTickFreq (uint32_t freq)
| Event on RTOS kernel tick frequency retrieve (API) More...
void | EvrRtxKernelGetSysTimerCount (uint32_t count)
| Event on RTOS kernel system timer count retrieve (API) More...
void | EvrRtxKernelGetSysTimerFreq (uint32_t freq)
| Event on RTOS kernel system timer frequency retrieve (API) More...

## Description

## Function Documentation

void EvrRtxKernelError | ( | int32_t | status | ) |

Parameters

  [in] | status | extended execution status.

The event KernelError is generated when Kernel Information and Control routines complete their execution due to an error.

The status parameter indicates the execution status and can be one of the osStatus_t codes or one of the extended execution status codes which are summarized in the table below.

Extended Status Code | Description
--- | ---
osRtxErrorKernelNotReady | Kernel scheduler is not in Ready state.
osRtxErrorKernelNotRunning | Kernel scheduler is not executing - there is no running thread.
osRtxErrorInvalidControlBlock | Object control block with invalid alignment or size was specified.
osRtxErrorInvalidDataMemory | Object data memory with invalid alignment or size was specified.
osRtxErrorInvalidThreadStack | Thread stack memory with invalid alignment or size was specified.
osRtxErrorInvalidPriority | Invalid thread priority was specified.
osRtxErrorThreadNotJoinable | Specified thread is not joinable.
osRtxErrorMutexNotOwned | Specified mutex is not owned by the current running thread.
osRtxErrorMutexNotLocked | Specified mutex is not locked.
osRtxErrorMutexLockLimit | Maximum number of recursive mutex locks reached.
osRtxErrorSemaphoreCountLimit | Semaphore count limit reached.
osRtxErrorTZ_InitContext_S | Secure context memory system initialization failed.
osRtxErrorTZ_AllocContext_S | Secure context memory allocation failed.
osRtxErrorTZ_FreeContext_S | Secure context memory deallocation failed.
osRtxErrorTZ_LoadContext_S | Secure context load failed.
osRtxErrorTZ_SaveContext_S | Secure context save failed.

Value in the Event Recorder shows:

- status : execution status code.

void EvrRtxKernelInitialize | ( | void |  | ) |

The event KernelInitialize is generated when the function osKernelInitialize is called.

void EvrRtxKernelInitialized | ( | void |  | ) |

The event KernelInitialized is generated when the function osKernelInitialize successfully initializes the RTOS kernel.

void EvrRtxKernelGetInfo | ( | osVersion_t * | version,
|  | char * | id_buf,
|  | uint32_t | id_size
| ) |  |

Parameters

  [in] | version | pointer to buffer for retrieving version information.
  [in] | id_buf | pointer to buffer for retrieving kernel identification string.
  [in] | id_size | size of buffer for kernel identification string.

The event KernelGetInfo is generated when the function osKernelGetInfo is called.

Value in the Event Recorder shows:

- version : memory address of buffer for retrieving version information.
- id_buf : memory address of buffer for retrieving kernel identification string.
- id_size : size of id_buf in bytes.

void EvrRtxKernelInfoRetrieved | ( | const osVersion_t * | version,
|  | const char * | id_buf,
|  | uint32_t | id_size
| ) |  |

Parameters

  [in] | version | pointer to buffer for retrieving version information.
  [in] | id_buf | pointer to buffer for retrieving kernel identification string.
  [in] | id_size | size of buffer for kernel identification string.

The event KernelInfoRetrieved is generated when the function osKernelGetInfo successfully retrieves kernel information.

Value in the Event Recorder shows:

- ver_api : API version.
- ver_kernel : kernel version.
- id : kernel identification string (Detail).

void EvrRtxKernelGetState | ( | osKernelState_t | state | ) |

Parameters

  [in] | state | current RTOS Kernel state.

The event KernelGetState is generated when the function osKernelGetState is called and its execution result is known.

Value in the Event Recorder shows:

- state : retrieved current RTOS Kernel state.

void EvrRtxKernelStart | ( | void |  | ) |

The event KernelStart is generated when the function osKernelStart is called.

void EvrRtxKernelStarted | ( | void |  | ) |

The event KernelStarted is generated when the function osKernelStart successfully starts the RTOS kernel execution.

void EvrRtxKernelLock | ( | void |  | ) |

The event KernelLock is generated when the function osKernelLock is called.

void EvrRtxKernelLocked | ( | int32_t | lock | ) |

Parameters

  [in] | lock | previous lock state (1 - locked, 0 - not locked).

The event KernelLocked is generated when the functions osKernelLock successfully completes its execution.

Value in the Event Recorder shows:

- lock : previous lock state (1 - locked, 0 - not locked).

void EvrRtxKernelUnlock | ( | void |  | ) |

The event KernelUnlock is generated when the function osKernelUnlock is called.

void EvrRtxKernelUnlocked | ( | int32_t | lock | ) |

Parameters

  [in] | lock | previous lock state (1 - locked, 0 - not locked).

The event KernelUnlocked is generated when the function osKernelUnlock successfully completes its execution.

Value in the Event Recorder shows:

- lock : previous lock state (1 - locked, 0 - not locked).

void EvrRtxKernelRestoreLock | ( | int32_t | lock | ) |

Parameters

  [in] | lock | lock state obtained by osKernelLock or osKernelUnlock.

The event KernelRestoreLock is generated when the function osKernelRestoreLock is called.

Value in the Event Recorder shows:

- lock : lock state obtained by osKernelLock or osKernelUnlock.

void EvrRtxKernelLockRestored | ( | int32_t | lock | ) |

Parameters

  [in] | lock | new lock state (1 - locked, 0 - not locked).

The event KernelLockRestored is generated when the function osKernelRestoreLock successfully completes its execution.

Value in the Event Recorder shows:

- lock : new lock state (1 - locked, 0 - not locked).

void EvrRtxKernelSuspend | ( | void |  | ) |

The event KernelSuspend is generated when the function osKernelSuspend is called.

void EvrRtxKernelSuspended | ( | uint32_t | sleep_ticks | ) |

Parameters

  [in] | sleep_ticks | time in ticks, for how long the system can sleep or power-down.

The event KernelSuspended is generated when the function osKernelSuspend successfully suspends RTOS kernel execution.

Value in the Event Recorder shows:

- sleep_ticks : time in ticks, for how long the system can sleep or power-down.

void EvrRtxKernelResume | ( | uint32_t | sleep_ticks | ) |

Parameters

  [in] | sleep_ticks | time in ticks, for how long the system was in sleep or power-down mode.

The event KernelResume is generated when the function osKernelResume is called.

Value in the Event Recorder shows:

- sleep_ticks : time in ticks, for how long the system was in sleep or power-down mode.

void EvrRtxKernelResumed | ( | void |  | ) |

The event KernelResumed is generated when the function osKernelResume successfully resumes RTOS kernel execution.

void EvrRtxKernelGetTickCount | ( | uint32_t | count | ) |

Parameters

  [in] | count | RTOS kernel current tick count.

The event KernelGetTickCount is generated when the function osKernelGetTickCount is called.

Value in the Event Recorder shows:

- count : retrieved kernel current tick count.

void EvrRtxKernelGetTickFreq | ( | uint32_t | freq | ) |

Parameters

  [in] | freq | frequency of the kernel tick.

The event KernelGetTickFreq is generated when the function osKernelGetTickFreq called.

Value in the Event Recorder shows:

- freq : retrieved frequency of the kernel tick in Hz.

void EvrRtxKernelGetSysTimerCount | ( | uint32_t | count | ) |

Parameters

  [in] | count | RTOS kernel current system timer count as 32-bit value.

The event KernelGetSysTimerCount is generated when the function osKernelGetSysTimerCount is called.

Value in the Event Recorder shows:

- count : retrieved kernel current system timer count as 32-bit value.

void EvrRtxKernelGetSysTimerFreq | ( | uint32_t | freq | ) |

Parameters

  [in] | freq | frequency of the system timer.

The event KernelGetSysTimerFreq is generated when the function osKernelGetSysTimerFreq is called.

Value in the Event Recorder shows:

- freq : retrieved frequency of the system timer in Hz.