RTEMS
Files | Macros | Typedefs | Functions | Variables
Task Modes

This group contains the Classic API task modes. More...

Files

file  modes.h
 This header file defines the task modes of the Task Manager API.
 

Macros

#define RTEMS_INTERRUPT_MASK   CPU_MODES_INTERRUPT_MASK
 This task mode constant corresponds to the interrupt enable/disable bits.
 
#define RTEMS_ALL_MODE_MASKS   0x0000ffff
 This task mode constant is a mask with all mode bits set.
 
#define RTEMS_ASR   0x00000000
 This task mode constant is used to indicate signal processing is disabled.
 
#define RTEMS_ASR_MASK   0x00000400
 This mode constant corresponds to the signal enable/disable bit.
 
#define RTEMS_CURRENT_MODE   0
 This task mode constant is used when the user wishes to obtain the current task mode of the executing task.
 
#define RTEMS_DEFAULT_MODES   0x00000000
 This task mode constant represents the default mode set.
 
#define RTEMS_INTERRUPT_LEVEL(_interrupt_level)   ( ( _interrupt_level ) & RTEMS_INTERRUPT_MASK )
 Returns the task mode with the processor-dependent interrupt level corresponding to the specified interrupt level. More...
 
#define RTEMS_NO_ASR   0x00000400
 This task mode constant is used to indicate signal processing is disabled.
 
#define RTEMS_NO_PREEMPT   0x00000100
 This task mode constant is used to indicate preemption is disabled.
 
#define RTEMS_NO_TIMESLICE   0x00000000
 This task mode constant is used to indicate timeslicing is disabled.
 
#define RTEMS_PREEMPT   0x00000000
 This task mode constant is used to indicate preemption is enabled.
 
#define RTEMS_PREEMPT_MASK   0x00000100
 This task mode constant corresponds to the preemption enable/disable bit.
 
#define RTEMS_TIMESLICE   0x00000200
 This task mode constant is used to indicate timeslicing is enabled.
 
#define RTEMS_TIMESLICE_MASK   0x00000200
 This task mode constant corresponds to the timeslice enable/disable bit.
 

Typedefs

typedef uint32_t rtems_mode
 This type is used to represent a task mode set.
 

Functions

rtems_mode rtems_interrupt_level_body (uint32_t level)
 Returns the return value of RTEMS_INTERRUPT_LEVEL() for the specified interrupt level. More...
 

Variables

const uint32_t rtems_interrupt_mask
 This task mode constant has the same value as RTEMS_INTERRUPT_MASK. More...
 

Detailed Description

This group contains the Classic API task modes.

Macro Definition Documentation

◆ RTEMS_INTERRUPT_LEVEL

#define RTEMS_INTERRUPT_LEVEL (   _interrupt_level)    ( ( _interrupt_level ) & RTEMS_INTERRUPT_MASK )

Returns the task mode with the processor-dependent interrupt level corresponding to the specified interrupt level.

The Classic API supports 256 interrupt levels using the least significant eight bits of the mode set. On any particular processor variant, fewer than 256 levels may be supported. At least level 0 (all interrupts enabled) and level 1 (interrupts disabled, on most architectures) are supported.

Parameters
_interrupt_levelis the interrupt level.

Definition at line 154 of file modes.h.

Function Documentation

◆ rtems_interrupt_level_body()

rtems_mode rtems_interrupt_level_body ( uint32_t  level)

Returns the return value of RTEMS_INTERRUPT_LEVEL() for the specified interrupt level.

This function is used by bindings from languages other than C and C++.

Parameters
levelis the interrupt level.

Variable Documentation

◆ rtems_interrupt_mask

const uint32_t rtems_interrupt_mask

This task mode constant has the same value as RTEMS_INTERRUPT_MASK.

%

This task mode constant is used by bindings from languages other than C and C++.