微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > MT6620打开失败串口出错信息

MT6620打开失败串口出错信息

时间:10-02 整理:3721RD 点击:
MT6620打开失败串口出错信息


[DESCRIPTION]
根据设计原理图对MT6620/MT6628在Codegen.dws中进行配置,使其能正常工作。
[SOLUTION]
1.GPIO_COMBO_PMU_EN_PIN
下图为GPIO187作为GPIO_COMBO_PMU_EN_PIN时的配置,当使用其它GPIO PIN时参考此配置。
2.GPIO_COMBO_6620_LDO_EN_PIN
下图为GPIO183作为GPIO_COMBO_6620_LDO_EN_PIN时的配置,当使用其它GPIO PIN时参考此配置。
若设计原理图没有使用LDO _EN_PIN,则无需配置此PIN。
3.GPIO_COMBO_RST_PIN
下图为GPIO59作为GPIO_COMBO_RST_PIN时的配置,当使用其它GPIO PIN时参考此配置。
4.GPIO_GPS_LNA_PIN
下图为GPIO185作为GPIO_GPS_LNA_PIN时的配置,当使用其它GPIO PIN时参考此配置。
若设计原理图没有使用GPS_LAN_PIN,则无需配置此PIN。
5.GPIO_GPS_SYNC_PIN
下图为GPIO206作为GPIO_GPS_SYNC_PIN时的配置,当使用其它GPIO PIN时参考此配置。
6.GPIO_COMBO_BGF_EINT_PIN
下图为GPIO13(EINT14)作为GPIO_COMBO_BGF_EINT_PIN时的配置,当使用其它GPIO PIN时参考此配置。

7.GPIO_WIFI_EINT_PIN
下图为GPIO15(EINT18)作为GPIO_WIFI_EINT_PIN时的配置,当使用其它GPIO PIN时参考此配置。

8.UART PIN
GB/GB2/ICS/ICS2软件配置VarNmae1为GPIO_UART_UTXD3_PIN和GPIO_UART_URXD3_PIN:
下图为GPIO71(UTXD3)作为GPIO_UART_UTXD3_PIN和GPIO79(URXD3)作为GPIO_UART_URXD3_PIN时的配置,
当使用其它GPIO PIN作为UART时参考此配置。

JB/JB2软件配置VarNmae1为GPIO_COMBO_UTXD_PIN和GPIO_COMBO_URXD_PIN:
下图为GPIO71(UTXD3)作为GPIO_COMBO_UTXD_PIN和GPIO79(URXD3)作为GPIO_COMBO_URXD_PIN时的配置,
当使用其它GPIO PIN作为UART时参考此配置。
9.BT PCM PIN
下图为GPIO62~GPIO65仅作为BT PCM PIN时的配置,当使用其它GPIO PIN时参考此配置。
JB  MT6589+MT6628 FM I2S/BT PCM共用PIN的配置请参考12.FM I2S/BT PCM Share PIN.
10.WIFI SDIO PIN
下图为GPIO89~GPIO94作为WIFI SDIO PIN时的配置,当使用其它GPIO PIN时参考此配置。
注意Def.Mode需要配置为MSDC相关Mode, ICS/ICS2/JB软件无需配置VarName1.
11.FM I2S PIN
下图为GPIO56~GPIO58仅作为FM I2S PIN时的配置,当使用其它GPIO PIN时参考此配置。若设计原理图没有使用FM I2S PIN,则无需配置此PIN。
注意GPIO I2S相关Mode都要钩选,如图中M1,M4都有钩选。
JB  MT6589+MT6628 FM I2S/BT PCM共用PIN的配置请参考12.FM I2S/BT PCM Share PIN。
12.FM I2S/BT PCM Share PIN
JB  MT6589+MT6628 FM I2S/BT PCM共用PIN,如下图为GPIO221~GPIO224作为FM I2S/BT PCM共用 PIN时的配置,当使用其它GPIO PIN时参考此配置。若设计原理图没有使用FM I2S PIN,则无需配置VarName2。
注意GPIO I2S/PCM相关Mode都要钩选,如图中M0,M1,M3,M4都有钩选。

[DESCRIPTION]
在此文档中会描述下面问题:
MT6628/MT6620无法开启需要检查哪些配置。

