X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/76175f34b86c84044cd2b944a581575ade056f7b..9b840d9c5c0db5e621e475dc8414edd98497ed36:/lunaix-os/arch/aarch64/includes/asm/cpu.h diff --git a/lunaix-os/arch/aarch64/includes/asm/cpu.h b/lunaix-os/arch/aarch64/includes/asm/cpu.h new file mode 100644 index 0000000..29de5a5 --- /dev/null +++ b/lunaix-os/arch/aarch64/includes/asm/cpu.h @@ -0,0 +1,27 @@ +#ifndef __LUNAIX_ARCH_CPU_H +#define __LUNAIX_ARCH_CPU_H + +#include "aa64.h" + +void +cpu_trap_sched(); + +static inline void +cpu_enable_interrupt() +{ + set_sysreg(ALLINT_EL1, 0); +} + +static inline void +cpu_disable_interrupt() +{ + set_sysreg(ALLINT_EL1, 1 << 12); +} + +static inline void +cpu_wait() +{ + asm volatile ( "wfi" ); +} + +#endif /* __LUNAIX_CPU_H */