eMMC mmc-utils bits need for flasher:
Created by: RobertCNelson
Linux Dump:
sudo mmc extcsd read /dev/mmcblk0
U-Boot
"emmc_boot0_bbai=mmc partconf 0 1 1 1; " \
"mmc dev 0 1; " \
"mmc erase 0 0x2400; " \
"fatload mmc 1 ${loadaddr} tiboot3.bin; " \
"mmc write ${loadaddr} 0x0 0x300; " \
"fatload mmc 1 ${loadaddr} tispl.bin; " \
"mmc write ${loadaddr} 0x300 0x600; " \
"fatload mmc 1 ${loadaddr} u-boot.img; " \
"mmc write ${loadaddr} 0x900 0x1000; " \
"fatload mmc 1 ${loadaddr} sysfw.itb; " \
"mmc write ${loadaddr} 0x1900 0x300; " \
"mmc bootbus 0 2 0 0; " \
"\0" \
Files:
Unlock:
Linux:
echo 0 > /sys/class/block/mmcblk0boot0/force_ro
sudo sh -c "echo '0' >> /sys/class/block/mmcblk0boot0/force_ro"
boot bus:
Linux:
sudo mmc bootpart enable 1 2 /dev/mmcblk0
Boot configuration bytes [PARTITION_CONFIG: 0x48]
Boot Partition 1 enabled
No access to boot partition
Boot config protection [BOOT_CONFIG_PROT: 0x00]
Boot bus Conditions [BOOT_BUS_CONDITIONS: 0x02]
U-Boot
mmc bootbus 0 2 0 0
Boot configuration bytes [PARTITION_CONFIG: 0x48]
Boot Partition 1 enabled
No access to boot partition
Boot config protection [BOOT_CONFIG_PROT: 0x00]
Boot bus Conditions [BOOT_BUS_CONDITIONS: 0x02]
H/W Reset:
Linux
sudo mmc hwreset enable /dev/mmcblk0
U-boot
mmc rst-function 0 1
mmc-utils:
H/W reset function [RST_N_FUNCTION]: 0x00
H/W reset function [RST_N_FUNCTION]: 0x01
Hacks:
dd if=/dev/mmcblk0boot0 of=/home/debian/u-boot.img count=32 bs=128k
dd if=/dev/zero of=/dev/mmcblk0boot0 count=32 bs=128k
dd if=/boot/firmware/tiboot3.bin of=/dev/mmcblk0boot0 count=3 bs=128k
"fatload mmc 1 ${loadaddr} tispl.bin; " \
"mmc write ${loadaddr} 0x300 0x600; "
dd if=/boot/firmware/tispl.bin of=/dev/mmcblk0boot0 seek=3 count=3 bs=128k
"fatload mmc 1 ${loadaddr} u-boot.img; " \
"mmc write ${loadaddr} 0x900 0x1000; " \
dd if=/boot/firmware/u-boot.img of=/dev/mmcblk0boot0 seek=9 count=10 bs=128k
"fatload mmc 1 ${loadaddr} sysfw.itb; " \
"mmc write ${loadaddr} 0x1900 0x300; " \
dd if=/boot/firmware/sysfw.itb of=/dev/mmcblk0boot0 seek=19 count=3 bs=128k
dd if=/dev/mmcblk0boot0 of=/home/debian/linux.img count=32 bs=128k