pub struct El2HypPhysicalTimer();Expand description
Represents our Hypervisor-specific Physical Timer when we are running at EL1.
Implementations§
Source§impl El2HypPhysicalTimer
impl El2HypPhysicalTimer
Sourcepub unsafe fn new() -> El2HypPhysicalTimer
pub unsafe fn new() -> El2HypPhysicalTimer
Create a Timer handle for the EL2-specific Hyp Physical Timer.
§Safety
Only create one of these at any given time, as they access shared mutable state within the processor and do read-modify-writes on that state.
Trait Implementations§
Source§impl GenericTimer for El2HypPhysicalTimer
impl GenericTimer for El2HypPhysicalTimer
Source§fn frequency_hz(&self) -> u32
fn frequency_hz(&self) -> u32
Get the timer frequency
Source§fn counter_compare(&self) -> u64
fn counter_compare(&self) -> u64
Get the counter compare value.
Source§fn counter_compare_set(&mut self, value: u64)
fn counter_compare_set(&mut self, value: u64)
Set the counter compare value. Read more
Source§fn countdown_set(&mut self, duration_ticks: u32)
fn countdown_set(&mut self, duration_ticks: u32)
Set the value of the count-down timer. Read more
Source§fn interrupt_masked(&self) -> bool
fn interrupt_masked(&self) -> bool
Is this timer’s interrupt masked?
Source§fn interrupt_mask(&mut self, mask: bool)
fn interrupt_mask(&mut self, mask: bool)
Mask (or unmask) this timer’s interrupt.
Source§fn interrupt_status(&self) -> bool
fn interrupt_status(&self) -> bool
Has this timer’s interrupt fired?
Source§fn delay_ticks(&mut self, ticks: u32)
fn delay_ticks(&mut self, ticks: u32)
Wait for some number of clock ticks