最近接触了几个MTK平台项目(mt6762s、mt6833、mtk6765、mt6762等),在调试modem 和RF工作过程中,经常需要先判断该平台的modem是否可用。
以mt6833为例:
如下为modem异常,报TX 有问题,说明RF 这块是有问题,需要检查RF 通路配置
[ 21.266002] <2>.(2)[224:ccci_fsm1][ccci1/fsm]exception 4, from fsm_main_thread
[ 21.266922] <2>.(2)[224:ccci_fsm1][ccci1/fsm]md_state change from 3 to 5
[ 21.268321] <2>-(2)[224:ccci_fsm1][ccci0/util][save_last_md_status] md_id = 0; event_type = 11
[ 22.689968] <7>.(7)[224:ccci_fsm1][ccci1/dpmaif]stop Tx failed, 0x400080f
[ 22.691275] <6>.(6)[224:ccci_fsm1][ccci1/mcd]MD exception HIF 0
[ 22.692587] <6>.(6)[224:ccci_fsm1][ccci1/cif]Dump AP CCIF IRQ status not support
[ 22.711331] <6>.(6)[224:ccci_fsm1][ccci1/mcd]MD exception HIF 2
[ 22.712085] <6>.(6)[224:ccci_fsm1][ccci1/mcd]MD exception HIF 3
[ 24.723332] <7>.(7)[224:ccci_fsm1][ccci1/cif]md_ccif_switch_ringbuf
[ 24.724125] <7>.(7)[224:ccci_fsm1][ccci1/cif]md_ccif_reset_queue
[ 24.724894] <7>.(7)[224:ccci_fsm1][ccci1/mcd]send clearq_ack to MD
[ 24.725671] <7>.(7)[224:ccci_fsm1][ccci1/mcd]MD exception HIF 5
配置完RF 通路后,重新抓取日志,查看modem的状态为true,说明modem可用
03-01 16:47:22.928 I/AT ( 1102): [0] AT> AT+ECSQ (RIL_CMD_READER_1 tid:488037444864)
03-01 16:47:22.928 D/GsmCdmaCallTracker( 1592): reset
03-01 16:47:22.928 D/GsmCdmaCallTracker( 1592): [0] update phone state, old=IDLE new=IDLE
03-01 16:47:22.929 I/AT ( 1102): [0] AT< +ECSQ: 0,0,0,0,0,0,0,0,0,0 (RIL_CMD_READER_1, tid:488038481152)
03-01 16:47:22.929 D/TDC ( 1592): getModemCount: 3
03-01 16:47:22.929 I/AT ( 1102): [0] AT< +ECSQ: 0,0,0,0,0,0,0,32768,0,0,0,0,0 (RIL_CMD_READER_1, tid:488038481152)
03-01 16:47:22.929 I/AT ( 1102): [0] AT< +ECSQ: 0,-512,1,1,1,1,1,256,1,1 (RIL_CMD_READER_1, tid:488038481152)
03-01 16:47:22.929 D/TDC ( 1592): getModem: 0
03-01 16:47:22.929 D/TDC ( 1592): getModemCount: 3
03-01 16:47:22.929 D/TDC ( 1592): getModem: 0
03-01 16:47:22.929 I/AT ( 1102): [0] AT< +ECSQ: 0,0,0,0,0,0,0,512,0,0 (RIL_CMD_READER_1, tid:488038481152)
03-01 16:47:22.929 I/AT ( 1102): [0] AT< OK (RIL_CMD_READER_1, tid:488038481152)
03-01 16:47:23.185 D/RILJ ( 1592): [0214]> GET_MODEM_STATUS [PHONE0]
03-01 16:47:23.185 D/RILJ ( 1592): [0214]< GET_MODEM_STATUS true [PHONE0]
更新modem流程:
1、客制化修改RF
路径:\mt6762s\modem_5G\mcu\custom\l1
2、modem的编译
modem_5G/mcu$./m "TANK(NLWCG_MP_6833).mak" new
3、modem的重命名
bin路径:
\modem_5G\mcu\build\TANK\NLWCG_MP_6833\bin
database路径:
\modem_5G\mcu\build\TANK\NLWCG_MP_6833\dhl\database
编译完modem后,需要对相关的bin和database文件进行重命名,添加后缀 _1_unlwctg_n,并且拷贝到AP侧
\android\vendor\mediatek\proprietary\modem\mt6833_sp_nlwcg_mp_vmoly0069_prod
示例:
4、AP更侧新modem
命令:
source build/envsetup.sh
lunch pro_name
make update-modem
5、生成modem镜像 md1img-verified.img