summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2024-06-08 18:13:42 -0400
committerIan Moffett <ian@osmora.org>2024-06-08 18:13:42 -0400
commitd5381223cea600ff007069bc1313de142cd06972 (patch)
treef3e05cf8394a066d190891186e7a399b70f248b5 /sys
parent3651f2f603e254cfb32f4bd04980a7edd50fdc7d (diff)
kernel/amd64: lapic: Add End-Of-Interrupt helper
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/amd64/amd64/lapic.c10
-rw-r--r--sys/include/arch/amd64/lapic.h1
2 files changed, 11 insertions, 0 deletions
diff --git a/sys/arch/amd64/amd64/lapic.c b/sys/arch/amd64/amd64/lapic.c
index 07a9a49..b7cefd4 100644
--- a/sys/arch/amd64/amd64/lapic.c
+++ b/sys/arch/amd64/amd64/lapic.c
@@ -284,6 +284,16 @@ lapic_timer_init(void)
return freq;
}
+/*
+ * Indicates that the current interrupt is finished
+ * being serviced.
+ */
+void
+lapic_eoi(void)
+{
+ lapic_writel(LAPIC_EOI, 0);
+}
+
void
lapic_init(void)
{
diff --git a/sys/include/arch/amd64/lapic.h b/sys/include/arch/amd64/lapic.h
index 8a6bb14..d06bcc9 100644
--- a/sys/include/arch/amd64/lapic.h
+++ b/sys/include/arch/amd64/lapic.h
@@ -33,6 +33,7 @@
#include <sys/types.h>
void lapic_init(void);
+void lapic_eoi(void);
extern uintptr_t g_lapic_base;