RTEMS CPU Kit with SuperCore  4.11.2
isr.h
Go to the documentation of this file.
1 
12 /*
13  * COPYRIGHT (c) 1989-2012.
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_H
22 #define _RTEMS_SCORE_ISR_H
23 
24 #include <rtems/score/isrlevel.h>
25 
39 #ifdef __cplusplus
40 extern "C" {
41 #endif
42 
46 typedef uint32_t ISR_Vector_number;
47 
51 typedef void ISR_Handler;
52 
53 #if (CPU_SIMPLE_VECTORED_INTERRUPTS == FALSE)
54 
55 typedef void * ISR_Handler_entry;
56 
57 #else
58 
61 #if (CPU_ISR_PASSES_FRAME_POINTER == 1)
62 typedef ISR_Handler ( *ISR_Handler_entry )(
65  );
66 #else
67 typedef ISR_Handler ( *ISR_Handler_entry )(
69  );
70 #endif
71 
76 extern ISR_Handler_entry _ISR_Vector_table[ CPU_INTERRUPT_NUMBER_OF_VECTORS ];
77 #endif
78 
84 void _ISR_Handler_initialization ( void );
85 
103 #define _ISR_Install_vector( _vector, _new_handler, _old_handler ) \
104  _CPU_ISR_install_vector( _vector, _new_handler, _old_handler )
105 
120 void _ISR_Handler( void );
121 
135 void _ISR_Dispatch( void );
136 
146 bool _ISR_Is_in_progress( void );
147 
148 #ifdef __cplusplus
149 }
150 #endif
151 
154 #endif
155 /* end of include file */
uint32_t ISR_Vector_number
The following type defines the type used to manage the vectors.
Definition: isr.h:46
This defines the set of integer and processor state registers that must be saved during an interrupt...
Definition: cpu.h:425
ISR Level Type.
void _ISR_Handler(void)
ISR interrupt dispatcher.
Definition: cpu_asm.c:49
bool _ISR_Is_in_progress(void)
Checks if an ISR in progress.
Definition: nios2-isr-is-in-progress.c:24
void _ISR_Handler_initialization(void)
Initialize the ISR handler.
Definition: isr.c:37
void _ISR_Dispatch(void)
ISR wrapper for thread dispatcher.
void ISR_Handler
Return type for ISR Handler.
Definition: isr.h:51