注: 请勿直接复制本文档的内容到工程中,防止有些字符从WORD文档中直接复制过去会无法识别,请直接对照文档描述修改工程配置即可。
[SOLUTION]
MT6628/MT6620无法开启需要检查下面的配置是否正确。就算拿到的原始release包是MT6628的,也需要参考下面的描述修改配置,否则还是可能会导致MT6628无法开启。
此部分涉及多个配置文件的修改,且ICS/ICS2 ,GB2,JB版本上修改是有差别的,请按照工程的版本参考下面不同的章节。
1  ICS/ICS2版本配置
适用版本: ALPS.ICS.MP 以及 ALPS.ICS2.MP
1.1  ICS/ICS2  MT6628配置:
Alps/mediatek/config/[Project]/ProjectConfig.mk 文件中需要完成下面的更改,请仔细检查工程中下面每一个宏的定义:
CUSTOM_HAL_COMBO = mt6628
CUSTOM_HAL_FMRADIO = mt6628
CUSTOM_HAL_ANT = mt6628_ant_m1
CUSTOM_KERNEL_FM = mt6628
MTK_BT_CHIP = MTK_MT6628
MTK_FM_CHIP = MT6628_FM
MTK_WLAN_CHIP = MT6628
MTK_COMBO_CHIP = MT6628
MTK_COMBO_QUICK_SLEEP_SUPPORT = yes
MTK_COMBO_CORE_DUMP_SUPPORT = yes
MTK_GPS_CHIP = MTK_GPS_MT6628
MTK_BT_FM_OVER_BT_VIA_CONTROLLER = no

Alps/mediatek/config/[Project]/autoconfig/kconfig/project 文件中需要完成下面的更改:
CONFIG_MTK_COMBO_FM=m
改为:
#  CONFIG_MTK_COMBO_FM is not set  
请留意字符”#"之后要保留空格

#  CONFIG_MTK_MT6628_FM is not set
改为
CONFIG_MTK_MT6628_FM =m



Alps/mediatek/config/[Project]/init.project.rc 文件中请完成下面的更改:
insmod /system/lib/modules/mt6620_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko
改为:
insmod /system/lib/modules/mtk_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko

service  6620_launcher 请修改为下面的格式,要求每个参数都保持跟下面一样:
service  6620_launcher  /system/bin/6620_launcher  -m   1  -b  4000000  -p  /system/etc/firmware/   -d    /dev/ttyMT2
class  core
user  system
group  system

service  stp_dump  /system/bin/stp_dump3
class  main
user  system
group  system net_admin



alps/mediatek/config/[Project]/meta_init.rc
alps/mediatek/custom/[Project]/factory/init.rc  两个文件中完成下面的更改:
insmod /system/lib/modules/mt6620_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko
改为:
insmod /system/lib/modules/mtk_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko

service  6620_launcher 请修改为下面的格式,要求每个参数都保持跟下面一样,请留意此处跟init.project.rc里面的修改有差异,勿直接复制里面的修改:
service  6620_launcher  /system/bin/6620_launcher  -m   1  -b  4000000  -p  /system/etc/firmware/   -d    /dev/ttyMT2
user  root
group  root

service  stp_dump  /system/bin/stp_dump3
user  root
group  root



1.2  ICS/ICS2  MT6620配置:
Alps/mediatek/config/[Project]/ProjectConfig.mk 文件中需要完成下面的更改,请仔细检查工程中下面每一个宏的定义:
CUSTOM_HAL_COMBO = mt6620
CUSTOM_HAL_FMRADIO = mt6620
CUSTOM_HAL_ANT = mt6620_ant_m3
CUSTOM_KERNEL_FM = mt6620
MTK_BT_CHIP = MTK_MT6620
MTK_FM_CHIP = MT6620_FM
MTK_WLAN_CHIP = MT6620
MTK_COMBO_CHIP = MT6620E3
MTK_COMBO_QUICK_SLEEP_SUPPORT = no
MTK_COMBO_CORE_DUMP_SUPPORT = no
MTK_GPS_CHIP = MTK_GPS_MT6620
MTK_BT_FM_OVER_BT_VIA_CONTROLLER = yes


Alps/mediatek/config/[Project]/autoconfig/kconfig/project 文件中需要完成下面的更改:
#  CONFIG_MTK_COMBO_FM is not set
改为:
CONFIG_MTK_COMBO_FM=m  

CONFIG_MTK_MT6628_FM =m
改为
#  CONFIG_MTK_MT6628_FM is not set
请留意字符”#”之后需要保留空格


Alps/mediatek/config/[Project]/init.project.rc 文件中请完成下面的更改:
insmod /system/lib/modules/mtk_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko
改为:
insmod /system/lib/modules/mt6620_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko

