如何通过从kernel log分析AP suspend状态下的异常漏电
来源:互联网 发布:手机阅卷软件 编辑:程序博客网 时间:2024/05/02 07:17
[DESCRIPTION]
AP suspend状态下,会因为GPIO配置不当,subsys/pll/clock没关,或者其他的原因造成26M没关,而导致底电流升高;
这种情况,可以从kernel log中找到一些端倪,以确定进一步分析的方向
[SOLUTION]
【1】查找没有关闭的subsys/clock/pll
[6589/6582/6592/6595/6795]
查找关键字“PWR_STATUS”,[7:0]对应每个bit对应一个subsys
如果bit为1,代表这个子系统没关
每个bit的定义可以看mt_spm_mtcmos.c
比如:#define MD1_PWR_STA_MASK (0x1 << 0)
[6732/6752/6735/6753]
查找关键字“slp_check_pm_mtcmos_pll”
如果有子系统没关,下一行可以看到类似下面的信息:
[Power/clkmgr] SYS_AUD: on
然后再往下看,就是各子系统的dump信息,以aud子系统为例,找到SYS_AUD对应的部分,详细解释如下:
- cnt不等于0表示这个clock没关
- 后面每一个括号内(可能有多个)是这个clock的其中一个user的信息
- “audio”是使用clock的user的名字,代码里传入的参数
- “15”表示open clock的次数,
- “14”表示close clock的次数,两者不一样的话说明“audio”这个user使用这个clock有问题
[06][CG_AUDIO]*****
[02]state=1, cnt=1 (AUDIO,15,14)
[08]state=0, cnt=0 (AUDIO,8,8)
[09]state=0, cnt=0 (AUDIO,8,8)
[18]state=0, cnt=0 (AUDIO,8,8)
[19]state=0, cnt=0 (AUDIO,8,8)
[08]state=0, cnt=0 (AUDIO,8,8)
[09]state=0, cnt=0 (AUDIO,8,8)
[18]state=0, cnt=0 (AUDIO,8,8)
[19]state=0, cnt=0 (AUDIO,8,8)
【2】查看GPIO的状态
默认是关闭的,需要用下面的命令打开
echo 1 > /sys/module/mt_sleep/parameters/slp_dump_gpio
然后在kernel log里就可以看到类似下面的信息:
PIN: [MODE] [PULL_SEL] [DIN] [DOUT] [PULL EN] [DIR] [IES]
对一下正常更异常的情况就会有帮助
*重点关注[mode][DIR][PULL_SEL],其他栏位的状态即使改变很多情况下也是正常的
*有些平台本身这块代码是注释掉的,需要更改代码才可以,搜索slp_dump_gpio可以找到相关代码
【3】查看26M clock是否关闭
搜索关键字“debug_flag”,跟wake up by在同一行,
bit[3:2]可以显示26M有没有关闭过,
如果bit[3:2]=0b'11,说明sleep时26M正常关闭;
如果bit[3:2]=0b'00,说明sleep时26M一直没关;
*如果发生这种case,需要case by case去看
*另外,如果前面是wake up by GPU,请忽略这行log信息(deepdile状态,不是suspend状态)
0 0
- 如何通过从kernel log分析AP suspend状态下的异常漏电
- User版本下如何抓取kernel的log
- 从log中分析Android wif连接状态的方法
- 从log中分析Android wif连接状态的方法
- kernel 异常重启的log输出
- PlC也会漏电!PLC漏电分析
- user版本如何打开uart,让android log从串口kernel log输出
- user版本如何打开uart,让android log从串口kernel log输出
- 基础篇: 通过log分析KE--深入分析Linux kernel exception框架
- 如何分析Android的Log
- 如何分析Android的Log
- 如何分析Android的Log
- 如何分析Android的Log
- QCOM平台子系统通过AP处理异常
- 查看kernel的log
- AP 发票状态的获取
- 如何在kernel log里找到对应的android时间
- monkey log异常分析
- 中国网民用户日渐增多,网站建设更是发挥了越来越大的用处
- dos只复制文件结构和目录
- Java GUI菜单栏(非下拉菜单)的字体及大小的改变
- mysql字符串连接,重复等字符串函数总结
- ios设置icon图标和启动页的详细设置
- 如何通过从kernel log分析AP suspend状态下的异常漏电
- 利用FaceBook实现第三方登陆(自定义登陆按钮,非官方按钮)并获取用户数据
- GCD 学习(三)Main&Global Dispatch Queue
- leetcode Single Number II
- UEditor编辑框插入的表格显示页无法显示的问题
- 做企业网络营销应该把握好哪些呢?
- ESI 动态缓存技术
- 对象 多态
- Mware虚拟机CentOS无法上网解决方法: