以前做过am335x,它的uboot是直接放在emmc或者SD卡的fat分区中的,这个其实也很好理解,am335x在启动的过程中,片内还有一个启动程序,这个启动程序可以驱动SDIO接口,并且这个程序还支持FAT文件系统,于是就轻而易举的把FAT文件分区uboot拷贝到DDR中运行。

    而imx6ull做的就简单了,它内部也有个简单的启动程序,这个程序不支持FAT文件系统,但它支持SDIO接口,所以imx6ull启动的时候只能从原始的0X400偏移处读取uboot的内容。

  这样做对用户是不友好的的,如果是am335x,用户只要把SD卡插入电脑,把UBOOT拷贝到叫做boot的FAT分区就可以了,而imx6ull就不能这么轻易的写入uboot, 必须使用专用的工具写uboot, 

方法如下:

1.在uboot中更新uboot,mmc  write命令。

2.在linux系统中,sudo dd if=u-boot.imx of=/dev/sdb bs=1024 seek=1 conv=fsync 

3.在WINDOWS中,这个不知道

其实为了验证我的想法,我还对比了SD卡与u-boot.imx的原始数据。

imx6ull的boot, 之我的理解

imx6ull的boot, 之我的理解

相关文章:

  • 2021-11-23
  • 2021-12-26
  • 2021-10-19
  • 2022-12-23
  • 2022-12-23
  • 2021-07-20
  • 2021-05-20
  • 2021-05-02
猜你喜欢
  • 2021-05-23
  • 2021-09-01
  • 2021-10-22
  • 2021-11-01
  • 2021-10-21
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案