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

文章详细描述了如何修改MX6Q_TOPEET平台的bootloader和Linux配置,将控制台从默认的UART1(ttymxc0)迁移到UART4(ttymxc3)。主要涉及修改board/freescale/mx6q_topeet/mx6q_topeet.c的引脚初始化,更新include/configs/mx6q_topeet.h中的定义,以及处理bootargs以适应新的串口设置。

平台配置:讯为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);

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

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值