Rev 1888 | Rev 2064 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1888 | Rev 1942 | ||
|---|---|---|---|
| Line 37... | Line 37... | ||
| 37 | 37 | ||
| 38 | #include <typedefs.h> |
38 | #include <typedefs.h> |
| 39 | #include <arch/types.h> |
39 | #include <arch/types.h> |
| 40 | #include <arch/register.h> |
40 | #include <arch/register.h> |
| 41 | 41 | ||
| - | 42 | /** ia64 has 256 INRs. */ |
|
| - | 43 | #define INR_COUNT 256 |
|
| - | 44 | ||
| - | 45 | /* |
|
| 42 | #define IRQ_COUNT 257 /* 256 NOT suppotred IRQS*//* TODO */ |
46 | * We need to keep this just to compile. |
| 43 | #define IRQ_KBD 256 /* One simulated interrupt for ski simulator keyboard*/ |
47 | * We might eventually move interrupt/ stuff |
| - | 48 | * to genarch. |
|
| - | 49 | */ |
|
| - | 50 | #define IVT_ITEMS 0 |
|
| - | 51 | #define IVT_FIRST 0 |
|
| 44 | 52 | ||
| 45 | /** External Interrupt vectors. */ |
53 | /** External Interrupt vectors. */ |
| 46 | #define INTERRUPT_TIMER 0 |
54 | #define INTERRUPT_TIMER 0 |
| 47 | #define INTERRUPT_SPURIOUS 15 |
55 | #define INTERRUPT_SPURIOUS 15 |
| 48 | 56 | ||
| Line 124... | Line 132... | ||
| 124 | return istate->cr_iip; |
132 | return istate->cr_iip; |
| 125 | } |
133 | } |
| 126 | 134 | ||
| 127 | static inline int istate_from_uspace(istate_t *istate) |
135 | static inline int istate_from_uspace(istate_t *istate) |
| 128 | { |
136 | { |
| 129 | return (istate->cr_iip)<0xe000000000000000ULL; |
137 | return (istate->cr_iip) < 0xe000000000000000ULL; |
| 130 | } |
138 | } |
| 131 | 139 | ||
| 132 | extern void *ivt; |
140 | extern void *ivt; |
| 133 | 141 | ||
| 134 | extern void general_exception(uint64_t vector, istate_t *istate); |
142 | extern void general_exception(uint64_t vector, istate_t *istate); |
| 135 | extern int break_instruction(uint64_t vector, istate_t *istate); |
143 | extern int break_instruction(uint64_t vector, istate_t *istate); |
| 136 | extern void universal_handler(uint64_t vector, istate_t *istate); |
144 | extern void universal_handler(uint64_t vector, istate_t *istate); |
| 137 | extern void nop_handler(uint64_t vector, istate_t *istate); |
145 | extern void nop_handler(uint64_t vector, istate_t *istate); |
| 138 | extern void external_interrupt(uint64_t vector, istate_t *istate); |
146 | extern void external_interrupt(uint64_t vector, istate_t *istate); |
| 139 | extern void virtual_interrupt(uint64_t irq, void *param); |
- | |
| 140 | extern void disabled_fp_register(uint64_t vector, istate_t *istate); |
147 | extern void disabled_fp_register(uint64_t vector, istate_t *istate); |
| 141 | 148 | ||
| 142 | #endif |
149 | #endif |
| 143 | 150 | ||
| 144 | /** @} |
151 | /** @} |