AnsweredAssumed Answered

Custom imx6q board fails to boot from NAND

Question asked by Maxim Podberezniy on Jun 24, 2016
Latest reply on Jun 24, 2016 by Maxim Podberezniy


Hi!

I'm bringing up a custom imx6q board and everything seems to work except for NAND boot. I compiled u-boot for Titanium board and it works as expected with MT29F2G08ABAFAWP chip. How I tested it: loaded u-boot with USB OTG (Serial downloader), erased NAND, burned linux kernel, removed power for a minute, powered board, loaded u-boot with USB OTG, load kernel from NAND and the board booted to Linux just fine. Now I need to burn u-boot and let it boot just on powering the board. I have no clue what I'm doing wrong, but Serial downloader mode is the only mode I get on power up.

GPIO boot pins settings:

BOOT_CFG1 = 0x80

BOOT_CFG2 = 0x02

eFuse - initial state from the factory, have not read it yet

How I burn u-boot.imx to the NAND:

Titanium > usb start

(Re)start USB...

USB0:   USB EHCI 1.00

scanning bus 0 for devices... 2 USB Device(s) found

       scanning usb for storage devices... 1 Storage Device(s) found

Titanium > fatload usb 0 ${loadaddr} u-boot.imx

reading u-boot.imx

453632 bytes read in 38 ms (11.4 MiB/s)

Titanium > nand write ${loadaddr} 0 0x6ec00

 

 

NAND write: device 0 offset 0x0, size 0x6ec00

453632 bytes written: OK

Titanium > reset

resetting ...

<<< nothing happens

I tried to do this and burn again:

dd if=u-boot.imx of=u-boot-offset.imx bs=512 seek=2

it does not help at all!

Please help me to resolve this issue. How can I perform diagnostics what is wrong with HW or SW settings? Probably u-boot needs some additional flags or something else to be able to boot from NAND? Does it need first level bootloader like SPL or something?

Outcomes