MTK的MT6582平台如何进u-boot && 修改波特率为115200

南棱笑笑生 2015-05-12 09:46:00
问2个底层的问题。
1、
任何 平台都应该是 在上电 刚刚启动的时候(在串口 按 回车键) 进入u-boot
(一般情况下是3秒倒计时,不按回车键就自己启动了!)

比如freescale的i.MX51/iMX6Q平台
Amlogic的M802
全志的A31S

现在用MTK的MT6582平台,想在 上电 刚刚启动的时候(在串口工具 按 回车键) 进入u-boot。
请问如何设置?谢谢!




2、(已经解决)
MT6582平台被设置成460800波特率了,PC机器上的物理串口最大只支持到115200,请问如何修改?



...全文
1065 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
南棱笑笑生 2015-05-20
  • 打赏
  • 举报
回复
引用 3 楼 tianweishuiguo 的回复:
系统启动的时候,应该有检测是否有按键的功能,你找到那个位置,监听回车键吧
兄弟,我当然知道有这个东西,但是就是没有找到呀!
南棱笑笑生 2015-05-18
  • 打赏
  • 举报
回复
13、打开串口打印 1、 M:\mediatek\custom\d800\preloader\cust_bldr.mak 打开UART1 #CFG_UART_LOG :=UART2 #CFG_UART_META :=UART2 CFG_UART_LOG :=UART1 CFG_UART_META :=UART1 2、 M:\mediatek\platform\mt6582\preloader\src\drivers\platform.c void platform_pre_init(void) { …… #define MT_SP_POWER_PIN (GPIO115 | 0x80000000) mt_set_gpio_mode(MT_SP_POWER_PIN, GPIO_MODE_GPIO); mt_set_gpio_dir(MT_SP_POWER_PIN, GPIO_DIR_OUT); mt_set_gpio_out(MT_SP_POWER_PIN, GPIO_OUT_ONE); /* init uart baudrate when pll on */ mtk_uart_init(UART_SRC_CLK_FRQ, CFG_LOG_BAUDRATE); …… } 3、 m:\mediatek\platform\mt6582\lk\platform.c //#define PMIC_WRAP_PORTING //only for lk early porting void platform_early_init(void) { …… #define MT_SP_POWER_PIN (GPIO115 | 0x80000000) mt_set_gpio_mode(MT_SP_POWER_PIN, GPIO_MODE_GPIO); mt_set_gpio_dir(MT_SP_POWER_PIN, GPIO_DIR_OUT); mt_set_gpio_out(MT_SP_POWER_PIN, GPIO_OUT_ONE); /* initialize the uart */ uart_init_early(); …… } 14、修改串口log的波特率(将UART1从460800修改到115200) 因为PC机器上的真实物理串口的最高波特率只能够到115200,使用460800必须使用USB转串口。在window/ubuntu下很容易让电脑蓝屏/死机/重启。(每天2-3次) [FAQ04654]如何修改UART输出数据的波特率 有以下3个地方分别控制不同的部分的波特率 1. 设置 preloader 波特率,这里不会设置到uboot和kernel 文件为mediatek/custom/proj/preloader/inc/cus_bldr.h #define CFG_LOG_BAUDRATE (115200) 2. 修改uboot 波特率 mediatek/custom/proj/uboot/inc/configs/ubconfigs.h #define CFG_LOG_BAUDRATE (115200) 3. 修改kernel 波特率 mediatek/config/mt6575/autoconfig/kconfig/platform CONFIG_CMDLINE="console=ttyMt3, 115200" 如何修改UART输出数据的波特率 有以下3个地方分别控制不同的部分的波特率 1. 设置 preloader 波特率,这里不会设置到uboot和kernel 文件为mediatek/custom/proj/preloader/inc/cus_bldr.h #define CFG_LOG_BAUDRATE (115200) M:\mediatek\custom\d800\preloader\cust_bldr.mak M:\mediatek\custom\d800\preloader\inc\cust_bldr.h // #define CFG_LOG_BAUDRATE (921600) #define CFG_LOG_BAUDRATE (115200) 2. 修改uboot 波特率 mediatek/custom/proj/uboot/inc/configs/ubconfigs.h #define CFG_LOG_BAUDRATE (115200) M:\mediatek\platform\mt6582\lk\uart.c // #define CONFIG_BAUDRATE 460800 // 921600 //460800 //115200 //9600 #define CONFIG_BAUDRATE 115200 3. 修改kernel 波特率 mediatek/config/mt6575/autoconfig/kconfig/platform CONFIG_CMDLINE="console=ttyMt3, 115200" M:\mediatek\config\d800\autoconfig\kconfig\project CONFIG_CMDLINE="console=tty0 console=ttyMT3,460800n1 root=/dev/ram vmalloc=496M slub_max_order=0 slub_debug=O " CONFIG_CMDLINE="console=tty0 console=ttyMT3,115200n1 root=/dev/ram vmalloc=496M slub_max_order=0 slub_debug=O " 串口log为: cmdline: console=tty0 console=ttyMT0,921600n1 root=/dev/ram lcm=1-nt51018_1024x600_dsi_vdo_kingdisplay fps=7276 bootprof.pl_t=1955 bootprof.lk_t=2087 printk.disable_uart=0 boot_reason=0 检查编译之后文件会变成: CONFIG_CMDLINE="console=tty0 console=ttyMT3,115200n1 root=/dev/ram vmalloc=496M slub_max_order=0 slub_debug=O " CONFIG_CMDLINE="console=tty0 console=ttyMT3,460800n1 root=/dev/ram vmalloc=496M slub_max_order=0 slub_debug=O "(!!!!注释掉之后重新生成bootimage即可!) 后来想,mt6582下也有配置成460800的,以前d800和mt6582下都有的话,就设置成460800,如果只改d800,mt6582的就会覆盖掉这个配置文件。这里也要改! M:\mediatek\config\mt6582\autoconfig\kconfig\project #CONFIG_CMDLINE="console=tty0 console=ttyMT3,921600n1 root=/dev/ram vmalloc=496M slub_max_order=0 slub_debug=O " CONFIG_CMDLINE="console=tty0 console=ttyMT3,460800n1 root=/dev/ram vmalloc=496M slub_max_order=0 slub_debug=O " 无关项目(修改波特率无用): M:\mediatek\config\out\d800\autoconfig\project 参考资料: http://www.cfanz.cn/index.php?c=article&a=read&id=210688 MTK Android Driver知识大全 [FAQ04266][uart] 怎样切换 uart log 端口 [FAQ03929][UART]如何配置UART1/UART4为Log输出端口? 15、常用linux指令 find . -name env* grep -R "delay" .
东大坡居士 2015-05-18
  • 打赏
  • 举报
