aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/interrupts/generic.h
diff options
context:
space:
mode:
authorGravatar ornitorrincos 2026-08-18 12:15:05 +0200
committerGravatar ornitorrincos 2026-08-18 12:15:05 +0200
commit132d3236bb884433bf94e961f6d32264e0334aec (patch)
tree06638976b06f019ea4037175ff228f8271057c44 /kernel/interrupts/generic.h
Diffstat (limited to '')
-rw-r--r--kernel/interrupts/generic.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/kernel/interrupts/generic.h b/kernel/interrupts/generic.h
new file mode 100644
index 0000000..aee4dde
--- /dev/null
+++ b/kernel/interrupts/generic.h
@@ -0,0 +1,33 @@
+#pragma once
+
+#include <stdint.h>
+
+typedef struct {
+ uint64_t rax; // rax
+ uint64_t rbx;
+ uint64_t rcx;
+ uint64_t rdx;
+ uint64_t rbp;
+ uint64_t rsi;
+ uint64_t rdi;
+ uint64_t r8;
+ uint64_t r9;
+ uint64_t r10;
+ uint64_t r11;
+ uint64_t r12;
+ uint64_t r13;
+ uint64_t r14;
+ uint64_t r15;
+
+ uint64_t trapno;
+ uint64_t err;
+
+ uint64_t rip; // rip
+ uint64_t cs;
+ uint64_t eflags; // rflags
+ uint64_t esp; // rsp
+ uint64_t ds; // ss
+} trapframe;
+
+void generic_interrupt(trapframe* frame);
+