6.1. Mfgtool烧写Uboot到内部存储(EMMC/NAND通用)¶
6.1.1. 简介¶
MFGTool工具是NXP官方推荐的一个使用USB OTG来升级镜像的软 件工具,它是NXP针对i.MX系列处理器专门使用的烧 录工具,可以用来升级linux,单独烧录某一系统分区,独立 地烧录spi flash、 nor flash、sd card、nand flash,emmc等,只需简单的配置,就可以使用该工具将编译好 的文件系统和镜像文件烧录到开发板上,使用起来非常方便。而 且MFGtool工具作为一个可量产性的工具,它支持多通道的烧录,在实 际量产中,可以直接使用MFGtool工具同时将文件系统与镜像文件烧录 到多个开发板上。
6.1.2. MFGtool工具的工作原理¶
简单来说MFGtool工具的烧录步骤分为两个阶段:BurnStarp和Updater。第一阶段是 烧录前的准备工作,配置设备USB的vid和pid,来选择烧录的设备。第二阶段是MFGtools开 始烧录到结束烧录的过程,这个阶段的烧录过程是严格根据ucl2.xml文件来处理的,实际上是将bootloader加载到ram,然后在运行时将编译好的文件系统和镜像文件烧录到开发板上,烧录的 位置由用户指定,可以是sd card、nand flash,emmc等。
6.1.3. 环境搭建¶
首先下载mfgtool工具,详细可参考 烧写环境的搭建 章节搭建环境
6.1.4. 替换uboot文件¶
将编译出的uboot-dtb.imx 更名
emmc 版本的重命名为 u-boot-mmc.imx
nand 版本的重命名为 u-boot-nand.imx
然后进入到mfgtool目录中的 mfgtools-release\Profiles\Linux\OS Firmware\release 目录将相应文件替换即可
6.1.5. 修改ucl2.xml文件¶
将mfgtools-release\Profiles\Linux\OS Firmware目录下的ucl2.xml替换为如下内容
也可以下载直接替换 ucl2.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL MX6ULL">Loading Kernel.
loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL MX6ULL">Loading Initramfs.
loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6ULL">Loading device tree.
loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL MX6ULL">Loading Kernel.
loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL MX6ULL">Loading Initramfs.
loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6ULL">Loading device tree.
6.1.6. 烧录¶
6.1.6.1. 烧录配置¶
解压后的“cfg.ini”文件默认为EMMC的烧写配置文件, 若想要烧写NAND版本镜像,将cfg.ini重命名为cfg-emmc.ini,并将cfg-nand.ini文件重命名为cfg.ini即可。
6.1.6.2. 设置为USB启动模式¶
将USB OTG与电脑连接
使用USB更新时不能插入SD卡,将拨码开关设置为USB启动。
配置拨码开关:
emmc版本:将1/4/5/7打到ON档,其他拨码开关打到OFF档。
nand版本:将1/3/6打到ON档,其他拨码开关打到OFF档。
提示
也可以选择通过按键方式进入烧录模式,按键法可以不用拨码,拨码状态在之前的 EMMC 或者 NAND 都可以。
上电
按下MODE按键
按下复位(RESET)按键
松开复位(RESET)按键
松开MODE按键
此时软件就可以识别到USB了,然后烧录完毕后重启即可。