diff options
author | Tyler Murphy <=> | 2023-07-22 11:05:30 -0400 |
---|---|---|
committer | Tyler Murphy <=> | 2023-07-22 11:05:30 -0400 |
commit | da094d011f52a8f1ce879810cd1a4bbbe34f08d4 (patch) | |
tree | 4649b04705b49c2eb5f8691a5d9951351f65df04 /kernel/src/arch/i686/arch.c | |
parent | refactoring (diff) | |
download | finix-main.tar.gz finix-main.tar.bz2 finix-main.zip |
Diffstat (limited to 'kernel/src/arch/i686/arch.c')
-rw-r--r-- | kernel/src/arch/i686/arch.c | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/kernel/src/arch/i686/arch.c b/kernel/src/arch/i686/arch.c new file mode 100644 index 0000000..5cabdf8 --- /dev/null +++ b/kernel/src/arch/i686/arch.c @@ -0,0 +1,50 @@ +#include "print.h" +#include <arch.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); + 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(); +} |