diff options
Diffstat (limited to 'stage3/interrupts.c')
-rw-r--r-- | stage3/interrupts.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/stage3/interrupts.c b/stage3/interrupts.c index e7b819e..71f953f 100644 --- a/stage3/interrupts.c +++ b/stage3/interrupts.c @@ -102,6 +102,13 @@ void interrupt_handler(interrupt_frame *frame) } } +typedef struct { + u16 size; + u64 addr; +} __attribute__((packed)) idt_descriptor; + +idt_descriptor idtr; + void init_interrupts() { typedef struct { @@ -139,12 +146,7 @@ void init_interrupts() }; } - typedef struct { - u16 size; - u64 addr; - } __attribute__((packed)) idt_descriptor; - - idt_descriptor idtr = { + idtr = (idt_descriptor) { .size = 256 * sizeof *idt - 1, .addr = (u64) &idt[0], }; |