MTK 驱动(72)---如何初步定位异常关机问题

如何初步定位异常关机问题

由于异常关机问题可能存在多种可能性(异常重启,异常关机,hang机,掉电),请务必厘清复现过程和手法,保留问题现场,以下信息请在提case的时候一起提供:
1、确认是亮屏关机还是灭屏关机?关机时是否有播放关机动画?
如果有播放关机动画可以检查关机流程的调用是否有异常。
 
2、是直接关机还是关机后会自动重启?
可以检查log中是否有走ShutdownThread或者reboot流程,是否有对应的exception或db产生。
 
3、异常关机时,连上uart线是否可以吐log?插上usb后是否能显示关机充电动画?
如果可以吐log,可以通过log判断是hang机还是关机充电;若能正常显示关机充电动画可以确认之前的行为是关机而不是hang机。
 
4、如果按Powerkey可以重新开机,请注意按powerkey的时长是多少?
如果是关机,按Powerkey 2~4s即可重新开机;如果是Hang机,按Powerkey要8s以上才会强制掉电重启。
 
5、检查log中的Battery电压等信息,判断是否为低电或者电压波动异常大?
 
6、检查log中的Thermal信息,是否有电池温度或者板温过60度的情况?
 
7、如果是电池本身的过流/过压保护,异常关机后按Powerkey不能重启,必须要拔插电池才能恢复。 
 
8、提供的log中请包括关机mobile log(最好能抓logcat和uart log),关机后再开机的mobile log(包括pl_lk log、kernel_log.boot、main_log.boot、last_kmsg、property、cmdline等信息),如果有exception信息请一并提供对应db文件。
 
9、如果以上方法都没看出任何异常,需要看PMIC记录的最后关机的原因。方法有2个,任选一个:
  1. 测试前接上USB和uart(保证可以看到preloader log),然后复现问题,复现后一定会在关机充电画面(异常掉电),测试看进入关机充电的preloader log,里面的PMIC reg log记录了上次关机原因。
  2. O及以后版本会把上一次的preloader log保存到expdb。在测试复现问题后(全程不能按power key),插上usb,此时进入关机充电,短按power key 3s,正常开机,然后
    执行如下命令:
    adb shell dd if=/dev/block/platform/bootdevice/by-name/expdb of=/sdcard/expdb
    adb pull /sdcard/expdb将导出的expdb,用NotePad++直接打开,看log
    preloader PMIC reg log如下(具体含义看datasheet):
[PMIC]TOP_RST_STATUS[0x152]=0x4F
[PMIC]PONSTS[0xC]=0x4
[PMIC]POFFSTS[0xE]=0x80
[PMIC]PGSTATUS0[0x14]=0xFFFE
[PMIC]PSOCSTATUS[0x16]=0x0
[PMIC]BUCK_OC_SDN_STATUS[0x1434]=0x0
[PMIC]BUCK_OC_SDN_EN[0x1444]=0x31F
[PMIC]THERMALSTATUS[0x18]=0x0
[PMIC]STRUP_CON4[0xA1C]=0x0
[PMIC]TOP_RST_MISC[0x14C]=0x200
[PMIC]TOP_CLK_TRIM[0x38E]=0x6EC0
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值