Linux Power Management Features, Their Relationships and Interactions
summary
Covers system-wide suspend and runtime PM with concrete pitfalls and fixes: suspend callbacks are prepare, suspend, suspend_late, suspend_noirq and misordering breaks devices; PCI expects suspend_noirq access while an I2C GPIO expander may be runtime-suspended, creating an I2C GPIO vs PCI reset conflict. Demonstrates using echo mem to /sys/power/state, raising printk for debugging, a small GitHub clock-check tool that reveals clock_monotonic stops, and real implementations like copying code into SRAM for suspend-to-RAM and PSCI offload on platforms.
AI-written summary · about
chapters (14)
- 0:00Linux power management intro
- 1:49Speaker background
- 2:31System-wide suspend
- 5:43Suspend callbacks order
- 9:38Device behavior in suspend
- 13:14Four suspend modes
- 18:07Platform suspend implementation
- 20:35Suspend-to-RAM vs hibernation
- 22:02Clock behavior in suspend
- 25:15Runtime PM fundamentals
- 27:42Advanced runtime PM
- 31:35Runtime PM vs suspend
- 33:01Pitfalls and conflicts
- 34:27Q&A
related talks
36mLinux Power Management Features, Their Relationships and Interactions
41mLinux Power Management Features & Their Interactions, Part 2
59mDevice power management and idle
47mLinux Kernel Power Management - 101
32mAdding Runtime Power Management Capabilities to Device Drivers
25mMultiple system-wide low power-states
33mRemote Core Power Management in AMP Systems
47mEvolution of Suspend-to-Idle Support in The Linux Kernel
