MfgTool系统烧写(imx6ull)
2025-02-27 来源:cnblogs
一、烧写原理
1、开发板连接电脑以后双击“mfgtool2-yocto-mx-evk-emmc.vbs”,打开下载对话框,连接正常后点击start:

2、烧写的内容:
uboot、Linux kernel、.dtb、rootfs
进入如下目录:L4.1.15_2.0.0-ga_mfg-tools/mfgtools-with-rootfs/mfgtools/Profiles/Linux/OS Firmware

重要文件:files、firmware、ucl2.xml
MfgTool 其实是先通过 USB OTG 先将 uboot、kernel 和.dtb(设备树)这是三个文件下载到开发板的 DDR 中,注意不需要下载 rootfs。就相当于直接在开发板的 DDR上启动 Linux 系统,等 Linux 系统启动以后再向 EMMC 中烧写完整的系统,包括 uboot、linuxkernel、.dtb(设备树)和 rootfs,因此 MfgTool 工作过程主要分两个阶段:
①、将 firmware 目录中的 uboot、linux kernel 和.dtb(设备树),然后通过 USB OTG 将这个文件下载到开发板的 DDR 中,目的就是在 DDR 中启动 Linux 系统,为后面的烧写做准备。
②、经过第①步的操作,此时 Linux 系统已经运行起来了,系统运行起来以后就可以很方便的完成对 EMMC 的格式化、分区等操作。EMMC 分区建立好以后就可以从 files 中读取要烧写的 uboot、linux kernel、.dtb(设备树)和 rootfs 这 4 个文件,然后将其烧写到 EMMC 中,这个就是 MfgTool 的大概工作流程。
a、firmware文件夹

如果要烧写我们的系统,就需要用我们编译出来的 zImage、u-boot.imx 和 imx6ull-alientek-emmc.dtb 这三个文件替换掉,同时文件名字改为表中的名字。
b、file文件夹
将上表 中的这三个文件下载到开发板的 DDR 上以后烧写的第一阶段就完成了,第二阶段就是从 files 目录中读取整个系统文件,并将其烧写到 EMMC 中。
file文件夹中需要4个文件
如果要烧写我们自己编译出来的系统,就需要用我们编译出来的 zImage、u-boot.imx 和imx6ull-alientek-emmc.dtb 和 rootfs 这四个文件替换掉表 中这四个文件。
c、ucl2.xml文件
files 和 firmware 目录下有众多的 uboot 和设备树,那么烧写的时候究竟选择哪一个呢?这个工作就是由 ucl2.xml 文件来完成的。
二、烧写NXP官方系统
烧写步骤:
①、连接好 USB,拨码开关拨到 USB 下载模式。
②、弹出 TF 卡,然后按下开发板复位按键。
③、打开 SecureCRT。
④、双击“mfgtool2-yocto-mx-evk-emmc.vbs”,打开下载软件,如果出现“符合 HID 标准的供应商定义设备”等字样就说明下载软件已经准备就绪。点击“Start”按钮开发烧写 NXP 官方系统,烧写过程如下图:

等待烧写完成,因为 NXP 官方的根文件系统比较大,因此烧写的时候耗时会久一点。烧写完成以后 MfgTool 软件如下图:

点击Stop停止烧写,点击Exit退出。拔出 USB 线,将开发板上的拨码开关拨到 EMMC 启动模式,然后重启开发板,此时就会从 EMMC 启动。
三、烧写自制的系统
1、准备要烧写的原材料:
①、自己移植编译出来的 uboot 可执行文件:u-boot.imx。
②、自己移植编译出来的 zImage 镜像文件和开发板对应的.dtb(设备树),对于 I.MX6U-ALPHA 开发板来说就是 imx6ull-alientek-emmc.dtb。
③、自己构建的根文件系统 rootfs,这里我们需要对 rootfs 进行打包,进入到 Ubuntu 中的rootfs 目录中,然后使用 tar 命令对其进行打包,命令如下:
cd rootfs/tar -vcjf rootfs.tar.bz2 *
2、文件重命名

