wakeup_aps

Function wakeup_aps 

Source
pub fn wakeup_aps<H>(
    tables: &AcpiTables<H>,
    handler: H,
    apic_id: u32,
    wakeup_vector: u64,
    timeout_loops: u64,
) -> Result<(), AcpiError>
where H: AcpiHandler,
Expand description

Wakes up Application Processors (APs) using the Multiprocessor Wakeup Mailbox mechanism.

For Intel processors, the execution environment is:

  • Interrupts must be disabled.
  • RFLAGES.IF set to 0.
  • Long mode enabled.
  • Paging mode is enabled and physical memory for waking vector is identity mapped (virtual address equals physical address).
  • Waking vector must be contained within one physical page.
  • Selectors are set to flat and otherwise not used.