Expand description
ACPI Power Management for x86_64.
Implements ACPI sleep state transitions (S0-S5), SCI interrupt handling, and wake event processing. Reads PM1a/PM1b control and status registers from the FADT to orchestrate suspend (S3), hibernate (S4), and soft-off (S5).
CPU context save/restore for S3 resume uses inline assembly to capture and restore general-purpose registers, segment descriptors, and CR3.
Enums§
- Acpi
Sleep State - ACPI system sleep states.
- Acpi
Wake Event - Types of wake events that can resume the system from sleep.
- LidState
- Laptop lid state.
Functions§
- acpi_
handle_ sci - Handle an ACPI SCI (System Control Interrupt).
- acpi_
hibernate_ s4 - Hibernate (ACPI S4).
- acpi_
pm_ init - Initialize the ACPI power management subsystem.
- acpi_
shutdown_ s5 - Soft power off via ACPI S5.
- acpi_
suspend_ s3 - Suspend to RAM (ACPI S3).
- current_
state - Get the current ACPI sleep state.
- is_
initialized - Check if ACPI PM is initialized.
- is_
state_ supported - Check if a given sleep state is supported.
- last_
wake_ event - Get the last wake event type.
- lid_
state - Get the current lid state.
- supported_
states_ string - Get supported sleep states as a formatted string.
- wake_
event_ count - Get the total number of wake events since boot.