diff --git a/x64/makefile b/x64/makefile index 7cca36c..344a659 100644 --- a/x64/makefile +++ b/x64/makefile @@ -21,40 +21,15 @@ C_WARNINGS := -Wall \ -Werror \ -Wextra \ -Wpedantic \ - -pedantic-errors \ - -Wdouble-promotion \ -Winit-self \ - -Wmissing-include-dirs \ - -Wswitch-default \ -Wunused-parameter \ -Wuninitialized \ - -Wsuggest-attribute=const \ -Wfloat-equal \ - -Wdeclaration-after-statement \ - -Wtraditional-conversion \ -Wshadow \ - -Wundef \ - -Wbad-function-cast \ - -Wc++-compat \ -Wcast-qual \ -Wcast-align \ - -Wwrite-strings \ - -Wconversion \ - -Wjump-misses-init \ - -Wlogical-op \ - -Waggregate-return \ - -Wno-aggressive-loop-optimizations \ -Wstrict-prototypes \ - -Wold-style-definition \ - -Wold-style-declaration \ - -Wmissing-prototypes \ - -Wmissing-declarations \ - -Wredundant-decls \ - -Wlong-long \ - -Wvarargs \ - -Wvla \ - -Woverlength-strings \ - -Wunsuffixed-float-constants \ + -Wpointer-arith \ -Wno-comment C_FLAGS := -std=c11 \ diff --git a/x64/src/common/inc/kernel/ke/s_intr.h b/x64/src/common/inc/kernel/ke/s_intr.h index e3acfba..8efdd01 100644 --- a/x64/src/common/inc/kernel/ke/s_intr.h +++ b/x64/src/common/inc/kernel/ke/s_intr.h @@ -32,19 +32,19 @@ typedef uint32_t irql_t; // // interrupt functions // -extern void KABI hal_disable_interrupt(uint32_t interrupts); +extern void KABI hal_disable_interrupt(void); -extern void KABI hal_enable_interrupt(uint32_t interrupts); +extern void KABI hal_enable_interrupt(void); extern void KABI hal_set_timer_timeout(uint64_t millis); -extern void KABI hal_halt_cpu(); +extern void KABI hal_halt_cpu(void); -extern int32_t KABI hal_get_current_core(); +extern int32_t KABI hal_get_current_core(void); extern void KABI hal_set_irql(irql_t irql); -extern irql_t KABI hal_get_irql(); +extern irql_t KABI hal_get_irql(void); extern void KABI hal_issue_interrupt(uint32_t core_id, uint32_t vector); diff --git a/x64/src/hal/inc/arch.h b/x64/src/hal/inc/arch.h index c3cf7d4..2e9bdef 100644 --- a/x64/src/hal/inc/arch.h +++ b/x64/src/hal/inc/arch.h @@ -31,11 +31,11 @@ extern void KABI hal_read_msr(uint32_t *ecx, uint32_t *edx, uint32_t *eax); extern void KABI hal_write_msr(uint32_t *ecx, uint32_t *edx, uint32_t *eax); -extern void KABI hal_enable_interrupt(); +extern void KABI hal_enable_interrupt(void); -extern void KABI hal_disable_interrupt(); +extern void KABI hal_disable_interrupt(void); -extern void KABI hal_halt_cpu(); +extern void KABI hal_halt_cpu(void); extern int8_t KABI hal_read_port_8(uint16_t port); @@ -55,7 +55,7 @@ extern void KABI hal_write_mem_64(void* target, uint64_t data); extern void KABI hal_flush_gdt(hal_gdt_ptr_t *gdt_ptr, uint64_t code_slct, uint64_t data_slct); -extern void KABI hal_flush_tlb(); +extern void KABI hal_flush_tlb(void); extern void KABI hal_flush_idt(hal_idt_ptr_t *idt_ptr); @@ -63,10 +63,10 @@ extern void KABI hal_read_idt(hal_idt_ptr_t **idt_ptr); extern void KABI hal_write_cr3(uint64_t base); -extern uint64_t KABI hal_read_cr3(); +extern uint64_t KABI hal_read_cr3(void); extern void KABI hal_write_cr8(uint64_t pri); -extern uint64_t KABI hal_read_cr8(); +extern uint64_t KABI hal_read_cr8(void); #endif \ No newline at end of file diff --git a/x64/src/kernel/ke/intr.c b/x64/src/kernel/ke/intr.c index e614744..91ba7e3 100644 --- a/x64/src/kernel/ke/intr.c +++ b/x64/src/kernel/ke/intr.c @@ -1,6 +1,10 @@ #include "assert.h" #include "intr.h" +// +// End HAL +// + irql_t KABI ke_raise_irql(irql_t irql) { ke_assert(ke_get_irql() <= irql);