imx6ull的boot, 之我的理解

    以前做过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的原始数据。