RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
isrlevel.h
Go to the documentation of this file.
1
12/*
13 * COPYRIGHT (c) 1989-2011.
14 * On-Line Applications Research Corporation (OAR).
15 *
16 * The license and distribution terms for this file may be
17 * found in the file LICENSE in this distribution or at
18 * http://www.rtems.org/license/LICENSE.
19 */
20
21#ifndef _RTEMS_SCORE_ISR_LEVEL_h
22#define _RTEMS_SCORE_ISR_LEVEL_h
23
24#include <rtems/score/cpu.h>
25#include <rtems/score/assert.h>
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
41typedef uint32_t ISR_Level;
42
57#define _ISR_Local_disable( _level ) \
58 do { \
59 _CPU_ISR_Disable( _level ); \
60 RTEMS_COMPILER_MEMORY_BARRIER(); \
61 } while (0)
62
74#define _ISR_Local_enable( _level ) \
75 do { \
76 RTEMS_COMPILER_MEMORY_BARRIER(); \
77 _CPU_ISR_Enable( _level ); \
78 } while (0)
79
99#define _ISR_Local_flash( _level ) \
100 do { \
101 RTEMS_COMPILER_MEMORY_BARRIER(); \
102 _CPU_ISR_Flash( _level ); \
103 RTEMS_COMPILER_MEMORY_BARRIER(); \
104 } while (0)
105
115#define _ISR_Is_enabled( _level ) \
116 _CPU_ISR_Is_enabled( _level )
117
128#define _ISR_Get_level() \
129 _CPU_ISR_Get_level()
130
140#define _ISR_Set_level( _new_level ) \
141 do { \
142 RTEMS_COMPILER_MEMORY_BARRIER(); \
143 _CPU_ISR_Set_level( _new_level ); \
144 RTEMS_COMPILER_MEMORY_BARRIER(); \
145 } while (0)
146
149#ifdef __cplusplus
150}
151#endif
152#endif
Information for the Assert Handler.
uint32_t ISR_Level
Definition: isrlevel.h:41