2 * interrupts.h - arm exception handling header file
4 * author: hackbard@hackdaworld.org
16 #define INTERRUPT_MAX_VIC 16
18 #define INTERRUPT_EXT_MODE_EDGE 0
19 #define INTERRUPT_EXT_MODE_LEVEL 1
20 #define INTERRUPT_EXT_POLAR_LOW 0
21 #define INTERRUPT_EXT_POLAR_HIGH 1
23 /* type definitions */
25 typedef struct s_interrupt {
26 void *default_callback;
28 void *callback[INTERRUPT_MAX_VIC];
29 u8 mode[INTERRUPT_MAX_VIC];
32 /* function prototypes */
34 void interrupt_set_default_callback(t_interrupt *ir,void *callback);
36 void interrupt_ext_ir_conf(u8 pin,u8 mode,u8 polar,
37 void (*ext_ir_callback)(t_interrupt *ir));
39 void interrupt_handler_reset(void);
40 void interrupt_handler_undef_instruction(void);
41 void interrupt_handler_soft_ir(void);
42 void interrupt_handler_prefetch_abort(void);
43 void interrupt_handler_data_abort(void);
44 void interrupt_handler_fiq(void);