微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > 如何解决MCC-MNC为 001-01的SIM卡锁卡失败问题

如何解决MCC-MNC为 001-01的SIM卡锁卡失败问题

时间:10-02 整理:3721RD 点击:
[DESCRIPTION]
客户反馈在设置Test SIM判断条件为如下时,发现非Test SIM卡锁卡功能失效:
1.MCC-MNC = 001-01
2.EF_AD文件中的 ms_operation 的值为0x80/0x81/0x02/0x04
也就是必须都符合如上条件才判定为Test SIM。
而客户的SIM卡是MCC-MNC为001-01但EF_AD不符合上面条件,那么此时SIM卡会被识别为非test SIM。
对于锁卡功能失效的原因是:
正常逻辑下,我们在判定为test SIM卡时会直接pass掉锁卡检测。而由于这张SIM卡的MCC-MNC为00101时,在MOD_SMU中只要MCC-MNC为00101时我们就会认定为Test SIM,即使上报了+ETESTSIM:0也会在SMU中判定为Test SIM卡。
因此SIM ME LOCK检测时如果判断到为Test SIM卡,那么默认会直接pass掉锁卡检测,从而出现锁卡失败的现象。
[SOLUTION]
需要修订两个部分:
1. 修改test sim 都always reject.
custom_nvram_extra.c (mcu\custom\Modem\common\ps)
#define SML_TESTSIM_OP_MODE SML_TESTSIM_ALW_ALLOW
修改为:
#define SML_TESTSIM_OP_MODE SML_TESTSIM_ALW_REJECT
2. 添加sml_check中的判断逻辑
custom_nvram_extra.c(mcu\custom\modem\common\ps)
增加判断test sim,如果是test sim直接pass SML check。
#ifdef __GEMINI__
extern kal_bool is_test_sim(kal_uint8 simInterface);
#else
extern kal_bool is_test_sim(void);
#endif
在sml_check内最前面增加如下判断:
#ifdef __GEMINI__
if (is_test_sim(source)
#else
if (is_test_sim())
#endif
{
return KAL_TRUE;
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top