pub struct IrtaReg(/* private fields */);Expand description
Interrupt Remapping Table Address Register (MMIO offset 0x0B8, 64-bit, RW). §10.4.29.
Holds the base address, size, and mode of the interrupt remapping table. Only writable when IRE=0.
Implementations§
Source§impl IrtaReg
impl IrtaReg
Sourcepub const fn with_s_checked(self, value: u8) -> Result<Self, ()>
pub const fn with_s_checked(self, value: u8) -> Result<Self, ()>
Size: number of entries = 2^(S+1). 0=2, 15=65536.
Bits: 0..4
Sourcepub const fn with_s(self, value: u8) -> Self
pub const fn with_s(self, value: u8) -> Self
Size: number of entries = 2^(S+1). 0=2, 15=65536.
Bits: 0..4
Sourcepub const fn set_s(&mut self, value: u8)
pub const fn set_s(&mut self, value: u8)
Size: number of entries = 2^(S+1). 0=2, 15=65536.
Bits: 0..4
Sourcepub const fn set_s_checked(&mut self, value: u8) -> Result<(), ()>
pub const fn set_s_checked(&mut self, value: u8) -> Result<(), ()>
Size: number of entries = 2^(S+1). 0=2, 15=65536.
Bits: 0..4
Sourcepub const fn eime(&self) -> bool
pub const fn eime(&self) -> bool
Extended Interrupt Mode Enable — 1 = x2APIC 32-bit destinations.
Bits: 11..12
Sourcepub const fn with_eime_checked(self, value: bool) -> Result<Self, ()>
pub const fn with_eime_checked(self, value: bool) -> Result<Self, ()>
Extended Interrupt Mode Enable — 1 = x2APIC 32-bit destinations.
Bits: 11..12
Sourcepub const fn with_eime(self, value: bool) -> Self
pub const fn with_eime(self, value: bool) -> Self
Extended Interrupt Mode Enable — 1 = x2APIC 32-bit destinations.
Bits: 11..12
Sourcepub const fn set_eime(&mut self, value: bool)
pub const fn set_eime(&mut self, value: bool)
Extended Interrupt Mode Enable — 1 = x2APIC 32-bit destinations.
Bits: 11..12
Sourcepub const fn set_eime_checked(&mut self, value: bool) -> Result<(), ()>
pub const fn set_eime_checked(&mut self, value: bool) -> Result<(), ()>
Extended Interrupt Mode Enable — 1 = x2APIC 32-bit destinations.
Bits: 11..12
Sourcepub const fn with_irta_checked(self, value: u64) -> Result<Self, ()>
pub const fn with_irta_checked(self, value: u64) -> Result<Self, ()>
IRT base address, bits [63:12]. 4KB-aligned.
Bits: 12..64
Sourcepub const fn with_irta(self, value: u64) -> Self
pub const fn with_irta(self, value: u64) -> Self
IRT base address, bits [63:12]. 4KB-aligned.
Bits: 12..64
Source§impl IrtaReg
impl IrtaReg
Sourcepub fn irt_base_address(&self) -> u64
pub fn irt_base_address(&self) -> u64
Get the IRT base physical address.
Sourcepub fn entry_count(&self) -> u32
pub fn entry_count(&self) -> u32
Get the number of entries in the IRT: 2^(S+1).