高通功耗问题分析手段
来源:互联网 发布:知乎公司地址 编辑:程序博客网 时间:2024/06/04 18:28
高通官方提供了一篇文档extensive_power_debug_guide_(simplified_chinese功耗调试).pdf 用来分析中断功耗问题。
本文结合该文档简单的总结了AP端功耗问题分析手段。
首先是官方功耗分析流程图:
注意几个关键的名词:
Modem 调制解调器芯片
RPM Resource Power Manager是高通MSM平台另外加的一块芯片,控制整个电源相关的shared resources
APSS 应用处理器子系统,就是平常我们说的AP
功耗问题一般分为低电流过高,或者异常唤醒造成。
本文只站在AP的角度分析功耗问题,也就是Android系统的角度。
低电流过高首先要验证系统是否进入了最低功耗状态。VDD最小状态。
mount -t debugfs none /sys/kernel/debug/
cat /sys/kernel/debug/rpm_stats 获取系统是否休眠。验证XO关闭和VDD最小化
RPM Mode:xosd
count:0
time in last mode(msec):0
time since last mode(sec):1275
actual last sleep(msec):0
client votes: 0x03030303
RPM Mode:vmin
count:0 //有计数则说明系统进入最低功耗状态
time in last mode(msec):0
time since last mode(sec):1275
actual last sleep(msec):0
client votes: 0x00000000
如果系统没有进入VDD最小状态,则要检查那一项阻止了终端进入VDD最小状态。
这一块主要查看RPM的外部日志。分析,略。
下面分析异常唤醒造成的功耗问题
查看AP端的异常唤醒源,查看modem那块的略过。
echo 1 >/sys/module/msm_show_resume_irq/parameters/debug_mask
echo "8 8 8 8">/proc/sys/kernel/printk
通过查看唤醒锁的状态主要查看active_since字段可以查看,哪个锁造成系统无法休眠。
总结:对于AP端判断功耗问题,一般从低电流状态判断。
排除方法:移除一些外部驱动程序,如sensor,tp,camera,LCD等。
cat /sys/kernel/debug/rpm_stats 获取系统是否休眠。验证XO关闭和VDD最小化
echo 1 >/sys/module/msm_show_resume_irq/parameters/debug_mask
查看log获取异常唤醒源
echo "8 8 8 8">/proc/sys/kernel/printk
adb shell cat/sys/kernel/debug/wakeup_sources > j:\777.txt 查看唤醒锁,哪个锁造成无法休眠。
- 高通功耗问题分析手段
- 系统设计中MP3功耗问题分析
- 高通android平台功耗优化方法
- 功耗分析
- 分析高阶问题
- 内存泄露分析手段
- 高维数据的应对手段: 主成分分析(PCA)简介+numpy实现+weka使用说明
- Tegra3 1080p高清播放时电源管理方式和功耗分析
- Tegra3 1080p高清播放时电源管理方式和功耗分析
- Xilinx 功耗分析
- Synopsys PrimeTime 功耗分析
- 电路功耗分析
- 如何解决直播过程中直播功耗高的问题 | 直播疑难杂症排查
- PIC单片机功耗问题
- BLE功耗问题
- 功耗问题研究
- CPU使用高问题分析
- 深度分析网络游戏运营手段
- InnoDB引擎的索引和存储结构
- 华为的提倡大家学雷锋,绝不让雷锋吃亏
- CS:APP二进制炸弹开篇
- 平台总线驱动
- MySql 模糊查询
- 高通功耗问题分析手段
- Java 静态块 、构造块、构造函数执行顺序
- 多github帐号的SSH key切换
- 一分钟教你知道乐观锁和悲观锁的区别(张高伟)
- 编写时钟 Applet 程序
- difference between clear data and clear cache ? Android
- PCA的数学原理
- Eclipse代码整体后退或前移
- openwrt系统初始化分析