summaryrefslogtreecommitdiffstats
path: root/include/arch/x86_64/idt.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/arch/x86_64/idt.h')
-rw-r--r--include/arch/x86_64/idt.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/include/arch/x86_64/idt.h b/include/arch/x86_64/idt.h
new file mode 100644
index 0000000..90ce48b
--- /dev/null
+++ b/include/arch/x86_64/idt.h
@@ -0,0 +1,18 @@
+#ifndef _JOVE_x86_64_IDT_H
+#define _JOVE_x86_64_IDT_H 1
+
+#include "processor.h"
+
+typedef struct jove_IVTState
+{
+ uint64_t r15, r14, r13, r12, r11, r10, r9, r8;
+ uint64_t rbp, rdi, rsi, rdx, rcx, rbx, rax;
+ uint64_t rip, cs, rflags, rsp, ss;
+} ivt_state_t;
+
+void kpanic_state(ivt_state_t *state, const char *fmt, ...);
+
+void ivt_setup(void);
+void idt_setup(processor_t *processor);
+
+#endif