一、fatwrite命令
1.fatwrite命令用于将DRAM中的数据写入EMMC设备中,命令格式如下:
fatwrite <interface> <dev[:part]> <addr> <filename> <bytes>
interface:接口,比如mmc;
dev:设备号;
part:分区;
addr:是要写入的数据在DRAM中的起始地址;
filename:是要写入的数据文件名字;
bytes:表示要写入多少字节的数据。
二、通过fatwrite命令在uboot中更新EMMC中的Linux镜像文件和设备树
1.首先要确认uboot是否有fatwrite命令,默认uboot没有使能fatwrite命令,需要修改板子的配置头文件,比如mx6ull_fire_emmc.h(文件路径:uboot根目录:/include/configs/mx6ull_fire_emmc.h),板子不同对应的头文件也不同,请根据个人实际情况设置。找到开发板对应的配置头文件后在配置文件中添加如下一行宏定义来使能fatwrite命令:
#define CONFIG_FAT_WRITE /* 使能fatwrite命令 */
添加的位置如下图所示:
2.使用tftp命令将zImage下载到DRAM的0x80800000地址处,将mx6ull_fire_emmc.dtb下载到DRAM的0x8300000地址处,命令如下:
1 tftp 80800000 zImage 2 tftp 83000000 imx6ull-fire-emmc.dtb
下载过程如下图所示:
待添加。。。。。。
zImage的大小为5614872(0x55AD18)个字节;im6ull-fire-emmc.dtb的大小为35969(0x8C81)个字节。
3.接下来使用fatwrite命令将其写到EMMC设备分区1中,命令如下:
1 fatwrite mmc 1:1 80800000 zImage 0x55AD18 2 fatwrite mmc 1:1 83000000 imx6ull-fire-emmc.dtb 0x8C81
完成后使用如下命令查看EMMC分区1里面的文件:
1 fatls mmc 1:1
结果如下图所示:
待添加。。。。。。
end