MTK问题精集 联系客服

发布时间 : 星期三 文章MTK问题精集更新完毕开始阅读e11bc43a376baf1ffc4faddc

2)可以通过 catcher 中 trace 信息的 Frame 查看两条 trace 的时间差,计算方式举例如下: Trace 1811950 46904 MOD_MMI TRACE_INFO Inside NetWorkSignalLevelIndication Trace 1814288 49242 MOD_MMI TRACE_GROUP_1 OslWriteCircularQ: <#[0], read:[59], write:[59]>

这两条 trace 的时间差就是: 4.615ms*(number of passed frames) 4.615*(1814288-1811950)ms 注: 1 ticks = 4.615ms [REFERENCE]

改善方法请参考Some method of MMI speed optimization.xls 和 modification of speed optimization.doc

10.2 发件箱或草稿箱可否按时间进行排序? [DESCRIPTION]

发件箱或草稿箱存在SIM 上的SMS 并没有按时间进行排序,是否可以实现,如何做? [SOLUTION]

ME 的 SMS 可以在 NVRAM 加一些 byte 放 timestamp。然而, SIM 的 format 是 SPEC 订的,所以, SIM 的 MO 是 没有办法排序的,这功能是无法支持

10.3 短信设置里面提示“不支持”。 [DESCRIPTION]

短信设置里面选择存储位置为“手机” 时会弹出不支持的提示框,另外在看内存状态的时候,也提示“不支持” [SOLUTION] 需检查确保

CM_SMS_MAX_MSG_NUM >= NVRAM_EF_SMSAL_SMS_TOTAL + SIM 支持 SMS 数目

12.4 非mmi task 中读NVRAM。 file_idx,

kal_uint16 record_index, kal_uint8 access_id, kal_uint16 rec_amount) {

nvram_read_req_struct *nvram_read_req;

kal_trace(TRACE_FUNC, FUNC_PHB_NVRAM_READ_RECORD);

nvram_read_req = (nvram_read_req_struct*) construct_local_para(sizeof(nvram_read_req_struct), TD_CTRL);

nvram_read_req->file_idx = (kal_uint8) file_idx; nvram_read_req->para = record_index; nvram_read_req->access_id = access_id; nvram_read_req->rec_amount = rec_amount;

phb_send_ilm(MOD_NVRAM, MSG_ID_NVRAM_READ_REQ, nvram_read_req, NULL); } 2)

void nvram_main(ilm_struct *ilm_ptr) {

ASSERT(ilm_ptr != NULL); …

else if (ilm_ptr->msg_id == MSG_ID_NVRAM_READ_REQ) {

nvram_read_handler(ilm_ptr); } … }

nvram_read_handler()以及其中call到的nvram_read_confirm()是通用的接口,没有对某一个LID单独列出来作处

理,但实际上通过nvram_send_ilm(dest_id, MSG_ID_NVRAM_READ_CNF, nvram_read_cnf, peer_buf_ptr);对所

有的LID读取动作返回MSG_ID_NVRAM_READ_CNF给src_mod,至于读取的是哪一个LID,即哪一支文件,是通过

消息所带的数据来表示的,像这样写: nvram_read_cnf->file_idx = nvram_read_req->file_idx; 3) 需要添加对NVRAM返回给src_mod的MSG_ID_NVRAM_READ_CNF的处理,像: ***_main(ilm_struct *ilm_ptr) {

if (ilm_ptr->msg_id == MSG_ID_NVRAM_READ_CNF) {

read_nv_handler(ilm_ptr); } }

MSG_ID_NVRAM_READ_CNF消息所带的peer_buf_ptr中包含了从NVRAM读取到的文件内容。可通过如下方式

得到NVRAM file中读回来的值, Void GetNVRAMValue(ilm_struct *ilm_ptr) {

kal_uint8 data[512] = {0}; kal_uint8 *pdu_ptr;

kal_uint16 pdu_length;

pdu_ptr = get_pdu_ptr(ilm_ptr->peer_buff_ptr, &pdu_length); ASSERT(pdu_ptr != NULL);

memcpy(data, (void *)pdu_ptr, pdu_length); }

21.1 在MMI 取得SIM 卡中数据的方法。

[DESCRIPTION] [SOLUTION]

发送READ SIM 的request 到L4,参考函数:SATSendReadSimFileReq 注册消息PRT_MMI_SMU_READ_SIM_RSP 的CallBack 函数,参考函数:SATSendReadSimFileRsp

在规范 GSM11.11 中定义的EF ID 映射到MTK code 中的enum 值,可查找sim_file_index_enum 例:

1、取得手机号码,指SIM 中存的MSISDN 号,ID 为 FILE_MSISDN_IDX。由于该项规范标明是可选项,所以 SIM 中有可能没有此信息

2、取得手机SIM 的ID 号,指SIM 中存的IMSI 号,ID 为 FILE_IMSI_IDX

21.2 无sim 卡,有时无法拨通112 的原因。