From 2efd4670416be5bcc64782745b745d2183c8ca11 Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Sun, 4 Feb 2024 22:57:58 -0500 Subject: kernel/amd64: lapic: Add support for sending IPIs Signed-off-by: Ian Moffett --- sys/include/arch/amd64/lapic.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'sys/include/arch/amd64/lapic.h') diff --git a/sys/include/arch/amd64/lapic.h b/sys/include/arch/amd64/lapic.h index 6c72c02..b8fae1b 100644 --- a/sys/include/arch/amd64/lapic.h +++ b/sys/include/arch/amd64/lapic.h @@ -35,9 +35,23 @@ #define LAPIC_TMR_ONESHOT 0x00 #define LAPIC_TMR_PERIODIC 0x01 +/* IPI Destination Shorthands */ +enum { + IPI_SHORTHAND_SELF, + IPI_SHORTHAND_ALL, + IPI_SHORTHAND_OTHERS +}; + +/* IPI Destination Modes */ +enum { + IPI_DEST_PHYSICAL, + IPI_DEST_LOGICAL +}; + void lapic_timer_init(size_t *freq_out); void lapic_timer_oneshot(bool mask, uint32_t count); void lapic_timer_oneshot_us(uint32_t us); +void lapic_send_ipi(uint8_t id, uint8_t shorthand, uint8_t vector); void lapic_init(void); #endif /* !_AMD64_LAPIC_H_ */ -- cgit v1.2.3