X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/05b7549a0f980efa33265a091a5174a78851ce05..9440be3a5115a91dcdf8dff05a361cac4b6cea29:/lunaix-os/kernel/k_init.c diff --git a/lunaix-os/kernel/k_init.c b/lunaix-os/kernel/k_init.c index 2dbd64e..74e3534 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,9 @@ #include #include #include +#include +#include +#include #include #include @@ -27,6 +30,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 +97,11 @@ _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); + clock_init(); + ps2_kbd_init(); for (size_t i = 256; i < hhk_init_pg_count; i++) { vmm_unmap_page((void*)(i << PG_SIZE_BITS));