summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/amd64/amd64/ioapic.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/sys/arch/amd64/amd64/ioapic.c b/sys/arch/amd64/amd64/ioapic.c
index b4d5f51..ffc732d 100644
--- a/sys/arch/amd64/amd64/ioapic.c
+++ b/sys/arch/amd64/amd64/ioapic.c
@@ -168,6 +168,17 @@ ioapic_set_base(void *mmio_base)
}
void
+ioapic_set_vec(uint8_t irq, uint8_t vector)
+{
+ union ioapic_redentry redentry;
+ uint8_t gsi = irq_to_gsi(irq);
+
+ ioapic_read_redentry(&redentry, gsi);
+ redentry.vector = vector;
+ ioapic_write_redentry(&redentry, gsi);
+}
+
+void
ioapic_init(void)
{
size_t tmp;