service  6620_launcher 请修改为下面的格式,要求每个参数都保持跟下面一样:
service  6620_launcher  /system/bin/6620_launcher  4000000  /system/etc/firmware/mt6620_patch_hdr.bin
class  core
user  system
group  system

下面的service  stp_dump去掉:
service  stp_dump  /system/bin/stp_dump3
class  main
user  system
group  system net_admin


alps/mediatek/config/[Project]/meta_init.rc
alps/mediatek/custom/[Project]/factory/init.rc  两个文件中完成下面的更改:
insmod /system/lib/modules/mtk_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko
改为:
insmod /system/lib/modules/mt6620_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko

service  6620_launcher 请修改为下面的格式,要求每个参数都保持跟下面一样,请留意此处跟init.project.rc里面的修改有差异,勿直接复制里面的修改:
service  6620_launcher /system/bin/6620_launcher 4000000 /system/etc/firmware/mt6620_patch_hdr.bin
user  root
group  root

下面的service  stp_dump去掉:
service  stp_dump  /system/bin/stp_dump3
class  main
user  system
group  system net_admin


2  GB2版本配置
适用版本: ALPS.GB2.MP
2.1  GB2  MT6628配置:
Alps/mediatek/config/[Project]/ProjectConfig.mk文件中 确保MTK_COMBO_QUICK_SLEEP_SUPPORT 和 MTK_COMBO_CORE_DUMP_SUPPORT 两个宏定义在AUTO_ADD_GLOBAL_DEFINE_BY_NAME 段之内,如果没有请将这两个宏添加到AUTO_ADD_GLOBAL_DEFINE_BY_NAME 段。

Alps/mediatek/config/[Project]/ProjectConfig.mk 文件中需要完成下面的更改,请仔细检查工程中下面每一个宏的定义:
CUSTOM_HAL_COMBO = mt6628
CUSTOM_HAL_FMRADIO = mt6628
CUSTOM_HAL_ANT = mt6628_ant_m1
CUSTOM_KERNEL_FM = mt6628
MTK_BT_CHIP = MTK_MT6628
MTK_FM_CHIP = MT6628_FM
MTK_WLAN_CHIP = MT6628
MTK_COMBO_CHIP = MT6628
MTK_COMBO_QUICK_SLEEP_SUPPORT = yes
MTK_COMBO_CORE_DUMP_SUPPORT = yes
MTK_GPS_CHIP = MTK_GPS_MT6628
MTK_BT_FM_OVER_BT_VIA_CONTROLLER = no


Alps/mediatek/config/[Project]/autoconfig/kconfig/project 文件中需要完成下面的更改:
CONFIG_MTK_COMBO_FM=m
改为:
#  CONFIG_MTK_COMBO_FM is not set  
请留意字符”#"之后要保留空格

#  CONFIG_MTK_MT6628_FM is not set
改为
CONFIG_MTK_MT6628_FM =m


Alps/mediatek/config/[Project]/init.rc 文件中请完成下面的更改:
insmod /system/lib/modules/mt6620_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko
改为:
insmod /system/lib/modules/mtk_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko

ttyMT2 和stpwmt的权限设置请修改为跟下面的参一模一样:
chmod 0660 /dev/ttyMT2
chown system system /dev/ttyMT2

chmod 0660 /dev/stpwmt
chown system system /dev/stpwmt

去掉下面这一行:
insmod /system/lib/modules/mtk_stp_core.ko

将下面三行的顺序做调整到如下格式:
insmod /system/lib/modules/mtk_hif_sdio.ko
insmod /system/lib/modules/mtk_stp_wmt.ko
insmod /system/lib/modules/mtk_stp_uart.ko



service  6620_launcher 请修改为下面的格式,要求每个参数都保持跟下面一样:
service  6620_launcher  /system/bin/6620_launcher  -m   1  -b  4000000  -p  /system/etc/firmware/   -d    /dev/ttyMT2
user  system
group  system

service  stp_dump  /system/bin/stp_dump3
user  system
group  system net_admin


alps/mediatek/config/[Project]/meta_init.rc
alps/mediatek/custom/[Project]/factory/init.rc  两个文件中完成下面的更改:
insmod /system/lib/modules/mt6620_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko
改为:
insmod /system/lib/modules/mtk_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko

去掉下面这一行:
insmod /system/lib/modules/mtk_stp_core.ko

