1 /* 2 ** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved. 3 ** Distributed under the terms of the NewOS License. 4 */ 5 #ifndef KERNEL_ARCH_INT_H 6 #define KERNEL_ARCH_INT_H 7 8 9 #include <boot/kernel_args.h> 10 11 12 #ifdef __cplusplus 13 extern "C" { 14 #endif 15 16 int arch_int_init(kernel_args *ka); 17 int arch_int_init2(kernel_args *ka); 18 19 void arch_int_enable_interrupts(void); 20 int arch_int_disable_interrupts(void); 21 void arch_int_restore_interrupts(int oldstate); 22 void arch_int_enable_io_interrupt(int irq); 23 void arch_int_disable_io_interrupt(int irq); 24 bool arch_int_are_interrupts_enabled(void); 25 26 #ifdef __cplusplus 27 } 28 #endif 29 30 #endif /* KERNEL_ARCH_INT_H */ 31