[−]Struct sunrise_kernel::devices::hpet::HpetTimerConfigurationRegister
Represent a Timer Configuration Register.
Implementations
impl HpetTimerConfigurationRegister
pub fn interrupt_type(&self) -> bool
Control Timer Interrupt Type: 0 = Edge Trigger, 1 = Level Trigger
pub fn set_interrupt_type(&mut self, value: bool)
Control Timer Interrupt Type: 0 = Edge Trigger, 1 = Level Trigger
pub fn interrupt_enable(&self) -> bool
Control Timer Interrupt.
pub fn set_interrupt_enable(&mut self, value: bool)
Control Timer Interrupt.
pub fn timer_type(&self) -> bool
Control Timer Type: 0 = One Shot, 1 = Periodic
pub fn set_timer_type(&mut self, value: bool)
Control Timer Type: 0 = One Shot, 1 = Periodic
pub fn periodic_interrupt_capability(&self) -> bool
true if this timer is capable of periodic timer.
pub fn size_capability(&self) -> bool
If this bit is 1, this timer is capable of operating in 64 bit mode.
pub fn accumulator_config(&self) -> bool
pub fn set_accumulator_config(&mut self, value: bool)
pub fn is_32bit_mode(&self) -> bool
pub fn set_32bit_mode(&mut self, value: bool)
pub fn interrupt_route(&self) -> u32
Timer Interrupt Route: This indicate the routing in the I/O APIC
Note
If the LegacyReplacement Route bit is set, then Timers 0 and 1 will have a different routing, and this bit field has no effect for those two timers.
If the Timer FSB Interrupt bit is set, then the interrupt will be delivered directly to the FSB, and this bit field has no effect.
pub fn set_interrupt_route(&mut self, value: u32)
Timer Interrupt Route: This indicate the routing in the I/O APIC
Note
If the LegacyReplacement Route bit is set, then Timers 0 and 1 will have a different routing, and this bit field has no effect for those two timers.
If the Timer FSB Interrupt bit is set, then the interrupt will be delivered directly to the FSB, and this bit field has no effect.
pub fn fsb_interrupt(&self) -> bool
Timer FSB Interrupt: force the interrupts to be delivered directly as FSB messages, rather than using the I/O APIC.
pub fn set_fsb_interrupt(&mut self, value: bool)
Timer FSB Interrupt: force the interrupts to be delivered directly as FSB messages, rather than using the I/O APIC.
pub fn fsb_interrupt_capability(&self) -> bool
Timer FSB Interrupt Delivery capability.
Trait Implementations
impl<T> BitRange<T> for HpetTimerConfigurationRegister where
u32: BitRange<T>,
u32: BitRange<T>,
fn bit_range(&self, msb: usize, lsb: usize) -> T
fn set_bit_range(&mut self, msb: usize, lsb: usize, value: T)
impl Clone for HpetTimerConfigurationRegister[src]
fn clone(&self) -> HpetTimerConfigurationRegister[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]
impl Copy for HpetTimerConfigurationRegister[src]
impl Debug for HpetTimerConfigurationRegister[src]
Auto Trait Implementations
impl RefUnwindSafe for HpetTimerConfigurationRegister
impl Send for HpetTimerConfigurationRegister
impl Sync for HpetTimerConfigurationRegister
impl Unpin for HpetTimerConfigurationRegister
impl UnwindSafe for HpetTimerConfigurationRegister
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Bit for T where
T: BitRange<u8>,
T: BitRange<u8>,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T[src]
fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,