u-boot-2016.09移植(5)-uart

本文介绍了U-Boot 2016.09版本中串口移植的过程,包括配置GPIO、修改串口初始化代码、调整Makefile设置等步骤,并解决了编译和调试过程中遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为u-boot-2016.09的架构在向内核靠拢,所以串口不再和以前一样,可以直接使用的,这就加大了uboot移植的工作量,下面我们就来移植串口。

在上一节我们已经在board/samsung/tq210/lowlevel_init.S中添加了串口GPIO的配置

这里写图片描述

接下来看board_init_f中的串口初始化

这里写图片描述

查看serial_init,这个函数在drivers/serial/serial.c与drivers/serial/serial-uclass.c都有定义,我们就使用serial.c中的定义,查看Makefile

    u-boot-2016.09$ vim drivers/serial/Makefile

这里写图片描述

为了省事,我就直接将CONFIG_DM_SERIAL的选择去掉,直接使用serial.c,

编译,发现default_serial_console没有定义,搜索发现在serial_s3c24x0.c有定义,于是仿照serial_s3c24x0.c修改serial_s5p.c,需要修改太多,我就不再这里一一贴图出来了。

再次编译,发现可以产生u-boot.bin,烧录,开发板上电,打开串口调试助手,发现没有任何输出,使用点灯调试,最后发现是我在添加arch/arm/dts/s5pv210-tq210.dts时没有修改串口信息,所以一直使用的是serial2,而默认的是serial0,修改arch/arm/dts/s5pv210-tq210.dts,将其中serial地址全部修改为serial0的地址e2900000.

u-boot-2016.09$ vim arch/arm/dts/s5pv210-tq210.dts

这里写图片描述

再次编译,重新将产生u-boot.bin烧录到开发板,上电,发现串口调试助手有了信息输出,到这里串口就大功告成了。

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值