diff options
Diffstat (limited to '')
-rw-r--r-- | kernel/src/arch/i686/sys.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/kernel/src/arch/i686/sys.c b/kernel/src/arch/i686/sys.c new file mode 100644 index 0000000..209fea4 --- /dev/null +++ b/kernel/src/arch/i686/sys.c @@ -0,0 +1,51 @@ +#include <sys.h> +#include <arch/i686/asm.h> +#include <arch/i686/acpi.h> +#include <arch/i686/drivers/rtc.h> +#include <arch/i686/idt.h> +#include <arch/i686/pic.h> +#include <arch/i686/mboot.h> +#include <arch/i686/drivers/ps2ctrl.h> + +void arch_init(void *boot_info) { + rtc_update(); + + idt_init(); + pic_remap(); + + load_boot_info(boot_info); + + /* havent refactored to work with paging yet */ + // acpi_init(); + // memory_init(); + + ps2ctrl_init(); +} + +extern void arch_update(void) { + rtc_update(); +} + +void arch_halt(void) { + halt(); +} + +void arch_wait_io(void) { + io_wait(); +} + +void arch_disable_int(void) { + int_disable(); +} + +void arch_enable_int(void) { + int_enable(); +} + +extern void arch_wait_int(void) { + int_wait(); +} + +void arch_poweroff(void) { + acpi_poweroff(); +} |