Rev 3386 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3386 | Rev 4153 | ||
|---|---|---|---|
| Line 48... | Line 48... | ||
| 48 | */ |
48 | */ |
| 49 | #define IVT_ITEMS 0 |
49 | #define IVT_ITEMS 0 |
| 50 | #define IVT_FIRST 0 |
50 | #define IVT_FIRST 0 |
| 51 | 51 | ||
| 52 | /** External Interrupt vectors. */ |
52 | /** External Interrupt vectors. */ |
| - | 53 | ||
| - | 54 | #define VECTOR_TLB_SHOOTDOWN_IPI 0xf0 |
|
| 53 | #define INTERRUPT_TIMER 255 |
55 | #define INTERRUPT_TIMER 255 |
| 54 | #define IRQ_KBD 241 |
56 | #define IRQ_KBD (0x01 + LEGACY_INTERRUPT_BASE) |
| 55 | #define IRQ_MOUSE 252 |
57 | #define IRQ_MOUSE (0x0c + LEGACY_INTERRUPT_BASE) |
| 56 | #define INTERRUPT_SPURIOUS 15 |
58 | #define INTERRUPT_SPURIOUS 15 |
| - | 59 | #define LEGACY_INTERRUPT_BASE 0x20 |
|
| 57 | 60 | ||
| 58 | /** General Exception codes. */ |
61 | /** General Exception codes. */ |
| 59 | #define GE_ILLEGALOP 0 |
62 | #define GE_ILLEGALOP 0 |
| 60 | #define GE_PRIVOP 1 |
63 | #define GE_PRIVOP 1 |
| 61 | #define GE_PRIVREG 2 |
64 | #define GE_PRIVREG 2 |
| Line 112... | Line 115... | ||
| 112 | uint64_t pr; |
115 | uint64_t pr; |
| 113 | uintptr_t sp; |
116 | uintptr_t sp; |
| 114 | 117 | ||
| 115 | /* |
118 | /* |
| 116 | * The following variables are defined only for break_instruction |
119 | * The following variables are defined only for break_instruction |
| 117 | * handler. |
120 | * handler. |
| 118 | */ |
121 | */ |
| 119 | uint64_t in0; |
122 | uint64_t in0; |
| 120 | uint64_t in1; |
123 | uint64_t in1; |
| 121 | uint64_t in2; |
124 | uint64_t in2; |
| 122 | uint64_t in3; |
125 | uint64_t in3; |
| Line 148... | Line 151... | ||
| 148 | extern void universal_handler(uint64_t vector, istate_t *istate); |
151 | extern void universal_handler(uint64_t vector, istate_t *istate); |
| 149 | extern void nop_handler(uint64_t vector, istate_t *istate); |
152 | extern void nop_handler(uint64_t vector, istate_t *istate); |
| 150 | extern void external_interrupt(uint64_t vector, istate_t *istate); |
153 | extern void external_interrupt(uint64_t vector, istate_t *istate); |
| 151 | extern void disabled_fp_register(uint64_t vector, istate_t *istate); |
154 | extern void disabled_fp_register(uint64_t vector, istate_t *istate); |
| 152 | 155 | ||
| - | 156 | extern void trap_virtual_enable_irqs(uint16_t irqmask); |
|
| - | 157 | ||
| 153 | #endif |
158 | #endif |
| 154 | 159 | ||
| 155 | /** @} |
160 | /** @} |
| 156 | */ |
161 | */ |