1
0
Fork 0

feat/kernel: Added I/O APIC support

This commit is contained in:
Kevin Alavik 2025-06-01 12:52:41 +02:00
parent 03cc8ff8de
commit f81181ea9c
Signed by: cmpsb
GPG key ID: 10D1CC0526FDC6D7
9 changed files with 141 additions and 43 deletions

View file

@ -21,6 +21,7 @@
#include <sys/acpi.h>
#include <sys/acpi/madt.h>
#include <sys/apic/lapic.h>
#include <sys/apic/ioapic.h>
__attribute__((used, section(".limine_requests"))) static volatile LIMINE_BASE_REVISION(3);
__attribute__((used, section(".limine_requests"))) static volatile struct limine_memmap_request memmap_request = {
@ -189,7 +190,7 @@ void emk_entry(void)
outb(0x21, 0xff);
outb(0xA1, 0xff);
/* Init APIC (LAPIC for now) */
/* Setup LAPIC */
lapic_init();
/* Setup SMP */
@ -201,6 +202,9 @@ void emk_entry(void)
mp_response = mp_request.response;
smp_init();
/* Setup IOAPIC */
ioapic_init();
/* Finished */
log_early("%s", LOG_SEPARATOR);
log_early("Finished initializing EMK v1.0, took ? seconds"); /* Still not usermode, so keep using log_early */