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

这篇具有很好参考价值的文章主要介绍了imx8的源码开发方式非yocto方式(二)——基于imx8的uboot源码移植经验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图1 选择uboot版本

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图2 拷贝、解压uboot源码到工作目录

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图3 拷贝、解压uboot源码到工作目录

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

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图4 拷贝并重命名设备树源文件

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

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图5 拷贝并重命名设备树文件

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图6 修改imx8mm-lsl-evk.dts文件

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

imx8 uboot,linux,运维,服务器,c语言,arm开发

 imx8 uboot,linux,运维,服务器,c语言,arm开发

imx8 uboot,linux,运维,服务器,c语言,arm开发
图7 imx8mm_evk.h文件修改ENV环境变量

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图8 gpio复位phy芯片

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图9 拷贝并重命名配置文件

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

imx8 uboot,linux,运维,服务器,c语言,arm开发

 imx8 uboot,linux,运维,服务器,c语言,arm开发

 imx8 uboot,linux,运维,服务器,c语言,arm开发

imx8 uboot,linux,运维,服务器,c语言,arm开发
图10 修改uboot配置文件

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图11 新建编译脚本

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图12 编译脚本添加可执行权限,并运行脚本

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

imx8 uboot,linux,运维,服务器,c语言,arm开发
图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工具文章来源地址https://www.toymoban.com/news/detail-781888.html

到了这里,关于imx8的源码开发方式非yocto方式(二)——基于imx8的uboot源码移植经验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • IMX8mp alsa音频调试

    1、硬件环境: soc: im8mp bt: cypress CYW43455, 并通过M2接口连接到imx8mp开发板。 2、硬件连接: 3、综述: BT通过M2接口连接到IMX8mp开发板,M2接口中包含了PCM总线、UART、BT_EN引脚。 通话音频播放,BT使用imx8mp默认PCM接口,所以默认情况下无需额外配置,imx8会自动识别并加载音频设备

    2023年04月09日
    浏览(21)
  • 【IMX6ULL驱动开发学习】10.设置uboot使用网络加载zImage和dtb

    首先根据这篇博客,保证自己的开发板与Ubuntu主机处于同一个网段,并且可以ping通 【IMX6ULL驱动开发学习】03.设置IMX6ULL开发板与虚拟机在同一网段 1. 在uboot中设置网络 首先启动自己的板子进入Linux系统,使用 ifconfig 命令或者 ifconfig -a 命令查看自己网卡的地址 我的网卡地址是

    2024年02月11日
    浏览(43)
  • 【IMX6ULL驱动开发学习】10.设置uboot,通过tftp服务器加载内核与设备树,通过nfs挂载根文件系统

    首先根据这篇博客,保证自己的开发板与Ubuntu主机处于同一个网段,并且可以ping通 【IMX6ULL驱动开发学习】03.设置IMX6ULL开发板与虚拟机在同一网段 1. 在uboot中设置网络 首先启动自己的板子进入Linux系统,使用 ifconfig 命令或者 ifconfig -a 命令查看自己网卡的地址 我的网卡地址是

    2024年02月05日
    浏览(32)
  • IMX6ULL采用YOCTO构建嵌入式Linux系统

    切换至工程项目文件夹,如:/home/user/Linux/Yocto/fsl-release-yocto,在该文件夹下使用如下命令: 在本地环境变量中指定repo服务器地址,可以使用清华的镜像源进行更新,即将如下内容复制到你的~/.bashrc里: 切换至Yocto工作路径/home/user/Linux/Yocto/fsl-release-yocto,然后使用如下repo命

    2024年02月02日
    浏览(33)
  • 嵌入式linux之iMX6ULL驱动开发 | 移远4G模块EC800驱动移植指南

    回顾下移远4G模块移植过程, 还是蛮简单的。一通百通,无论是其他4G模块都是一样的。这里记录下过程,分享给有需要的人。环境使用正点原子的imax6ul开发板,板子默认支持中兴和移远EC20的驱动,这里要移植使用的是移远4G模块EC800。 imax6ul开发板 虚拟机(Ubuntu18.04) 交叉编译

    2024年02月12日
    浏览(43)
  • 系统移植,GNU命令,Uboot移植

     1、addr2line         把程序地址转换为文件名和行号      做·调试         2、ar         建立,修改,提取归档文件 3、Id:GNU arm-none-linux-gnueabi-ld start.o main.o -Tmap.lds -o uart.elf 链接器 4、as 主要用来编译GNU编译器gcc输出的汇编文件,产生的目标文件由链接器Id链接

    2024年01月25日
    浏览(29)
  • SquareLine Studio开发经验(二)创建工程并移植到Keil

    打开SquareLine Studio,点击Creat,选择Simulator,右下角根据显示屏分辨率以及Bit数,填写好参数,点击右下角CREAT,创建工程。  在Screen中添加一个Label控件,编辑Label的字体颜色以及字体大小,此处字体大小选择40( 注意字体大选如果不是默认值,程序中需要相应的修改 )  在Screen中

    2024年02月01日
    浏览(32)
  • Linux驱动之系统移植----uboot移植(有设备树版本),完整移植.

    uboot版本:uboot2020.04 开发板:100ask_imx6ull_pro 拿到官方uboot后第一步先编译烧写测试, 查看哪些驱动可用, 哪些不可用. 根据开发板厂商提供的资料: 使用mx6ull_14x14_evk_defconfig配置进行修改 编译完成后将uboot设备树以及uboot.imx烧写到开发板中运行 显然网络不通, phy无法找到, 其次LCD需

    2024年01月25日
    浏览(25)
  • uboot移植网络驱动配置

    开发设备imx6ull miniV2.2版本 在上一章节中我们已经讲解过UBOOT开发移植与LCD分辨率修改,这节我们讲解网络驱动配置,前提是需要电脑与虚拟机互通,我将单独在写一片三端互通的文章。 那么修改网络驱动我们需要先修改网口地址,打开原理图可以看到mini只有一个网口为ENE

    2023年04月17日
    浏览(58)
  • IMX6ULL---Buildroot构建uboot kernel rootfs

    目录 1. Buildroot 简介 2. 获取 buildroot 源码  3. 编译环境配置 4. 通过buildroot编译imx6ull

    2024年02月03日
    浏览(22)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包