Linux系统支持多种休眠模式,当前系统支持三种,查看方式如下
cat /sys/power/state
freeze standby mem
freeze: 冻结I/O设备,将它们置于低功耗状态,使处理器进入空闲状态,唤醒最快,耗电比其它standby, mem方式高
standby:除了冻结I/O设备外,还会暂停系统,唤醒较快,耗电比其它 mem、disk方式高
mem:将运行状态数据存到内存,并关闭外设,进入等待模式,唤醒较慢。
启用调试串口ttymxc0作为唤醒设备
echo enabled > /sys/class/tty/ttymxc0/power/wakeup
休眠到mem模式
echo mem > /sys/power/state
M: suspend entry (deep)
PM: Syncing filesystems ... done.
Freezing user space processes ... (elapsed 0.002 seconds) done.
OOM killer disabled.
Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
Suspending console(s) (use no_console_suspend to debug)
此时系统休眠到memory。在串口上按任意键,可唤醒系统,提示信息如下。
PM: suspend devices took 0.010 seconds
gpmi-nand 1806000.gpmi-nand: enable the asynchronous EDO mode 5
PM: resume devices took 0.010 seconds
OOM killer enabled.
Restarting tasks ... done.
PM: suspend exit
休眠到RAM
echo enabled > /sys/class/tty/ttymxc0/power/wakeup
echo mem > /sys/power/state
按任意键盘按键,串口会唤醒系统。
休眠后定时唤醒
RTC在5秒后唤醒系统
echo +5 > /sys/class/rtc/rtc1/wakealarm; echo mem > /sys/power/state
作者:SteveChen 创建时间:2024-09-17 15:53
最后编辑:SteveChen 更新时间:2024-09-17 16:55
最后编辑:SteveChen 更新时间:2024-09-17 16:55