栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

2022-05-31 Android 禁止系统进入深度休眠,需求:插入充电器的情况下不进入深度休眠。linux wake

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2022-05-31 Android 禁止系统进入深度休眠,需求:插入充电器的情况下不进入深度休眠。linux wake

一、看kernel log,目前插着充电器灭屏幕之后会进入休眠。

二、 目前有个需求:因为进入深度休眠后会把一些电给关了,现在需要插入充电器的情况下不进入深度休眠。

三、linux wake_lock 已经/sys/power 下面提供相关接口

 四、驱动文件在 kernelkernelpowermain.c 、kernelkernelpowerwakelock.c

 

 五、Android 上层调用这些接口的地方在systemhardwareinterfacessuspend1.0defaultSystemSuspend.cpp

六、在Linux系统中,wake_lock是一直锁机制,只要有驱动占用这个锁,系统就不会进入深度休眠。读wakeup_count,如果一直被占用就会一直等待,就不会进入深度修改。

 七、进入休眠的方式,读wakeup_count是为了保证当前wake_lock没有被占用,执行后系统会进入深度休眠。注意读出来的和写进去的是一样的,不然写不了。

 

八、满足需求(需要插入充电器的情况下不进入深度休眠)。需要修改的代码

 

九、分析过程中涉及的文件

frameworks/base/services/core/java/com/android/server/wm/ActivityStackSupervisor.java
systemhardwareinterfacessuspend1.0defaultSystemSuspend.cpp
kernel/power/suspend.c
kernel/power/main.c
kernelkernelpowerwakelock.c
system/hardware/interfaces/suspend/1.0/default/SystemSuspend.cpp

十、参考文章

1、Android 禁止系统进入深度休眠_weixin_30756499的博客-CSDN博客

2、Android 系统定制不进入深度休眠+增加后台运行白名单_青春给了狗的博客-CSDN博客

3、android 阻止系统进入深度休眠(不影响正常休眠逻辑)_芊汐的博客-CSDN博客_android阻止系统休眠

4、Linux电源管理(8)_Wakeup count功能_jacob的博客-CSDN博客

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/939756.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号