imx8的源码开发方式非yocto方式(二)——基于imx8的uboot源码移植经验

先从NXP官方的github源码库中下载各个版本的u-boot, uboot的下载地址为:GitHub - nxp-imx/uboot-imx: i.MX U-Boot

图1 选择uboot版本

1.本文下载最新的uboot版本(lf-5.15.71-2.2.0)的tar.gz的压缩包。

图2 拷贝、解压uboot源码到工作目录

2.拷贝uboot源码到ubuntu工作目录,并解压uboot压缩包,流程如下图所示:

图3 拷贝、解压uboot源码到工作目录

3.拷贝uboot目录下的arch/arm/dts目录下的imx8mm-evk.dtsi并重命名为imx8mm-lsl-evk.dtsi,如下图所示:

cp imx8mm-evk.dtsi imx8mm-lsl-evk.dtsi

图4 拷贝并重命名设备树源文件

4.拷贝uboot目录下的arch/arm/dts目录下的imx8mm-evk.dts并重命名为imx8mm-lsl-evk.dts,如下图所示:

cp imx8mm-evk.dts imx8mm-lsl-evk.dts

图5 拷贝并重命名设备树文件

5.修改拷贝的设备树文件imx8mm-lsl-evk.dts,如下所示:

图6 修改imx8mm-lsl-evk.dts文件

6.打开uboot目录include/configs子目录下的imx8mm_evk.h文件,进行uboot的ENV环境变量的修改,具体修改如下所述:

 

图7 imx8mm_evk.h文件修改ENV环境变量

7.修改uboot目录board/freescale/imx8mm_evk子目录的imx8mm_evk.c文件,添加网络phy芯片AR8031的硬件复位,如下图所示:

图8 gpio复位phy芯片

8.复制uboot目录configs子目录下的imx8mm_evk_defconfig并重命名为imx8mm_lsl_evk_defconfig,如下图所示:

图9 拷贝并重命名配置文件

9.修改imx8mm_lsl_evk_defconfig配置文件,修改完成保存并退出,如下所示:

 

 

图10 修改uboot配置文件

10.新建uboot编译shell脚本build_imx8mmini.sh,设置编译脚本内容,如下图:

图11 新建编译脚本

11.给编译脚本添加执行权限,并运行编译脚本。

图12 编译脚本添加可执行权限,并运行脚本

12.编译完成后,结果如下所示:

图13 uboot编译完成

13.编译完成后,uboot下的下表文件以备后续生成烧录镜像使用。

序号

文件名

文件路径(相对uboot根目录)

说明

1

u-boot-nodtb.bin

/

Uboot镜像

2

u-boot-spl.bin

spl

Uboot spl镜像

3

imx8mm-lsl-evk.dtb

arch/arm/dts

设备树镜像

4

mkimage

tools

Uboot下的mkimage工具

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少林and叔叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值