AnsweredAssumed Answered

i.mx6 yocto cross compiler on u-boot spinor problem

Question asked by Eric Lee on Apr 11, 2016
Latest reply on Apr 11, 2016 by Yuri Muhin

My custom board was running u-boot v2014.04 and Linux kernel 3.14.28. It is just fine. Lately, I upgraded to u-boot v2015.04 and linux kernel 4.1.15 that officially released from NXP. Everything is fine as expected. When using newer u-boot and kernel, I uses Linaro gcc-linaro-4.9-2015.05 cross compiler.

Then I started to working on Yocto build for newer kernel and u-boot (It was fine for u-boot v2014.04 and linux 3.14.28 yocto build). I found that the u-boot can only boot up from SD card. When boot up from spi nor flash, it will stop at


U-Boot 2015.04+fslc+g85a6a75 (Apr 12 2016 - 00:36:35)



CPU:   Freescale i.MX6Q rev1.5 at 792 MHz

CPU:   Temperature 32 C

Reset cause: POR

I2C:   ready

DRAM:  1 GiB


*** Warning - bad CRC, using default environment



No panel detected: default to HDMI

Display: HDMI (640x480)

(stop here)


Then I went to my yocto u-boot source directory at tmp/work/imx6q1gsmarc-poky-linux-gnueabi/u-boot-smarcfimx6/2015.04-smarcfimx6-r0+gitrAUTOINC+85a6a75394/git

And manually point to my cross compiler to Linaro gcc-linaro-4.9-2015.05 and manually build u-boot inside this directory. I can boot up from SPI NOR flash. I believe that the NXP new yocto release has this bug. When using arm-poky-linux-gnueabi- cross compiler to compile u-boot v2015.04, it cannot boot up from SPI flash.

May I know how to fix it from Yocto build?