软件问题,问题分析思路
去问身边的人,去自己思考猜测,去找人来支持,去想办法复现问题。
dump有分很多种,比如像linux的core dump
比如像modem里面的XXdump
比如还有像tz...各种dump
dump不可怕,可怕的是要去分析它~~~~~ 233333
这几天需要配合工厂去分析一些设备,为什么会开不了机啊,为什么会经常进9006端口之类的。所以要恶补这方面的知识
主要的dump调试,首先要先编译一个boot.img
这个boot.img能够让设备进入dump之后不会自动重启而是停留在9006端口(注意:正常出货设备是不能把这个功能开启的)
具体代码······ 忘记了,但只要修改一个全局变量把0改成1就可以
== 然后设备只要进dump后就不会自己开机了,把进dump的设备连接电脑,并且打开QPST工具。
QPST会抓取dump数据到一个PORT_COM文件夹内,再把dump抓全后,拔掉USB。
===
然后:这个涉及到工程了,在把编译终端软件的时候要记得把对应的vmlinux 还有modem的 elf文件进行备份
elf文件是结合T32工具跟dump信息来查看modem端的f3日志的,
vmlinux是用来还原kmsg日志的
modem端的f3日志查看
具体做法就是打开t32工具,t32工具在modem代码common下面,然后在modem_proc里找到用 find -name "*.cmm" 找到对应的f3恢复脚本,当然这个还需要服务器那边配置好t32的环境(要安装perl python)
cd /modem_proc/core/services/diag/f3_trace/cmm/
do recover_f3.cmm
日志会输出!查询hw_prd_id = 0X0
找到对应的rfc_prd_id
然后!找/modem_proc/rfc_jolokia/rf_card/rfc_wtr4905_chile_srlte_v2_rfmd_5m/common/src/rfc_wtr4905_chile_srlte_v2_frmd_5m_cmn_ag.cpp
这里会有射频相关的器件相关 再把这些名称通知硬件换零件就可以了
linux端dump的查看方法
找高通拿一个rumdump的脚本,主要是用python写的,按它里面的readme看就可以了
像分析问题时,经常会有无从下手都感觉。这个时候就是展现经验的时候啦,当
然分析问题要多几个人来会比较好,这样就会得出多个分析思路,最后可以设计出一个比较省力都实验方案。
还有一个很重要都就是问人啦,可以给高通提case 问相关问题,如果是二次开发都话还可以给方案商提问题寻找解决方案。