一、问题现象

当适配完最新5.0系统以后发现插入SIM卡后不识别SIM卡的情况,对比同样代码开发者手机却没有此问题

二、定位过程

从硬件工程师那了解到SIM识别过程是"触发插卡中断后就上电走检卡流程"。首先确定插卡中断是否正常,通过内核相关调试可以确定中断产生正常(中断电路见图1),按正常流程接下来对sim卡上电并走检卡流程,但是通过日志和抓取Modem日志查来看识卡相关打印均无有关信息输出,排除卡槽和SIM卡硬件问题以后怀疑是上电这块出现异常引起的,先从上电开始排查。

找硬件工程师了解到我们这个设备上有NFC器件,sim卡供电是通过NFC来的必须在NFC正常工作起来后供电才能正常(电路图见图二、图三)。硬件同事的话正好能解释了为什么同一套代码在开发者手机可以正常识卡而在我们设备上不行:开发者手机没有NFC器件sim卡供电不走NFC控制,并且内核里也没有我们设备使用器件的驱动代码,这套代码在手机运行OK识卡正常。在我们设备上由于无NFC驱动导致器件没有工作起来sim卡无法供电,造成不识卡。

三、解决办法

把对应器件驱动移植过来配置正确dts,NFC工作后sim卡供电正常,插入sim卡识别正常

 

                                                                                                                         图一

 

     图二

 

                                                                                                                          图三

Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