pub struct Madt<'t> { /* private fields */ }
Expand description
A wrapper around the MADT ACPI table (Multiple APIC Descriptor Table), which contains details about multicore and interrupt configuration.
You most likely only care about the iter()
method,
though other fields of the MADT are accessible.
Implementations§
source§impl<'t> Madt<'t>
impl<'t> Madt<'t>
sourcepub fn get(acpi_tables: &'t AcpiTables) -> Option<Madt<'t>>
pub fn get(acpi_tables: &'t AcpiTables) -> Option<Madt<'t>>
Finds the MADT in the given AcpiTables
and returns a reference to it.
sourcepub fn bsp_init(&self, page_table: &mut PageTable) -> Result<(), &'static str>
pub fn bsp_init(&self, page_table: &mut PageTable) -> Result<(), &'static str>
Performs initialization functions of the IOAPIC and bootstrap processor.
Important Note
This should only be called once from the initial bootstrap processor (the first core to run).
sourcepub fn iter(&self) -> MadtIter<'_> ⓘ
pub fn iter(&self) -> MadtIter<'_> ⓘ
Returns an Iterator
over the MADT’s entries,
which are variable in both number and size.
sourcepub fn local_apic_phys_addr(&self) -> u32
pub fn local_apic_phys_addr(&self) -> u32
Returns the Local APIC physical address value in this MADT table.
Auto Trait Implementations§
impl<'t> RefUnwindSafe for Madt<'t>
impl<'t> Send for Madt<'t>
impl<'t> Sync for Madt<'t>
impl<'t> Unpin for Madt<'t>
impl<'t> UnwindSafe for Madt<'t>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more