CMSIS-RTOS: Status and Error Codes

| CMSIS-RTOS Version 1.02 CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.

- Main Page
- Usage and Description
- Reference

Enumerations
Status and Error Codes
CMSIS-RTOS API

Status and Error Codes returned by CMSIS-RTOS API functions. More...

## Enumerations
enum | osStatus { osOK = 0, osEventSignal = 0x08, osEventMessage = 0x10, osEventMail = 0x20, osEventTimeout = 0x40, osErrorParameter = 0x80, osErrorResource = 0x81, osErrorTimeoutResource = 0xC1, osErrorISR = 0x82, osErrorISRRecursive = 0x83, osErrorPriority = 0x84, osErrorNoMemory = 0x85, osErrorValue = 0x86, osErrorOS = 0xFF, os_status_reserved = 0x7FFFFFFF }

## Description

The Status and Error Codes section lists all the return values that the CMSIS-RTOS functions will return.

## Enumeration Type Documentation

enum osStatus

Note
  MUST REMAIN UNCHANGED: osStatus shall be consistent in every CMSIS-RTOS.

The osStatus enumeration defines the event status and error codes that are returned by the CMSIS-RTOS functions.

Enumerator:

  osOK | function completed; no error or event occurred.
  osEventSignal | function completed; signal event occurred.
  osEventMessage | function completed; message event occurred.
  osEventMail | function completed; mail event occurred.
  osEventTimeout | function completed; timeout occurred.
  osErrorParameter | parameter error: a mandatory parameter was missing or specified an incorrect object.
  osErrorResource | resource not available: a specified resource was not available.
  osErrorTimeoutResource | resource not available within given time: a specified resource was not available within the timeout period.
  osErrorISR | not allowed in ISR context: the function cannot be called from interrupt service routines.
  osErrorISRRecursive | function called multiple times from ISR with same object.
  osErrorPriority | system cannot determine priority or thread has illegal priority.
  osErrorNoMemory | system is out of memory: it was impossible to allocate or reserve memory for the operation.
  osErrorValue | value of a parameter is out of range.
  osErrorOS | unspecified RTOS error: run-time error but no other error message fits.
  os_status_reserved | prevent from enum down-size compiler optimization.