diff options
Diffstat (limited to 'main.c')
-rw-r--r-- | main.c | 44 |
1 files changed, 44 insertions, 0 deletions
@@ -0,0 +1,44 @@ +#include "jove.h" +#include "object.h" +#include "memory.h" +#include "print.h" +#include "init.h" +#include "device/portio_uart.h" +#include "device/processor.h" +#include "device/initrd.h" + +struct jove_ObjectDirectory _initDirectory = { + + .entries = { + [0] = { + .type = KO_OBJECT_DIRECTORY, + .data = 1 + }, + } +}; +init_data_t _initData; + +void +_jove_main(void) +{ + bsp_setup(); +#ifdef ENABLE_PORTIO_UART + portio_uart_setup(); +#endif + + pmem_setup(); + vmem_setup(); +#ifdef ENABLE_INITRD + initrd_setup(); +#endif + + init_load(); + kprintf("Reached end of kernel main!\n"); + hcf(); +} + +NORETURN void +hcf(void) +{ + for(;;) __asm__ volatile("hlt"); +} |