#![allow(clippy::not_unsafe_ptr_arg_deref)]
#[repr(C)]
pub struct ClintControls {
pub msip: u32,
_reserved_1: [u32; 0xFFF],
pub mtimecmp: u32,
_reserved_2: [u32; 0xFFF],
pub mtime: u32,
_reserved_3: [u32; 0xFFF],
}
impl ClintControls {
#[inline]
pub fn clear_mtime(clint: *mut ClintControls) {
unsafe { (*clint).mtime = 0 };
}
#[inline]
pub fn set_mtimecmp(clint: *mut ClintControls, target: u32) {
unsafe { (*clint).mtimecmp = target };
}
}
pub const CLINT: *mut ClintControls = 0x20000000 as *mut ClintControls;