MTK 3G mode配置_mtk_tb_wifi_3g_mode-程序员宅基地

技术标签: mtk  移动开发  

1.modem定制过程

(1)编译环境和工具

         一般来讲modem源码是由MTK提供,拿到源码后,射频工程师会修改2G3G射频参数,然后由驱动工程师将射频参数合入,然后再ubuntu下通过GCC工具编译modem,编译完成后再将生成的modemmk文件中进行配置即可。

(2)Modem的编译过程(MT6589以后的平台的编译,以A977 4.4 WCDMA配置为例)

         a.拿到MTKmodem源码,将射频2G3G的射频参数文件发给射频工程师根据实际情况进行修改。

         射频文件位于modem源码的custom/modem目录下,l1_rf2G的射频文件目录,ul1_rfWCDMA 3G 射频文件目录,有时候l1_rf目录下会有多个目录,具体本项目中2G配置的是哪一个要看make/HUAQIN82_TB_B2D_KK_HSPA.mak文件中配置情况。

         例如A977 4.4  WCDMA项目中,在HUAQIN82_TB_B2D_KK_HSPA.mak文件中可以搜索到MT6166_2G_82_TB_CUSTOM(2G)CUSTOM_MT6166_UMTS_FDD_TB(3G),即说明该项目中2G3G分别用的就是MT6166_2G_82_TB_CUSTOMCUSTOM_MT6166_UMTS_FDD_TB。将MT6166_2G_82_TB_CUSTOM目录的l1d_custom_rf.h文件和CUSTOM_MT6166_UMTS_FDD_TB目录中的ul1d_custom_rf.h文件按照射频工程师给的参数进行修改。

         b.将射频工程师修改的2G3G射频参数同步MTK给的源码中。

         通过bcompare将相应的射频文件同步到MTK源码里。

         c.Ubuntu下编译更新射频参数的modem

         首先将GCC工具拷贝到MTK modem源码的tools目录中,然后打开命令行进入到tools的上级目录,然后执行如下编译命令:

        ./make.sh "HUAQIN82_TB_B2D_KK_HSPA.mak" new(其中引号中的部分是make目录一个文件的名字)

         大概1分钟左右就可以编译完毕,编译完成后会在tools的同级中新生成一个build目录。新建一个文件夹a977_kk_hspa_0318(文件夹的命令方式参考某个具体项目的mediatek/custom/common/modem目录的文件夹名称),将build/HUAQIN82_TB_B2D_KK_HSPA/DEFAULT/bin目录的HUAQIN82_TB_B2D_KK_HSPA.makHUAQIN82_TB_B2D_KK_HSPA_PCB01_MT6582_S00.A3300GV_V34.bin、HUAQIN82_TB_B2D_KK_HSPA_PCB01_MT6582_S00.elf三个文件拷贝到a977_kk_hspa_0318目录中,并将此三个文件分别命名为modem_1_wg_n.makmodem_1_wg_n.img、HUAQIN82_TB_B2D_KK_HSPA_PCB01_MT6582_S00_1_wg_n.elf

   

         build/HUAQIN82_TB_B2D_KK_HSPA/DEFAULT/tst/database目录下的BPLGUInfoCustomAppSrcP_MT6582_S00_A3300GV_V34catcher_filter.binDbgInfo_WR8.W1315.MD.WG.MP_HUAQIN82_TB_B2D_KK_HSPA_A3300GV_V34_2014_03_20_14_58三个文件拷贝到a977_kk_hspa_0318目录中,同时将名字分别改为BPLGUInfoCustomAppSrcP_MT6582_S00_A3300GV_V34_1_wg_ncatcher_filter_1_wg_n.binDbgInfo_WR8.W1315.MD.WG.MP_HUAQIN82_TB_B2D_KK_HSPA_A3300GV_V34_2014_03_20_14_58_1_wg_n    

       备注:上述文件的后缀名是根据项目的编译配置表决定的,A977项目的编译配置表为“ReleaseNote_for_MT6582_KK1.MP1_TB.xlsx”,其中规定WCDMA项目的modem文件后缀为"_1_wg_n"TD-SCDMA项目modem文件后缀为“_1_tg_n”

         d.在项目中配置新编译的modem

         将刚才新建的文件夹a977_kk_hspa_0318拷贝到具体项目的mediatek/custom/common/modem目录下,同时将ProjectConfig.mk文件中的 CUSTOM_MODEM配置为a977_kk_hspa_0318。对整个项目重新new,编译完成后下载版本验证通话、上网功能,然后让射频工程师用机器做相关测试验证,如果没问题,modem配置便宣告完成。

