summaryrefslogtreecommitdiff
path: root/sys/include/arch/amd64/lapic.h
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2024-06-29 18:38:13 -0400
committerIan Moffett <ian@osmora.org>2024-06-29 18:38:13 -0400
commit9113fa42e6794e39d7233e17e8106f677ad04d94 (patch)
tree2c8763b8b0c271d4f2d6b9b4bf2415da7612526d /sys/include/arch/amd64/lapic.h
parent1bcdbcf7b9b38de99c73ca44b6b9ea7785deaac7 (diff)
kernel/amd64: lapic: Add support for IPIs
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys/include/arch/amd64/lapic.h')
-rw-r--r--sys/include/arch/amd64/lapic.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/include/arch/amd64/lapic.h b/sys/include/arch/amd64/lapic.h
index d06bcc9..3b06206 100644
--- a/sys/include/arch/amd64/lapic.h
+++ b/sys/include/arch/amd64/lapic.h
@@ -30,10 +30,20 @@
#ifndef _MACHINE_LAPIC_H_
#define _MACHINE_LAPIC_H_
+#include <sys/param.h>
#include <sys/types.h>
+#define IPI_SHORTHAND_NONE 0x00
+#define IPI_SHORTHAND_SELF 0x01
+#define IPI_SHORTHAND_ALL 0x02
+#define IPI_SHORTHAND_OTHERS 0x03
+
+#define IPI_DEST_PHYSICAL 0
+#define IPI_DEST_LOGICAL BIT(11)
+
void lapic_init(void);
void lapic_eoi(void);
+void lapic_send_ipi(uint8_t id, uint8_t shorthand, uint8_t vector);
extern uintptr_t g_lapic_base;