X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/05b7549a0f980efa33265a091a5174a78851ce05..287a5f7ae6a3bec3d679a5de394e915b56c7367d:/lunaix-os/kernel/k_init.c diff --git a/lunaix-os/kernel/k_init.c b/lunaix-os/kernel/k_init.c index 2dbd64e..ce97b6e 100644 --- a/lunaix-os/kernel/k_init.c +++ b/lunaix-os/kernel/k_init.c @@ -1,4 +1,4 @@ -#include +#include #include #include @@ -7,6 +7,7 @@ #include #include #include +#include #include #include @@ -27,6 +28,8 @@ extern uint8_t __kernel_start; extern uint8_t __kernel_end; extern uint8_t __init_hhk_end; + +// Set remotely by kernel/asm/x86/prologue.S multiboot_info_t* _k_init_mb_info; LOG_MODULE("INIT"); @@ -92,8 +95,9 @@ _kernel_post_init() { vmm_set_mapping(APIC_BASE_VADDR, __APIC_BASE_PADDR, PG_PREM_RW); vmm_set_mapping(IOAPIC_BASE_VADDR, ioapic_addr, PG_PREM_RW); + apic_init(); ioapic_init(); - init_apic(); + timer_init(SYS_TIMER_FREQUENCY_HZ); for (size_t i = 256; i < hhk_init_pg_count; i++) { vmm_unmap_page((void*)(i << PG_SIZE_BITS));