2.编译去掉SIM卡通话和短信功能的modem

     modem源码的在make/custom_config/HUAQIN82_TB_B2D_KK_HSPA_EXT.makmake/HUAQIN82_TB_B2D_KK_HSPA.mak中添加CUSTOM_OPTION = __DISABLE_SMS__ __DISABLE_CSCALL__,然后按照第1点进行编译即可。

       上述是去掉SIM卡通话和短信功能需要在modem端进行的配置,此外还需要在AP端进行如下修改:

   1mediatek\config\project_name\android.hardware.telephony.gsm.xml

         去掉android.hardware.telephony.gsm.xml文件中的如下两项:

       
       

   2mediatek\config\project_name\ProjectConfig.mk

         ProjectConfig.mk文件中添加如下配置:

         CUSTOM_MODEM = a977_kk_hspa_data_0616    # disable cs call and disable sms

         RESOURCE_OVERLAY_SUPPORT = generic navbar tablet generic_3GDATAONLY
         MTK_VT3G324M_SUPPORT=no
         GEMINI=no
         MTK_GEMINI_SMART_3G_SWITCH=0
         MTK_GEMINI_ENHANCEMENT=no
         MTK_GEMINI_3G_SWITCH=no
         MTK_SHARE_MODEM_CURRENT=1   
         MTK_TTY_SUPPORT = no
         MTK_TB_APP_CALL_FORCE_SPEAKER_ON=no
         MTK_FD_SUPPORT = no
         MTK_FD_FORCE_REL_SUPPORT = no
         MTK_TB_WIFI_3G_MODE = 3GDATA_ONLY

3.编译只去掉SIM卡通话功能的modem

         modem源码的在make/custom_config/HUAQIN82_TB_B2D_KK_HSPA_EXT.makmake/HUAQIN82_TB_B2D_KK_HSPA.mak中添加CUSTOM_OPTION =  __DISABLE_CSCALL__,然后按照第1点进行编译即可。

         上述是只去掉SIM卡通话功能需要在modem端进行的配置,此外还需要在AP端进行如下修改:

      1mediatek\config\project_name\android.hardware.telephony.gsm.xml

       去掉android.hardware.telephony.gsm.xml文件中的如下两项:

       
       

      2mediatek\config\project_name\ProjectConfig.mk

       ProjectConfig.mk文件中添加如下配置:

       CUSTOM_MODEM = a977_kk_hspa_data_sms_0714    # disable cs call 

       RESOURCE_OVERLAY_SUPPORT = generic navbar tablet generic_3GDATASMS
       MTK_VT3G324M_SUPPORT=no
       GEMINI=no
       MTK_GEMINI_SMART_3G_SWITCH=0
       MTK_GEMINI_ENHANCEMENT=no
       MTK_GEMINI_3G_SWITCH=no
       MTK_SHARE_MODEM_CURRENT=1    
       MTK_TTY_SUPPORT = no
       MTK_TB_APP_CALL_FORCE_SPEAKER_ON=no
       MTK_FD_SUPPORT = no
       MTK_FD_FORCE_REL_SUPPORT = no
       MTK_TB_WIFI_3G_MODE = 3GDATA_SMS

4.如何默认打开短信中的小区广播

         操作步骤:"Messages" - Press the "Menu key" from the bottom of the phone ,From the options, choose "Settings",Select 'Cell broadcast'. 

         修改modem端代码,在nvram_cust_pack.c文件中,COMMON_NVRAM_EF_SMSAL_COMMON_PARAM_DEFAULT的第8byte就是小区广播的开关。1表示打开,0表示关闭。进入修改后,按照第1点进行编译即可。

5.如何配置不支持SIM卡热插拔

         A977项目(MT8382平台)不支持SIM卡热插拔,因此在modem端和AP均需要进行设置,去掉SIM插拔功能。

         modem端需要将make/custom_config/HUAQIN82_TB_B2D_KK_GPRS_EXT.makemake/custom_config/HUAQIN82_TB_B2D_KK_HSPA_EXT.mak文件中的SIM_HOT_SWAP = SIM_SLOT_1改为SIM_HOT_SWAP = NONE,然后重新编译、更新mdoem

        AP端需要将ProjectConfig.mk文件中将宏MTK_SIM_HOT_SWAP置为no

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u010783226/article/details/73863340

智能推荐

[Ptrace]Linux内存替换(六)动态链接库函数替换_使用ptrace向已运行进程中注入.so并执行相关函数-程序员宅基地

文章浏览阅读3.6k次。本文在 Linux内存替换(四)代码注入 的基础上,介绍了代码注入替换运行程序加载的动态链接库中指定函数的方法。 网上的一种思路是利用在被注入程序中申请空间存放待注入代码,然后通过修改GOT表函数地址指针实现函数替换;本文介绍的方法利用预先构造好的函数Shellcode直接覆盖动态链接库中指定函数代码实现函数替换。_使用ptrace向已运行进程中注入.so并执行相关函数

升级Xcode10 报错redefinition of module 'CommonCrypto'_xcode commoncrypto-程序员宅基地

文章浏览阅读2.7k次。升级Xcode10 报错redefinition of module ‘CommonCrypto’选中CommonCrypto关联的第三方库的target–Build Settings–Packaging–Module Map File,清空当中的内容即可._xcode commoncrypto

