kernel: Implemented various features

+ lapic: Start implementation
+ ioapic: Start implementation
+ apic: Now properly working
+ madt: Start implementation
+ pit: Start implementation
+ smp: Start implementation (only grabs the bootstrap processor's LAPIC ID)
This commit is contained in:
RaphProductions 2025-05-20 08:29:23 +02:00
parent dcea7360d2
commit b2cf9b4710
22 changed files with 520 additions and 79 deletions

View file

@ -0,0 +1,17 @@
/*
* The Soaplin Kernel
* Copyright (C) 2025 The SILD Project
*
* smp.c - x86_64 Symetric Multiprocessing implementation
*/
#include <boot/limine.h>
#include <deps/limine.h>
#include <stdint.h>
uint32_t bootstrap_lapic_id;
void cpu_init_smp() {
struct limine_mp_response *smp = limine_get_smp();
bootstrap_lapic_id = smp->bsp_lapic_id;
}