⚡ Linux电源管理 入门→实战

📘 30章 完整版 🔋 嵌入式 🧩 内核/驱动
01
为什么需要PM?功耗组成 · 基本目标与挑战
02
子系统架构 · PM Core · Runtime PM · Suspend/Resume · CPUFreq/Idle · Devfreq
03
PM_DEBUG · PM_SLEEP · CPU_FREQ · 编译部署
04
Suspend-to-RAM · Suspend-to-Idle · Hibernate · /sys/power/state
05
struct dev_pm_ops · prepare/suspend/resume/complete · 驱动实例
06
pm_runtime_get/put · 自动挂起/唤醒 · 驱动案例
07
Governor · performance/powersave/ondemand/schedutil · cpufrequtils
08
C-States/P-States · Governor menu/ladder/teo · 延迟与功耗
09
Devfreq框架 · simple_ondemand · DDR/GPU调频实例
10
Regulator框架 · 编写Regulator驱动
11
Fuel Gauge · Charger驱动 · sysfs接口
12
Thermal框架 · Cooling Device · step_wise/power_allocator
13
powertop · perf · turbostat · lm-sensors · I2C测量
14
/sys/power/ · /sys/devices/.../power/ · debugfs · ftrace
15
电源域 · Regulator · Thermal · CPU Freq/Idle描述
16
Generic PM Domain · 域门控与唤醒
17
Wake-up Source · IRQ唤醒 · NoIRQ suspend · GPIO唤醒
18
ASoC · DAPM · Pop/Click噪声抑制
19
DRM/KMS · Panel/Backlight · DPMS状态机
20
WoWLAN · PHY低功耗 · NIC Runtime PM · EEE
21
MMC/SDIO Runtime PM · NVMe电源状态 · 写回策略
22
USB Suspend/Resume · Autosuspend · Wakeup · OTG
23
Android wakelock · D-Bus · systemd/logind
24
PREEMPT_RT · 延迟与功耗平衡 · 案例
25
安全启动 · TPM · 休眠安全 · 加密密钥
26
pm_test · 自动化脚本 · 压力测试
27
无法唤醒 · 功耗过高 · 驱动回调不执行
28
默认配置 → 优化后功耗降低30%
29
I2C传感器 Runtime PM 实例
30
MCU+Linux · 电池供电 · 待机<1mW