[U-Boot] rk3288: firefly: flashing emmc from maskrom using USB

Jack Mitchell ml at embed.me.uk
Mon Jan 14 17:28:24 UTC 2019


I'm having issues flashing the emmc on my firefly board using USB. For
some reason it seems as though trying to write to the emmc flash sector
0x40 for uboot spl+proper from the Maskrom/Loader doesn't work. Can
anyone elaborate on what I'm doing wrong, or another way I could achieve
this?

The current state of the emmc is empty, so it boots into the maskrom on
reset.

I've tried with the Rockchip Loader binary as shown below:

$ tools/mkimage -n rk3288 -T rksd -d \
	spl/u-boot-spl-dtb.bin out && \
	cat u-boot-dtb.bin >> out

$ rkdeveloptool db RK3288Loader_uboot_V2.17.02.bin

$ rkdeveloptool wl 64 out

$ rkdeveloptool rd

This just loads back into the maskrom as if nothing was written to the emmc.

I've used the same method but writing to an sd card:

$ tools/mkimage -n rk3288 -T rksd -d \
	spl/u-boot-spl-dtb.bin out && \
	cat u-boot-dtb.bin >> out

$ dd if=out of=/dev/sdc seek=64

This works fine and boots into full uboot as I would expect, but from
the sd card rather than the emmc.

I have then flashed the emmc from the sd card running uboot, which then
enables me to boot uboot from the emmc.

I can also use rockusb from the sd card uboot to flash uboot to the emmc
using the following commands:

uboot> rockusb 0 mmc 0

$ rkdeveloptool wl 64 out

$ rkdeveloptool rd

This also works. However both working methods require me starting uboot
from an sd card in the first instance. How can I successfully flash the
emmc using just USB? Any input would be appreciated.

Regards,
Jack.


More information about the U-Boot mailing list