回复
系统启动的时候,应该有检测是否有按键的功能,你找到那个位置,监听回车键吧
南棱笑笑生 2015-05-15
  • 打赏
  • 举报
回复
13、打开串口打印 1、 M:\mediatek\custom\d800\preloader\cust_bldr.mak 打开UART1 #CFG_UART_LOG :=UART2 #CFG_UART_META :=UART2 CFG_UART_LOG :=UART1 CFG_UART_META :=UART1 2、 M:\mediatek\platform\mt6582\preloader\src\drivers\platform.c void platform_pre_init(void) { …… #define MT_SP_POWER_PIN (GPIO115 | 0x80000000) mt_set_gpio_mode(MT_SP_POWER_PIN, GPIO_MODE_GPIO); mt_set_gpio_dir(MT_SP_POWER_PIN, GPIO_DIR_OUT); mt_set_gpio_out(MT_SP_POWER_PIN, GPIO_OUT_ONE); /* init uart baudrate when pll on */ mtk_uart_init(UART_SRC_CLK_FRQ, CFG_LOG_BAUDRATE); …… } 3、 m:\mediatek\platform\mt6582\lk\platform.c //#define PMIC_WRAP_PORTING //only for lk early porting void platform_early_init(void) { …… #define MT_SP_POWER_PIN (GPIO115 | 0x80000000) mt_set_gpio_mode(MT_SP_POWER_PIN, GPIO_MODE_GPIO); mt_set_gpio_dir(MT_SP_POWER_PIN, GPIO_DIR_OUT); mt_set_gpio_out(MT_SP_POWER_PIN, GPIO_OUT_ONE); /* initialize the uart */ uart_init_early(); …… } 14、修改串口log的波特率(将UART1从460800修改到115200) 因为PC机器上的真实物理串口的最高波特率只能够到115200,使用460800必须使用USB转串口。在window/ubuntu下很容易让电脑蓝屏/死机/重启。(每天2-3次) [FAQ04654]如何修改UART输出数据的波特率 有以下3个地方分别控制不同的部分的波特率 1. 设置 preloader 波特率,这里不会设置到uboot和kernel 文件为mediatek/custom/proj/preloader/inc/cus_bldr.h #define CFG_LOG_BAUDRATE (115200) 2. 修改uboot 波特率 mediatek/custom/proj/uboot/inc/configs/ubconfigs.h #define CFG_LOG_BAUDRATE (115200) 3. 修改kernel 波特率 mediatek/config/mt6575/autoconfig/kconfig/platform CONFIG_CMDLINE="console=ttyMt3, 115200" 如何修改UART输出数据的波特率 有以下3个地方分别控制不同的部分的波特率 1. 设置 preloader 波特率,这里不会设置到uboot和kernel 文件为mediatek/custom/proj/preloader/inc/cus_bldr.h #define CFG_LOG_BAUDRATE (115200) M:\mediatek\custom\d800\preloader\inc\cust_bldr.h // #define CFG_LOG_BAUDRATE (921600) #define CFG_LOG_BAUDRATE (115200) 2. 修改uboot 波特率 mediatek/custom/proj/uboot/inc/configs/ubconfigs.h #define CFG_LOG_BAUDRATE (115200) M:\mediatek\platform\mt6582\lk\uart.c // #define CONFIG_BAUDRATE 460800 // 921600 //460800 //115200 //9600 #define CONFIG_BAUDRATE 115200 3. 修改kernel 波特率 mediatek/config/mt6575/autoconfig/kconfig/platform CONFIG_CMDLINE="console=ttyMt3, 115200" M:\mediatek\config\d800\autoconfig\kconfig\project CONFIG_CMDLINE="console=tty0 console=ttyMT3,460800n1 root=/dev/ram vmalloc=496M slub_max_order=0 slub_debug=O " CONFIG_CMDLINE="console=tty0 console=ttyMT3,115200n1 root=/dev/ram vmalloc=496M slub_max_order=0 slub_debug=O " 已经编译过的项目这里也需要修改: M:\mediatek\config\out\d800\autoconfig\project 无关项目(修改波特率无用): M:\mediatek\config\mt6582\autoconfig\kconfig\project M:\mediatek\custom\d800\preloader\cust_bldr.mak 参考资料: http://www.cfanz.cn/index.php?c=article&a=read&id=210688 MTK Android Driver知识大全 [FAQ04266][uart] 怎样切换 uart log 端口 [FAQ03929][UART]如何配置UART1/UART4为Log输出端口?

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