Rev 921 | Rev 962 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 921 | Rev 958 | ||
---|---|---|---|
Line 27... | Line 27... | ||
27 | */ |
27 | */ |
28 | 28 | ||
29 | #ifndef __ia64_INTERRUPT_H__ |
29 | #ifndef __ia64_INTERRUPT_H__ |
30 | #define __ia64_INTERRUPT_H__ |
30 | #define __ia64_INTERRUPT_H__ |
31 | 31 | ||
- | 32 | #include <typedefs.h> |
|
32 | #include <arch/types.h> |
33 | #include <arch/types.h> |
33 | #include <arch/register.h> |
34 | #include <arch/register.h> |
34 | 35 | ||
35 | /** External Interrupt vectors. */ |
36 | /** External Interrupt vectors. */ |
36 | #define INTERRUPT_TIMER 0 |
37 | #define INTERRUPT_TIMER 0 |
Line 44... | Line 45... | ||
44 | #define GE_DISBLDISTRAN 4 |
45 | #define GE_DISBLDISTRAN 4 |
45 | #define GE_ILLEGALDEP 8 |
46 | #define GE_ILLEGALDEP 8 |
46 | 47 | ||
47 | #define EOI 0 /**< The actual value doesn't matter. */ |
48 | #define EOI 0 /**< The actual value doesn't matter. */ |
48 | 49 | ||
49 | struct exception_regdump { |
50 | struct istate { |
50 | __address ar_bsp; |
51 | __address ar_bsp; |
51 | __address ar_bspstore; |
52 | __address ar_bspstore; |
52 | __address ar_bspstore_new; |
53 | __address ar_bspstore_new; |
53 | __u64 ar_rnat; |
54 | __u64 ar_rnat; |
54 | __u64 ar_ifs; |
55 | __u64 ar_ifs; |
Line 71... | Line 72... | ||
71 | __u64 in3; |
72 | __u64 in3; |
72 | } __attribute__ ((packed)); |
73 | } __attribute__ ((packed)); |
73 | 74 | ||
74 | extern void *ivt; |
75 | extern void *ivt; |
75 | 76 | ||
76 | extern void general_exception(__u64 vector, struct exception_regdump *pstate); |
77 | extern void general_exception(__u64 vector, istate_t *istate); |
77 | extern int break_instruction(__u64 vector, struct exception_regdump *pstate); |
78 | extern int break_instruction(__u64 vector, istate_t *istate); |
78 | extern void universal_handler(__u64 vector, struct exception_regdump *pstate); |
79 | extern void universal_handler(__u64 vector, istate_t *istate); |
79 | extern void external_interrupt(__u64 vector, struct exception_regdump *pstate); |
80 | extern void external_interrupt(__u64 vector, istate_t *istate); |
80 | 81 | ||
81 | #endif |
82 | #endif |