AnsweredAssumed Answered

IMX6D eMMC Boot Problem

Question asked by Steve Lyon on Dec 6, 2016
Latest reply on Dec 19, 2016 by Yuri Muhin

Hi we are having trouble getting our IMX6D to boot on our new custom board. I see a lot of other people on the forum have trouble with this so here are the details for our issue:

 

We tried all combinations of BOOT_MODE select bits, and following along with Table 5-8 eMMC Boot Fusemap in the RM we tried Fast Boot 1/0, MMC speed 1/0, Fast Boock Ack 1/0

  

So here is what is working:

 

1.) Imx6 goes into revovery usb mode

2.) Push u-boot to imx6 from imx6_usb util

3.) U-boot loads into DDR and runs

4.) From u-boot mount emmc as usb mass storage device

5.) Using fdisk create partition and format it as ext2

6.) Copy full rootfs to flash

7.) Reboot

8.) Perform steps 1-3 again

9.) From u-boot copy kernel and dtb file into memory

10.) From u-boot boot kernel using bootz

11.) Kernel boots, and mounts emmc rootfs

12.) From linux now running on imx6 login

13.) Turn off read only mode for mmcblk0boot{0,1}

14.) From Linux dd if=/u-boot.imx of=/dev/mmcblk0boot{0,1} bs=512 seek=2

15.) sync

16.) read back both boot{0,1} into local files and then cmp -l -b u-boot.imx bootdata{0,1}, I also used diff  and they are all the same.

17.) Using linux mmc-utils: mmc bootpart enable 1 1 /dev/mmcblk0 a. I tried changing both of the enable options to use different banks and to use/not use the Ack.

18.) Power cycle board: tried both hard power and reboot results is always the same.

19.) Imx6 powers on and always ends up in USB recovery mode.

 

I have tried this by setting pretty much all combos of the boot_cfg1 & boot_cfg2.    Also I retried dd’n u-boot.imx into the user flash area to see if imx6 would try to boot it as well.  No luck.

 

 

We would appreciate any thoughts and suggestions,

Steve

Outcomes