By using "setenv bootcmd booti mmc2" followed by a successful "saveenv", we can boot the droid JB demo binary successful w/ the iMX6Q-SD board.
However, after doing "reset" or power on again, we found that the env variable "bootcmd" has been changed to some other value and device can't boot.
Here is the successful boot case:
Hit any key to stop autoboot: 0
MX6Q SABRESD U-Boot > setenv bootcmd booti mmc2
MX6Q SABRESD U-Boot > saveenv
Saving Environment to MMC...
Writing to MMC(2)... done
MX6Q SABRESD U-Boot > boot
kernel @ 10808000 (4724232)
Here is the env after "reset" or reboot, the boot will fail (w/ a droid icon with a !! mark shown on the screen):
MX6Q SABRESD U-Boot > printenv
bootcmd_android_recovery=booti mmc2 recovery
It seems that the successful boot was from boot partition of mmc2 (SD3 on the board), but the changed value is from recovery partition.
Hope someone can give some pointers here about how to fix it.
I am using the following commands to prepare the 8GB SD card:
dd if=u-boot-6q.bin of=/dev/sdb bs=1K skip=1 seek=1
dd if=SD/boot.img of=/dev/sdb1;
dd if=SD/system.img of=/dev/sdb5;
dd if=SD/recovery.img of=/dev/sdb2;
The image I am using is "android_jb4.3_1.1.0-ga_image_6qsabresd.tgz"