Hello,
I am attempting to clone the eMMC from a working device to a newly built device. I believe I have correctly cloned the eMMC but the target device will not boot and produces no serial console output. Below I have laid out my procedure for cloning the eMMC. The process seems fairly straight forward and I can’t see why it would fail to boot. I have tried the procedure on multiple target devices with no luck.
1.Boot working device off SD card (has extra partition and space for img files)
- Create image files on SD card from working eMMC
dd if=/dev/mmcblk2boot0 of=/sdCardMountpath/boot0.img conv=fdatasync
dd if=/dev/mmcblk2boot1 of=/sdCardMountpath/boot1.img conv=fdatasync
dd if=/dev/mmcblk2 of=/sdCardMountpath/main.img conv=fdatasync
-
Boot target device off SD card
-
Unlock emmc boot areas on target eMMC
echo 0 > /sys/block/mmcblk2boot0/force_ro
echo 0 > /sys/block/mmcblk2boot1/force_ro
- Restore images to target eMMC
dd if=/sdCardMountpath/boot0.img of=/dev/mmcblk2boot0 conv=fdatasync
dd if=/sdCardMountpath/boot1.img of=/dev/mmcblk2boot1 conv=fdatasync
dd if=/sdCardMountpath/main.img of=/dev/mmcblk2 conv=fdatasync
I have compared the memory areas using cmp to ensure I have an identical copy of the eMMC.