Standby
Linux standby模式是一种省电模式,在这种模式下,计算机进入睡眠状态以节省功耗;当系统处于standby模式时,系统自动将大部分硬件设备关闭或者进入低功耗状态,并且DDR进入自刷新状态。
功能介绍
系统休眠唤醒框图如下:
系统的休眠唤醒分为四层:
- 用户空间层,主要是系统休眠的发起方
- 内核层,主要处理冻结用户进程、内核线程、以及各个设备的休眠唤醒等
- OPENSBI层,该层会操作PMU,让系统进入休眠
- 硬件层,PMU硬件处理系统休眠唤醒的硬件逻辑
源码结构介绍
控制器驱动代码在 drivers/soc/spacemit/pm/目录下:
drivers/soc/spacemit/pm/
├── Makefile
├── platform_hibernation_pm.c
├── platform_hibernation_pm_ops.c
├── platform_pm.c
├── platform_pm_ops.c
休眠唤醒核心层代码在 kernel/power目录下:
kernel/power/
├── Kconfig
├── main.c
├── suspend.c
└── wakelock.c
关键特性
特性
无
性能参数
| 休眠时间 | 唤醒时间 | 休眠功耗 |
| :-----| :----| :----: | :----: |:----: |
| 3s | 1s | 32.3 mw |
配置介绍
主要包括驱动使能配置和dts配置