【高通】记录一次识别SIM卡的问题

 问题背景:刷factory包首次开机,卡槽1和卡槽2都未插卡的情况下,但卡槽2显示在识卡状态,重启之后这个异常现象就消失了,也就是说只有刷包的第一次开机才会出现此问题

 

分析思路

一、

(1)第一步肯定要先从log中看

一开始以为是图标显示逻辑的问题,所以先从图标显示看起 

从这里可以看出,sim卡的simState和图标是对应的,所以图标显示完全正常,但是为什么刷包之后的第一次开机simState[1]是READY状态,还需要继续分析

(2)

 

 以上的log都是分成两份的,一份是首次开机,一份是重启之后,在这里我们可以看到,刷包之后的首次开机是识别不到卡槽2的,RILJ也没有上报关于卡槽2的相关信息,在这里就可以推测,估计是刷包之后的第一次开机被配置成为单卡模式了。

ps:这个安卓的版本有些老,所以和我们现在所使用的安卓有些不同,我们现在使用的安卓一般是检测到有多少张卡,就显示多少个图标,而这个老版本安卓是始终有两个图标显示在那里,而且初始状态是在程序中就已经赋值了的,为NOT_READY

二、测试单双卡两种模式

(1)设置成单卡模式

adb shell setprop persist.radio.multisim.config ssss

(2)设置成双卡模式

adb shell setprop persist.radio.multisim.config dsds

之前提到过,只有刷包的第一次开机才会出现这个问题,重启之后问题是消失了的,但是如果我设置成单卡模式,这个现象又出现了,而且从重新抓的log中也可以发现,和刷包之后的第一次开机是一样的现象,RILJ不上报卡槽2。

三、配置成双卡模式

到了这里,问题就很明显了,就是刷包之后的第一次开机被配置成单卡模式导致的,从QXDMlog中也可以发现刷包之后的第一次开机确实是ssss(单卡模式)

[ 63/ 0] MSG 03:20:37.843750 Android QCRIL/Low [ qcril_qmi_nas.c 17146] RIL[0][main] qcril_qmi_nas_dms_update_multisim_config_property: function entry
[ 63/ 1] MSG 03:20:37.843750 Android QCRIL/Medium [ qcril_qmi_nas.c 17149] RIL[0][main] qcril_qmi_nas_dms_update_multisim_config_property: Multisim prop val ssss

 最后在代码根目录全局搜索Multisim,因为可能和单双卡有关,就自然先去找device/qcom目录下的相关文件,所以最后锁定这个

device/qcom/common/rootdir/etc/init.class_main.sh

从文本中可以看出,原本的代码是这样的,只有dsds或dsda才能启动start ril-daemon2

修改后如下,无论怎样都能启动start ril-daemon2

问题成功解决,但这个不是最终的解决方案,我们还是需要去配置单双卡

四、配置单双卡

vendor/qcom/proprietary/qrdplus/Extension/config/default.prop

persist.radio.multisim.config=dsds

总结:

以后遇到SIM卡识别不到的问题时,都可以从单双卡模式不匹配的思路先去思考,跟着SIM卡识别的流程走一遍,看看modem侧是否有上报相关状态等

  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值