鸣涧 发表于 2022-5-7 15:18:10

Linux-使用uboot命令将Linux镜像和设备树文件下载到EMMC中

Linux-使用uboot命令将Linux镜像和设备树文件下载到EMMC中               
                                       

一、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地址处,命令如下:
tftp 80800000 zImage2 tftp 83000000 imx6ull-fire-emmc.dtb  下载过程如下图所示:
  
  zImage的大小为5614872(0x55AD18)个字节;im6ull-fire-emmc.dtb的大小为35969(0x8C81)个字节。
  3.接下来使用fatwrite命令将其写到EMMC设备分区1中,命令如下:
fatwrite mmc 1:1 80800000 zImage 0x55AD182 fatwrite mmc 1:1 83000000 imx6ull-fire-emmc.dtb 0x8C81

  完成后使用如下命令查看EMMC分区1里面的文件:
fatls mmc 1:1

  结果如下图所示:
  待添加。。。。。。

页: [1]
查看完整版本: Linux-使用uboot命令将Linux镜像和设备树文件下载到EMMC中