物化视图手动刷新报错:ORA--12008:实物化视图的刷新路径中存在错误,ORA-01706:用户函数的结果值过大_ora-12008-程序员宅基地

文章浏览阅读5.9k次。物化视图手动刷新报错:ORA–12008:实物化视图的刷新路径中存在错误,ORA-01706:用户函数的结果值过大执行语句:BEGINDBMS_MVIEW.REFRESH (list => ‘XXX_MATERIALIZED_VIEW’,Method =>‘C’,refresh_after_errors => True);END;就报上面的错误,排查问题思路,我..._ora-12008

Linux:systemctl控制软件的启动和关闭_systemctl enable 开机启动关闭-程序员宅基地

文章浏览阅读923次。systemctl start | stop | status | enable |disable 服务名。1、systemctl命令:控制Linux系统上软件的启动、关闭、开启开机自启动和关闭开机自启动。_systemctl enable 开机启动关闭

OOM when allocating tensor with shape[300,14,14,256] and type float on /job:localhost/replica:0/tas_when allocating tensor with shape[300,1088,34,34] -程序员宅基地

文章浏览阅读2.6k次。训练mask-R-cnn模型,训练时将model.train(dataset_train, dataset_val,learning_rate=config.LEARNING_RATE,epochs=40,layers='heads')中的layers=‘heads’修改成layers='4+',结果报错OOM when allocating tensor with shape[300,25..._when allocating tensor with shape[300,1088,34,34] and type float on /job:loc

iOS UI自动化测试详解_ios/macos 自动化测试基础框架 xcuitest-程序员宅基地

文章浏览阅读1.9k次。如果一个控件的Accessibility是可以被访问的,你就可以设置和读取它的值,作相关的操作,而当一个控件的Accessibility不可见时,你就没有办法通过automation访问它。再看value,是一个json,定义的刚好是这个Eelemet和它的值,这些就是自动化统一接口的格式,一个简单命令的定义。而由于UI界面本身多变的特性,脚本的维护会比接口的自动化测试成本高很多,所以最终目标是在3.0的基础上,在Client端加上屏幕录制技术,类似于Xcode的录制操作生成代码的功能。_ios/macos 自动化测试基础框架 xcuitest

随便推点

java 好和不好的形容词 英语怎么说_java必会的英语单词-程序员宅基地

文章浏览阅读77次。第一章:public['pʌblik] 公共的,公用的static['stætik] 静的;静态的;静止的void:[vɔid] 空的main:[mein] 主要的 重要的class:[klɑ:s] 类system:['sistəm] 系统 方法out:[aut] 出现 出外print:[print ] 打印eclipse:[i'klips] java编程软件第二章:string:[striŋ] ...

【CCF会议期刊推荐】CCF推荐国际学术期刊/会议(软件工程/系统软件/程序设计语言)_ccf international conference on availability, reli-程序员宅基地

文章浏览阅读2.5k次,点赞3次,收藏12次。CCF全称是China Computer Federation,中文意为:中国计算机学会,前身是中国电子学会计算机专业委员会,成立于1962年。CCF每年会发布一系列高水平期刊目录,从而指导科研工作者选择投稿期刊。值得注意的是,CCF推荐的期刊并非全部是SCI索引收录期刊,因此在投稿的过程中还需要仔细甄别。并且CCF推荐的期刊也并非都拥有很高的分区和影响因子。因此,在投稿的时候还需要自己仔细甄别选择。然而,CCF推荐期刊纵使没有较高的分区和影响因子,其学术水平也一定是较高的。_ccf international conference on availability, reliability and security

mysql mgr集群多主部署-程序员宅基地

文章浏览阅读519次,点赞8次,收藏10次。mysql mgr集群多主部署_mysql mgr

c#winform控件datagridview实现分页效果_c# winform datagridview 分页-程序员宅基地

文章浏览阅读4.9k次,点赞5次,收藏28次。主要实现页面跳转、动态改变每页显示行数、返回首末页、上下页功能,效果图如下:主代码如下:namespace Paging{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } priva..._c# winform datagridview 分页

Python cv2.imread读取图像path正确返回None_cv2.imread(img_path,-1)-程序员宅基地

文章浏览阅读1w次,点赞5次,收藏9次。cv2.imread必须是英文路径!!!!中文路径下:cv_img=cv2.imdecode(np.fromfile(filePath,dtype=np.uint8),-1)_cv2.imread(img_path,-1)

Hibernate 第一个Hibernate应用程序_第一个hibernate程序-程序员宅基地

文章浏览阅读2.8k次。Chapter 1. Tutorial 第一章 使用说明书Table of Contents 目录1.1. Part 1 - The first Hibernate Application 第一节 第一个Hibernate应用程序1.1.1. Setup 设置开发环境1.1.2. The first class 创建第一个类1.1.3. T_第一个hibernate程序

推荐文章

热门文章

相关标签