21 lines
309 B
C
21 lines
309 B
C
#include "idt.h"
|
|
|
|
static struct idt idt = { 0 };
|
|
|
|
static void load_idt()
|
|
{
|
|
struct idt_r idtr;
|
|
idtr.addr = (uint32_t)&idt;
|
|
idtr.limit = IDT_SIZE - 1;
|
|
|
|
asm volatile("lidt %0\n"
|
|
:
|
|
: "m" (idtr)
|
|
: "memory");
|
|
}
|
|
|
|
void init_idt()
|
|
{
|
|
load_idt();
|
|
}
|