基于ARM开发平台的uboot镜像编译与烧写

在基于arm的开发平台下,系统启动需要内核,BootLoader,根文件系统三大块,今天博主记录给ARM开发平台编译并烧写Uboot的步骤

​ PS:在本次过程开始前,务必安装对应版本的arm-linux-gcc交叉编译器~

获取Uboot源码

如若不是自己设计的开发板,一般厂家会提供配套的开发源码,可以针对SOC进行配置,这里博主用的是X6818开发平台,已经获取到厂商源码。

对Uboot进行编译

1.把对应的源码包解压到本地文件夹并进入

tar vxf u-boot-2014.07_v3_mipi.tar.bz2
cd u-boot-2014.07

2.还原到出厂状态

使用如下命令进行还原,防止源码在到手前有人对其进行过不需要的改动。

make distclean

在这里插入图片描述

3.选定开发平台版本

使用make *_config(*代表开发平台版本,不同厂商平台名字可能会略有不同),博主的是x6818平台,所以应该是:

make x6818_config

出现如下提示则说明选定成功
在这里插入图片描述

4.开始编译

在对源码进行完必要的改动后,在源码根目录使用make命令,对源码进行编译。
在这里插入图片描述
在出现Generate destination file:ubootpak.bin字样时,则编译完成,可以再源码根目录中找到名为ubootpak.bin的uboot镜像文件。
在这里插入图片描述

Uboot镜像的烧写

启动开发板时按任意键进入BootLoader,输入fast或者fastboot进入fastboot模式,并用OTG线连接电脑与开发板。
在这里插入图片描述
使用platform-tools的fastboot工具对uboot镜像进行烧写

fastboot flash ubootpak ./ubootpak.bin


这样就是烧写完成,可以重启啦~

注意:要是烧写出现错误,uboot损坏咋办

这里博主在烧写uboot的时候用错了镜像,导致uboot损坏,后使用SD卡引导的方式使开发板又恢复了过来。
在桌面端linux中插入sd卡,然后cd到uboot源码根目录下,然后在镜像编译完成的情况下使用

sudo dd if=ubootpak.bin of=/dev/sdc bs=512 seek=1 conv=sync

把镜像释放到SD卡上。
PS:这里的/dev/sdc是博主的SD卡位置,在此操作时务必确认自己的SD卡位置,一般sda为主硬盘,sdb为第一个插入的外置存储设备,sdc为第三个,以此类推。
然后把SD卡插入开发板上SD0的位置,再次重启使用SD卡引导启动,若成功引导Uboot,则使用fastboot重新刷写uboot镜像即可。

至此,基于ARM开发平台的uboot镜像编译和烧写完成。
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值