1. 看一下那个partition 是boot用的
mmc extcsd read /dev/mmcblk0 |grep -A 3 PARTITION_CONFIG
2. 使能其中一个partition
mmc bootpart enable 1 0 /dev/mmcblk0 enable boot1
mmc bootpart enable 2 0 /dev/mmcblk0 enable boot2
mmc bootpart enable 7 0 /dev/mmcblk0 enable user
enable 完了可以用 #1 命令确认一下
3. 写bootloader 去 boot partition
a. boot1
echo 0 > /sys/block/mmcblk0boot0/force_ro
dd if=flash.bin of=/dev/mmcblk0boot0
echo 1 > /sys/block/mmcblk0boot0/force_ro
b. boot2
echo 0 > /sys/block/mmcblk0boot1/force_ro
dd if=flash.bin of=/dev/mmcblk0boot1
echo 1 > /sys/block/mmcblk0boot1/force_ro
c user
dd if=flash.bin of=/dev/mmcblk0 bs=1k seek=32
4. i.MX8X 的两个boot 分区是互相备份的。 见文章
我觉得 是smithcoba 的这个笔误 写错了 dd if=flash.bin of=/dev/mmc0boot0 应该是 dd if=flash.bin of=/dev/mmcblk0boot0
如果你照着没有改就错了。