关于9530/9630 R-UIM模式电信行货与水货比对测试的思考

来源:互联网 发布:ui设计网络课程 编辑:程序博客网 时间:2024/05/14 21:54
   R-UIM模式工作正常,就是俗称的cdma直接插卡。我们知道,水货不能直接插cdma卡,自从电信行货发布后,比对它与水货在R-UIM模式上的差异,可以帮助我们弄清问题的方向,从而找到准确的解决方法。
  前面有帖从提示插入UIM卡还是插入SIM卡的角度作了比对,但这只是个界面显示问题,实际上R-UIM是否工作取决于底层的sfi文件和及其配置数据。所以有必要作一个更准确的比对测试,那么要从哪些方面来比对才可以真正找到问题的答案呢?RUIM模式是否实际工作,可以从三个层次来判断。
    第一层是能否正确读出ICCID,这一层主要是受制于卡的工作电压、频率、时钟开启模式是否和高通的芯片兼容。这一层主要取决于卡,它可以帮助我们找到一张兼容的卡,除此之外并无用处。
    第二层是能否正确读出卡中的IMSI并以此替换机身的IMSI数据。在手编数据里,我们可以查看结果。如果行货手机刷了官方下载的sprint ROM也可以卡中IMSI替换机身IMSI,证明ROM并没有在这一层设置障碍,而是完全依赖配置数据来控制。在测试中可以分两步骤来刷机,第一步在安装了行货ROM的行货机上用cfp -u load xxxx.sfi 刷机,其中xxxx.sfi为sprint ROM中的相应文件。接着检验IMSI是否被卡中的数据替换。第二步再用javaloader或其他工具刷入sprint ROM的全部cod文件。然后再次检验IMSI是否被卡中的数据替换。这样就可以准确地排除或者证明ROM在这一层设置了障碍,如果设置了障碍,可以确定是在sfi部分还是cod部分。
    第三层是能否向卡正确发出TIA-95B 鉴权命令。如果拨出电话时0x88命令DIGITS位是被叫号末6位就是正确的。这个测试必须要监听手机和uim卡之间的通讯,没有条件的可以通过在鉴权未关闭的地区拨出电话来判断,能拨出电话就是正确的。测试时,不能只拨几个电话,应以30秒以上的间隔连续拨出电话,因为有的地区容错设置比较宽裕,允许拨出一个或几个鉴权失败的电话。 与第二层一样,通过在行货上二步刷入sprint ROM并拨出电话,可以确定R-UIM模式下的鉴权命令是由配置数据来控制,还是有sfi或是cod来控制。
    如果测试结果是由配置数据来控制,那么就需要改写配置数据。常见的配置数据有高通的NV数据和黑莓的VSM文件。如果得到行货的VSM文件,可以用vsmtools分析内容,如果发现类似FLAG_RUIM之类的ID,或者可疑的未知ID,很可能就是由它来单独控制。9530改写配置数据比较容易。9630目前都没有公开的软件工具可以倒出或者写入配置数据。但是也不是完全没有办法,至少有两种办法可以将行货的配置数据导入水货。一种是将行货的flash芯片取下,copy一个替换水货的flash芯片。另一种是用jtag在线读出行货的flash再写入水货的flash。如果能准确定位出配置开关的位置,用jtag直接改写将会更加简单。jtag针脚定义可以由高通的datasheet给出,也可以由熟练维修人员通过测量给出。
原创粉丝点击