use crate::syscalls::types::RequiredPtrMut;
use super::{define_syscall, SyscallNum};
define_syscall! {
SyscallNum::SysShutdown => {
sysshutdown() unreachable
},
SyscallNum::SysReboot => {
sysreboot() unreachable
}
}
#[inline]
pub fn shutdown() -> ! {
sysshutdown()
}
#[inline]
pub fn reboot() -> ! {
sysreboot()
}
define_syscall! {
SyscallNum::SysUptime => {
sysuptime(uptime: RequiredPtrMut<u64>)
}
}
#[inline]
pub fn uptime() -> u64 {
let mut results: u64 = 0;
let ptr = unsafe { RequiredPtrMut::new_unchecked(&raw mut results) };
sysuptime(ptr);
results
}