I’m setting up a board using an i.MX6Q to boot from NAND. I have the board booting fine from an SD card using a custom u-boot image packaged with the mkimage utility into an imx boot format (IVT and DCD added to the head).
When I burn this image to NAND using the kobs-ng tool in Linux I can’t get the board to load and execute U-Boot. Using JTAG I’m able to see that the boot ROM gets to the point of loading the IVT, Boot Data and DCD and actually executing the commands in the DCD (all the MMDC values are programmed and the IVT and DCD are present in DRAM). However, the actual program binary for U-Boot is not loaded.
I’m assuming since I got to the point of loading and executing the DCD that the FCB and DBBT are good and the NAND boot is functional. Additionally, I verified that the ROM is not reading garbage data out of NAND because I can modify the values at the program destination address and they remain unchanged following a reset.
What am I missing that is preventing the final step of loading and executing the image? If the SD card boot process succeeds with the u-boot image why wouldn’t the NAND boot process?