高通平台dump简介以及抓取方式

一、Dump log 介绍

在研发阶段,我们经常会遇到一些死机重启的问题,或者机器发生冻屏等,需要dump log来分析具体原因。dump log可以看成是发生异常是,DDR的快照。在机器发生异常时,会warm reset,保证DDR不断电,主动进dump,抓取dump log的过程就是把内存中内容拷贝到本地的过程。

二、什么样的机器可以进dump


1. 如何判断机器是否熔丝
命令:adb shell cat proc/fuse_state
返回结果:0x100表示没有熔丝,0x130表示已熔丝
2. 导入debugpolicy image
如何制作debugpolicy iamge,后面介绍方法。
3. 判断Download mode状态
项目前期默认是enable的,项目后期会disable download mode,如果是disable 状态,机器不会进dump,而会直接重启
命令:cat sys/module/msm_poweroff/parameters/download_mode
返回结果:1是enable,0是disable
4. enable download mode
需要root权限,可以enable download mode,注意!!重启后会失效,需要重新 enable download mode。
命令:adb root
adb shell echo 1 > /sys/module/msm_poweroff/parameters/download_mode

三、制作debugpolicy iamge

3.1. 读取手机里面的serial_number

cat /proc/serial_num

3.2. 使用203服务器生成apdp.mbn

1) ubuntu虚拟机中使用ssh登录203服务器

命令:ssh jenkins@172.16.16.203
服务器:172.16.16.203
用户名:jenkins
密码:lcjk123456
2) cd ~/bqs_signM516/ALL_LIN_172.16.16.203_

3) Python securebootsigner/Qualcomm/tools/debugpolicy.py -p nicobar -s 0xacf92240 -o ../wfj/ -n
参数说明:
-p 指向平台
-s 是serail number, 小米项目增加了/proc/serial_num节点
-o 输出目录, 此目录必须预先存在
-n 不用手机产生debugpolicy, 如果不加这个参数需要连接手机,会对手机做些操作。
【注】J6项目 使用:Python securebootsigner/Qualcomm/tools/debugpolicy.py -p j6a1 -e dbgp -s serial_number -o 存放路径 -n

3.3. 从203服务器取回mbn到本地

scp apdp.mbn 个人虚拟机用户名@个人虚拟机ip地址:个人虚拟机存放mbn目录

四、烧录apdp.mbn

fastboot flash apdp apdp.mbn
如果有问题还需要烧录antirbpass
fastboot flash antirbpass dummy.img(此固件在fastboot刷机包里获得)

五、触发dump

adb shell “echo 1 > /sys/module/msm_poweroff/parameters/download_mode”
adb shell “echo c > proc/sysrq-trigger” 手动出发,或者关闭ssr子系统crash 后会自动触发。
setprop persist.sys.ssr.restart_level ALL_DISABLE

六、 机器进900E端口时如何抓取dump

进dump,一般dump端口为900E,有时候端口来不及切,也会显示正常开机的端口。
目前我们抓取dump是使用高通的QPST工具,具体操作如下:
1. 机器进dump时,黑屏无反应,插USB有900E端口或正常的开机端口

  1. 使用高通QPST抓取dump

  2. 抓取完成后,机器会自动重启,在QPST菜单栏->Help->Open log file Directory
    可以打开保存log的路径:C:ProgramDataQualcommQPSTSahara,Sahara文件夹下,Port_COMXXX就是保存的对应的dump log

七、判断dump是否完整

正常的一份dump大小,应该是略大于DDR大小,例如4GB DDR抓取出来的dump, DDRCS0_0.BIN,DDRCS0_1.BIN两个dump bin应该都是2GB,一共为4GB
dump中dump_info.txt文件也会显示是否抓取信息,如果没有报错信息,代表抓取成功。

剑气纵横三万里

“为什么要努力?” “想去的地方很远,想要的东西很贵,喜欢的人很优秀,父母的白发,朋友的约定,周围人的嘲笑,以及,天生傲骨。”

留下你的评论

*评论支持代码高亮<pre class="prettyprint linenums">代码</pre>

相关推荐

暂无内容!