用户态空间
下面我们描述一下采用Linux系统和Android系统的用户都需要注意的地方:
驱动层移植完成后, MTK的Porting Guid会告诉你需要在用户态运行wmt_launcher工具,作为后台的一个服务程序运行,该服务会配置串口的工作参数,下载固件补丁到MT6620中,他的源代码相对比较简单,只有一个.c文件:
原始文件位于MTK发布包:
APEX_Android_4.4_MP_SW_package_V2.0/APEX_Android_4.4_MP_001_panda_combo_mt66xx_Package_Common/New/hardware/mediatek/wmt/stp_uart_launcher.c
修改后的文件位于iTOP4412 Android4.4发布包:
iTop4412_KK4.4/hardware/mediatek/wmt/stp_uart_launcher.c
修改点主要在串口参数配置上,由于内核版本不同,串口设置参数也略有不同.
具体修改可以使用代码比对工具进行比较。
另外需要说明的是运行wmt_launcher的运行参数 跟MTK给的移植文档有点不同,PortingGuid 里面推荐串口波特率使用921600, 而在iTOP4412的板子上面采用该值会工作不正常,导致固件补丁无法下载,开始怀疑板卡不支持该波特率,后使用串口测试工具专门针对这个串口进行921600测试,