修改嵌入式linux控制台串口的方法

平台配置:讯为MX6Q TOPEET,linux 3.0.35,uboot

将控制台由默认的UART1(ttymxc0)改为UART4(ttymxc3)

主要是修改boot

1. ./board/freescale/mx6q_topeet/ mx6q_topeet.c修改引脚初始化,增加UART4的初始化

static void setup_uart(void)
{
#if defined CONFIG_MX6Q
    /* UART1 TXD */
    mxc_iomux_v3_setup_pad(MX6Q_PAD_CSI0_DAT10__UART1_TXD);

    /* UART1 RXD */
    mxc_iomux_v3_setup_pad(MX6Q_PAD_CSI0_DAT11__UART1_RXD);

    /* UART1 TXD */
    mxc_iomux_v3_setup_pad(MX6Q_PAD_CSI0_DAT12__UART4_TXD);

    /* UART1 RXD */
    mxc_iomux_v3_setup_pad(MX6Q_PAD_CSI0_DAT13__UART4_RXD);

2. ./include/configs/mx6q_topeet.h_2G修改bootloader控制台对应串口,共三处

由于通过脚本编译时会自动调用覆盖mx6q_topeet.h,所以修改该文件

#define CONFIG_MXC_UART
//#define CONFIG_UART_BASE_ADDR   UART1_BASE_ADDR
#define CONFIG_UART_BASE_ADDR   UART4_BASE_ADDR
/* allow to overwrite serial and ethaddr */
#define CONFIG_ENV_OVERWRITE
//#define CONFIG_CONS_INDEX        1
#define CONFIG_CONS_INDEX        4
#define CONFIG_BAUDRATE            115200
//console=ttymxc0改为3
#define    CONFIG_EXTRA_ENV_SETTINGS                    \
        "netdev=eth0\0"                        \
        "ethprime=FEC0\0"                    \
        "uboot=u-boot.bin\0"            \
        "kernel=uImage\0"                \
        "nfsroot=/opt/eldk/arm\0"                \
        "bootargs_base=setenv bootargs console=ttymxc3,115200\0"\

3. ./include/configs/mx6q_topeet.h_2G这个是向后续linux系统中传的参数。修改linux控制台串口

这个在很多文章中没有提,可能是由于讯为启动方式的缘故,找了好久才发现

//console=ttymxc0改为3
else if(1 == boot_system_flags)//QT
            {
                    sprintf(bootargs, "console=ttymxc3,115200 %s root=/dev/mmcblk0p1 rootwait", displayArgs);
                    setenv("bootargs", bootargs);

以上步骤仅为个人调试过程的总结,欢迎批评指正。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值