将下面三行的顺序做调整到如下格式:
insmod /system/lib/modules/mtk_hif_sdio.ko
insmod /system/lib/modules/mtk_stp_wmt.ko
insmod /system/lib/modules/mtk_stp_uart.ko

service  6620_launcher 请修改为下面的格式,要求每个参数都保持跟下面一样,请留意此处跟init. rc里面的修改有差异,勿直接复制里面的修改:
service  6620_launcher  /system/bin/6620_launcher  -m   1  -b  4000000  -p  /system/etc/firmware/   -d    /dev/ttyMT2
user  root
group  root

service  stp_dump  /system/bin/stp_dump3
user  root
group  root

2.2  GB2  MT6620配置:
Alps/mediatek/config/[Project]/ProjectConfig.mk 文件中需要完成下面的更改,请仔细检查工程中下面每一个宏的定义:
CUSTOM_HAL_COMBO = mt6620
CUSTOM_HAL_FMRADIO = mt6620
CUSTOM_HAL_ANT = mt6620_ant_m3
CUSTOM_KERNEL_FM = mt6620
MTK_BT_CHIP = MTK_MT6620
MTK_FM_CHIP = MT6620_FM
MTK_WLAN_CHIP = MT6620
MTK_COMBO_CHIP = MT6620E3
MTK_COMBO_QUICK_SLEEP_SUPPORT = no
MTK_COMBO_CORE_DUMP_SUPPORT = no
MTK_GPS_CHIP = MTK_GPS_MT6620
MTK_BT_FM_OVER_BT_VIA_CONTROLLER = yes


Alps/mediatek/config/[Project]/autoconfig/kconfig/project 文件中需要完成下面的更改:
# CONFIG_MTK_COMBO_FM is not set
改为:
CONFIG_MTK_COMBO_FM=m

CONFIG_MTK_MT6628_FM =m
改为
#  CONFIG_MTK_MT6628_FM is not set
请留意字符”#"之后要保留空格


Alps/mediatek/config/[Project]/init.rc 文件中请完成下面的更改:
insmod /system/lib/modules/mtk_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko
改为:
insmod /system/lib/modules/mt6620_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko

ttyMT2 和stpwmt的权限设置请修改为跟下面的参一模一样:
chmod 0660 /dev/ttyMT2
chown system system /dev/ttyMT2

chmod 0660 /dev/stpwmt
chown system system /dev/stpwmt


请确保有下面4行并且顺序完全一样:
insmod /system/lib/modules/mtk_stp_core.ko
insmod /system/lib/modules/mtk_hif_sdio.ko
insmod /system/lib/modules/mtk_stp_wmt.ko
insmod /system/lib/modules/mtk_stp_uart.ko

service  6620_launcher 请修改为下面的格式,要求每个参数都保持跟下面一样:
service  6620_launcher  /system/bin/6620_launcher 4000000   /system/etc/firmware/mt6620_patch_hdr.bin
user  system
group  system

去掉下面service stp_dump的内容:
service  stp_dump  /system/bin/stp_dump3
user  system
group  system net_admin


alps/mediatek/config/[Project]/meta_init.rc
alps/mediatek/custom/[Project]/factory/init.rc  两个文件中完成下面的更改:

insmod /system/lib/modules/mtk_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko
改为:
insmod /system/lib/modules/mt6620_fm_drv.ko
insmod /system/lib/modules/mtk_fm_priv.ko

确保有下面4行并且顺序如下:
insmod /system/lib/modules/mtk_stp_core.ko
insmod /system/lib/modules/mtk_hif_sdio.ko
insmod /system/lib/modules/mtk_stp_wmt.ko
insmod /system/lib/modules/mtk_stp_uart.ko


service  6620_launcher 请修改为下面的格式,要求每个参数都保持跟下面一样,请留意此处跟init.project.rc里面的修改有差异,勿直接复制里面的修改:
service  6620_launcher  /system/bin/6620_launcher 4000000  /system/etc/firmware/mt6620_patch_hdr.bin
user  root
group  root

去掉下面这部分:
service  stp_dump  /system/bin/stp_dump3
user  root
group  root