3、文件替换
zImage、u-boot-imx6ull14x14evk_emmc.imx 和 zImage-imx6ull-14x14-evk-emmc.dtb 这三个文件拷贝到 mfgtools-with-rootfs/mfgtools/Profiles/Linux/OS Firmware/firmware 目录中,替换掉原来的文件。
4 个文件都拷贝到 mfgtools-with-rootfs/mfgtools/Profiles/Linux/OS Firmware/files目录中,这两个操作完成以后我们就可以进行烧写了。
4、系统烧写
双击“mfgtool2-yocto-mx-evk-emmc.vbs”,打开烧写软件,点击“Start”按钮开始烧写,点击Exit退出。拔出 USB 线,将开发板上的拨码开关拨到 EMMC 启动模式,然后重启开发板,此时就会从 EMMC 启动。
四、改造自己的烧写工具
firmware文件夹保留:fsl-image-mfgtool-initramfs-imx_mfgtools.cpio.gz.u-boot,fsl-image-mfgtool-initramfs-imx6qdlsolo.cpio.gz.u-boot,initramfs.cpio.gz.uboot文件,其它删除
files文件夹保留:fsl-image-mfgtool-initramfs-imx6qdlsolo.cpio.gz.u-boot文件,其它删除
1、改造MfgTool
①、针对不同的核心版,确定系统文件相关名字。
②、新建我们自己的.vbs 文件。
③、修改 ucl2.xml 文件。
2、确定系统文件名字
确定系统文件名字是为了兼容NAND和EMMC两个版本,以版本名做结尾命名。
命名格式:原文件名-公司名/型号名-版本名

3、新建.vbs和修改ucl2.xml文件
①、直接复制 mfgtool2-yocto-mx-evk-emmc.vbs 文件即可,将新复制的文件重命名为 mfgtool2-alientek-alpha-emmc.vbs,文件内容不要做任何修改,.vbs 文件我们就新建好了。
②、修改ucl2.xml文件
在修改 ucl2.xml 文件之前,先保存一份原始的 ucl2.xml。将 ucl2.xml 文件改为如下所示内容:
Partitioning...
4、烧写系统
按照烧写NXP官方系统工具步骤烧写
注意:
避免启动时出错,修改uboot配置文件:uboot源码中include/configs/mx6ull_alientek_emmc.h(改为自己的配置文件)

- 迅为i.MX6ULL终结者Mfgtools修改单独只烧写Uboot,内核,文件系统
- IMX6ULL学习笔记(6)——通过USB OTG烧录U-Boot(MfgTool工具)
- RK3588开发板Android系统烧写实践与关键步骤
- 飞凌嵌入式RK3568开发板通过TFTP烧写文件系统操作指南
- 迅为恩智浦IMX6Q开发板系统固件TF卡烧写
- 迅为IMX6开发板Mfgtools工具单独烧写镜像-设备树Qt系统
- s3c6410学习笔记-烧写uboot+构建文件系统
- [S3C6410-01]烧写Linux3.0.1系统
- 构建根文件系统(7)制作/烧写yaffs映象文件
- U-Boot在FL2440上移植(四)----支持网卡DM9000和烧写yaffs文件系统
- 六大全新产品系列推出,MCX A微控制器家族迎来创新
- 意法半导体全新STM32C5系列,重新定义入门级微控制器性能与价值,赋能万千智能设备
- 模组复用与整机重测在SRRC、CCC、CTA/NAL认证中的实践操作指南
- 有源晶振与无源晶振的六大区别详解
- 英飞凌持续巩固全球微控制器市场领导地位
- 使用 Keil Studio for Visual Studio Code开发 STM32 设备
- 从控制到系统:TI利用边缘AI重塑嵌入式MCU的边界
- 蓝牙信道探测技术原理与开发套件实践
- Microchip 推出生产就绪型全栈边缘 AI 解决方案,赋能MCU和MPU实现 智能实时决策
- LoRa、LoRaWAN、NB-IoT与4G DTU技术对比及工业无线方案选型分析




