[FAQ09541] [Power]待机电流问题,如何查找EINT唤醒源
来源:互联网 发布:burberry 风衣 知乎 编辑:程序博客网 时间:2024/04/29 18:52
FAQ Content
--->89/72/82在wakeup时,如果唤醒源是EINT,会主动打印出EINT_STA的值
--->77默认不会打印这个寄存器,需要先开启EINT_DEBUG这个宏,才能看到EINT_STA的值
kernel log分析:
---------------------------------------------------------------------------------------------------------------------------
【step1 - 从kernel log中找到EINT channel id】
MT6577
[Power/Sleep] wake up by EINT (0x20)(0x4)(180689) (* 这里0x20是EINT wakesrc id,0x4是sleep ISR寄存器状态,都不是channel id!)
EINT Module - EINT_STA = 0x400,--->bit[n] =1, channel id 就等于n
MT6589/MT6582
[SPM] wake up by EINT (0x20)(0x20)(370340)
EINT_STA:
3 --->这个值就是EINT channel id,不需要转换
MT6572
[PCM WAKEUP NORMAL]CPU WAKE UP BY: EINT :0x10000 --->bit[n] =1, channel id 就等于n
【step2 - 过滤PMIC触发的EINT唤醒】
pwrkey/charger/usb/这些事件发生时会有EINT产生,走的都是PMIC的EINT channel;并且89/72平台上,rtc(比如第三方APK造成的唤醒)和其他一些中断也会走PMIC的EINT;因此要先把PMIC EINT过滤掉,不需要去关注这个channel上的唤醒(当然rtc唤醒的话还是要分析的,只不过并不是去分析EINT唤醒源了)。所幸PMIC的EINT channel id是固定的,不能修改,所以可以直接看channel id来过滤,各平台的PMIC EINT channel如下:
MT6577 9 (EINT_STA=0x400)
MT6589 3 (EINT_STA=3)
MT6572 16(EINT_STA=0x10000)
MT6582 25(EINT_STA=25)
【step3 -从cust_eint.h中找到触发EINT的模块】
CUST_EINT_XXX_NUM 对应的值就是XXX模块的EINT channel id。
如果在这个文件中没有找到造成唤醒的channel id的定义,说明可能没有用DCT Tool去配置EINT,而是直接写死在代码里,那就尝试搜索所有调用mt65xx_eint_registration的代码,看有没有注册这个channel id的。
上一篇:[FAQ07421] 待机时,怎么看AP每次wake up起来的时长
下一篇:[FAQ09542] [Power]待机电流问题,如何查找wakelock
- Android之开发环境搭建
- Android自定义View的实现...
- AndroidManifest.xml配置文件...
- Android相对布局+圆角按钮+Sha...
- 查看Android应用包名package和...
- linux dhcp peizhi roc
- 关于Unix文件的软链接
- 求教这个命令什么意思,我是新...
- sed -e "/grep/d" 是什么意思...
- 谁能够帮我解决LINUX 2.6 10...
- [FAQ09541] [Power]待机电流问题,如何查找EINT唤醒源
- [FAQ09541] [Power]待机电流问题,如何查找EINT唤醒源
- 待机电流问题,如何查找EINT唤醒源
- [FAQ09542] [Power]待机电流问题,如何查找wakelock
- [Power]待机电流问题,如何查找wakelock
- [Power]待机电流问题,如何查找wakelock
- [FAQ09542] [Power]待机电流问题,如何查找wakelock
- [Power]待机电流问题,如何查找wakelock
- [Power]待机电流问题,如何查找wakelock
- GMS应用引起待机电流偏高问题
- C8500安装GPS补丁包后待机唤醒问题
- 基底电流和待机电流是什么含义?
- STM32之待机唤醒
- STM32 待机唤醒
- 11、待机唤醒实验
- Android待机唤醒机制
- STM32-待机唤醒实验
- 待机唤醒(亮屏灭屏)
- [FAQ03776] [Power]关于RTC唤醒系统问题
- [FAQ04546] [power]休眠的过程中被CCIF_MD唤醒的状况分析
- [FAQ03519] [Power]关于待机平均功耗高的测试以及自行判断注意事项
- 对操作系统的思考
- [FAQ07421] 待机时,怎么看AP每次wake up起来的时长
- [FAQ09541] [Power]待机电流问题,如何查找EINT唤醒源
- [FAQ09542] [Power]待机电流问题,如何查找wakelock
- [FAQ08317] android apk 的root 权限和USB adb 权限的区别
- [FAQ03042] 如何编译MTK的模拟器
- 小组级git服务器搭建
- Git使用参考
- [C++11]_[初级]_[weak_ptr的使用场景]
- 支付宝在线qq客服
- raft协议的go语言实现