MfgTool烧写的原理,MfgTool其实是先通过USB OTG先将uboot、kernel和.dtb(设备树)这是三个文件下载到开发板的DDR中,注意不需要下载rootfs。就相当于直接在开发板的DDR上启动Linux系统,等Linux系统启动以后再向EMMC中烧写完整的系统,包括uboot、linuxkernel、.dtb(设备树)和rootfs。
因此MfgTool工作过程主要分两个阶段:
①、将firmware目录中的uboot、linuxkernel和.dtb(设备树),然后通过USB OTG将这个文件下载到开发板的DDR中,目的就是在DDR中启动Linux系统,为后面的烧写做准备。
②、经过第①步的操作,此时Linux系统已经运行起来了,系统运行起来以后就可以很方便的完成对EMMC的格式化、分区等操作。EMMC分区建立好以后就可以从firmware中读取要烧写的uboot、linux kernel、.dtb(设备树)和rootfs这4个文件,然后将其烧写到EMMC中,这个就是MfgTool的大概工作流程。
ucl2.xml文件
files和firmware目录下有众多的uboot和设备树,那么烧写的时候究竟选择哪一个呢?这个工作就是由ucl2.xml文件来完成的。
在对EMMC分区的时候,需要先对存在的分区进行卸载,才能进行卸载(不然无法分区)。
具体方式如下:
mfgtool\Profiles\Linux\OS Firmware\ucl2.xml
在format and mount rootfs partition
下面添加
<CMD state="Updater" type="push" body="$ umount /dev/mmcblk1p2">Unmounting vfat partition</CMD>