3 JB  版本配置:
适用版本: ALPS.JB
3.1  JB  MT6628配置
Alps/mediate/config/[Project]/Projectconfig.mk 文件中需要完成下面的更改,请仔细检查工程中下面每一个宏的定义:
CUSTOM_HAL_COMBO = mt6628
CUSTOM_HAL_FMRADIO = mt6628
CUSTOM_HAL_ANT = mt6628_ant_m1
CUSTOM_KERNEL_FM = mt6628
MTK_BT_CHIP = MTK_MT6628
MTK_FM_CHIP = MT6628_FM
MTK_WLAN_CHIP = MT6628
MTK_COMBO_CHIP = MT6628
MTK_COMBO_QUICK_SLEEP_SUPPORT = yes
MTK_COMBO_CORE_DUMP_SUPPORT = yes
MTK_GPS_CHIP = MTK_GPS_MT6628
MTK_BT_FM_OVER_BT_VIA_CONTROLLER = no

3.2  JB  MT6620配置
Alps/mediatek/config/[Project]/Projectconfig.mk 文件中需要完成下面的更改,请仔细检查工程中下面每一个宏的定义:
CUSTOM_HAL_COMBO = mt6620
CUSTOM_HAL_FMRADIO = mt6620
CUSTOM_HAL_ANT = mt6620_ant_m3
CUSTOM_KERNEL_FM = mt6620
MTK_BT_CHIP = MTK_MT6620
MTK_FM_CHIP = MT6620_FM
MTK_WLAN_CHIP = MT6620
MTK_COMBO_CHIP = MT6620E3
MTK_COMBO_QUICK_SLEEP_SUPPORT = no
MTK_COMBO_CORE_DUMP_SUPPORT = no
MTK_GPS_CHIP = MTK_GPS_MT6620
MTK_BT_FM_OVER_BT_VIA_CONTROLLER = yes

非常感谢!我有按1.2  ICS/ICS2  MT6620配置的试了一下,打开蓝牙没问题,打开wifi休眠几次后,wifi就能用了,不知道是什么问题,谢谢

重点怀疑 时钟是否有问题。

如果不打开蓝牙,WIFI是没办法使用,硬件检查也没问题,现在不知道从哪找问题,指导一下,谢谢!

外部晶体还是从射频哪边引过来的时钟?

我们用的是S500M,用的是外部晶体,时钟是S500M自己给的

用外部晶体,哪么你看看这个晶体是不是MTK认证的?
可以换晶体验证。

我们用的是TXC的7L26002009


开机MSDC3出错
    msdc3 -> XXX CMD<8><0x1aa> Error<-110> Resp<0x0> <- msdc_dump_trans_error() : L<3017> PID<kworker/u:1><0x1c>
msdc3 -> XXX CMD<55><0x0> Error<-110> Resp<0x0> <- msdc_dump_trans_error() : L<3017> PID<kworker/u:1><0x1c>
msdc3 -> XXX CMD<1><0x0> Error<-110> Resp<0x0> <- msdc_dump_trans_error() : L<3017> PID<kworker/u:1><0x1c >  
[    WMT-CORE][E]wmt_core_ctrl(539):WMT-CORE: wmt_core_ctrl failed: id(11), type(1), value(1) iRet:(-8)
     [WMT-FUNC][E]wmt_func_wifi_ctrl(546):WMT-FUNC: turn on WIFI function fail (-8)
休眠MSDC3出错:
msdc3 -> Card insert<1> <- msdc_ops_get_cd() : L<3413> PID<kworker/u:1><0x1c>
    msdc3 -> ================ <- msdc_set_mclk() : L<756> PID<kworker/u:1><0x1c>
    msdc3 -> ! Set<400KHz> Source<197000KHz> -> sclk<397KHz> DDR<0> mode<0> div<124> <- msdc_set_mclk() : L<758> PID<kworker/u:1><0x1c>
    msdc3 -> ================ <- msdc_set_mclk() : L<759> PID<kworker/u:1><0x1c>
    sdc3 -> XXX CMD<8><0x1aa> Error<-110> Resp<0x0> <- msdc_dump_trans_error() : L<3017> PID<kworker/u:1><0x1c>
    sdc3 -> select card<0x00010000> <- msdc_command_start() : L<1393> PID<kworker/u:1><0x1c>
    msdc3 -> SD latch data<0> cmd<0> <- msdc_ops_set_ios() : L<3318> PID<kworker/u:1><0x1c>
msdc3 -> ================ <- msdc_set_mclk() : L<756> PID<kworker/u:1><0x1c>
     msdc3 -> ! Set<50000KHz> Source<197000KHz> -> sclk<49250KHz> DDR<0> mode<0> div<1> <- msdc_set_mclk() : L<758> PID<kworker/u:1><0x1c>

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top