Rev 534 | Rev 693 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 534 | Rev 576 | ||
---|---|---|---|
Line 36... | Line 36... | ||
36 | #include <panic.h> |
36 | #include <panic.h> |
37 | #include <arch/mm/page.h> |
37 | #include <arch/mm/page.h> |
38 | #include <mm/heap.h> |
38 | #include <mm/heap.h> |
39 | #include <memstr.h> |
39 | #include <memstr.h> |
40 | #include <arch/boot/boot.h> |
40 | #include <arch/boot/boot.h> |
- | 41 | #include <interrupt.h> |
|
41 | 42 | ||
42 | /* |
43 | /* |
43 | * Early ia32 configuration functions and data structures. |
44 | * Early ia32 configuration functions and data structures. |
44 | */ |
45 | */ |
45 | 46 | ||
Line 122... | Line 123... | ||
122 | */ |
123 | */ |
123 | d->access |= DPL_USER; |
124 | d->access |= DPL_USER; |
124 | } |
125 | } |
125 | 126 | ||
126 | idt_setoffset(d, ((__address) interrupt_handlers) + i*interrupt_handler_size); |
127 | idt_setoffset(d, ((__address) interrupt_handlers) + i*interrupt_handler_size); |
127 | trap_register(i, null_interrupt); |
128 | exc_register(i, "undef", null_interrupt); |
128 | } |
129 | } |
129 | trap_register(13, gp_fault); |
130 | exc_register(13, "gp_fault", gp_fault); |
130 | trap_register( 7, nm_fault); |
131 | exc_register( 7, "nm_fault", nm_fault); |
131 | trap_register(12, ss_fault); |
132 | exc_register(12, "ss_fault", ss_fault); |
132 | } |
133 | } |
133 | 134 | ||
134 | 135 | ||
135 | /* Clean IOPL(12,13) and NT(14) flags in EFLAGS register */ |
136 | /* Clean IOPL(12,13) and NT(14) flags in EFLAGS register */ |
136 | static void clean_IOPL_NT_flags(void) |
137 | static void clean_IOPL_NT_flags(void) |