power Management ---赏析

设备的suspend什么时候被调用

看一张流程图:
驱动提供的suspend、resume函数在其他不存在的时候才会被调用
这里写图片描述
– ####实验验证

如果平台提供了begin()函数

这里写图片描述

三条链表
/**
    系统休眠,最终是平台提供的这个s3c_pm_enter()函数来休眠的。
    一下都是第三部分 ,由平台提供的,在app冻结、设备暂停后被调用
*/
static const struct platform_suspend_ops s3c_pm_ops = {
    .enter      = s3c_pm_enter,           //真正休眠函数,在冻结app、内核线程、暂停设备后。
    .prepare    = s3c_pm_prepare,         //这个函数也是在暂停设备后调用的。他调用的时机 早于上面的enter函数
    .finish     = s3c_pm_finish,
    .valid      = suspend_valid_only_mem,//判断系统支不支持传入的休眠方式,比如嵌入式不支持to disk
};
下面用实验验证这几个函数被调用
平台提供的valid()函数
发送通知到驱动的时机
睡眠流程

先冻结APP、内核线程
这里写图片描述

唤醒流程
runtime电源管理
usb的电源管理
lcd的电源管理
实验验证
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值