Rev 470 | Rev 501 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 470 | Rev 472 | ||
---|---|---|---|
Line 28... | Line 28... | ||
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 <arch/types.h> |
32 | #include <arch/types.h> |
- | 33 | #include <arch/register.h> |
|
33 | 34 | ||
34 | /** External interrupt vectors. */ |
35 | /** External Interrupt vectors. */ |
35 | #define INTERRUPT_TIMER 0 |
36 | #define INTERRUPT_TIMER 0 |
36 | #define INTERRUPT_SPURIOUS 15 |
37 | #define INTERRUPT_SPURIOUS 15 |
37 | 38 | ||
- | 39 | /** General Exception codes. */ |
|
- | 40 | #define GE_ILLEGALOP 0 |
|
- | 41 | #define GE_PRIVOP 1 |
|
- | 42 | #define GE_PRIVREG 2 |
|
- | 43 | #define GE_RESREGFLD 3 |
|
- | 44 | #define GE_DISBLDISTRAN 4 |
|
- | 45 | #define GE_ILLEGALDEP 8 |
|
- | 46 | ||
38 | #define EOI 0 /**< The actual value doesn't matter. */ |
47 | #define EOI 0 /**< The actual value doesn't matter. */ |
39 | 48 | ||
40 | struct exception_regdump { |
49 | struct exception_regdump { |
41 | __address ar_bsp; |
50 | __address ar_bsp; |
42 | __address ar_bspstore; |
51 | __address ar_bspstore; |
43 | __u64 ar_rnat; |
52 | __u64 ar_rnat; |
44 | __u64 ar_ifs; |
53 | __u64 ar_ifs; |
45 | __u64 ar_pfs; |
54 | __u64 ar_pfs; |
46 | __u64 ar_rsc; |
55 | __u64 ar_rsc; |
47 | __address cr_ifa; |
56 | __address cr_ifa; |
48 | __u64 cr_isr; |
57 | cr_isr_t cr_isr; |
49 | __address cr_iipa; |
58 | __address cr_iipa; |
50 | __u64 cr_ips; |
59 | __u64 cr_ips; |
51 | __address cr_iip; |
60 | __address cr_iip; |
52 | __u64 pr; |
61 | __u64 pr; |
53 | } __attribute__ ((packed)); |
62 | } __attribute__ ((packed)); |