I'm trying to implement a nand boot on a custom imx6q board with the nand chip MT29F2G08ABAEAWP-IT from micron. i used mx6qsabreauto as a reference board and ported the code from it, and i managed to boot fully functional linux from sdcard. From the linux i use kobs-ng-5.1 to flash the same u-boot.imx with the -x flag onto the nand. (i already verified i can write/read from the nand correctly both from the u-boot and the linux).
But when i configure the BOOT_CFG to boot from nand, it doesn't boot.
I used jtag to read a few memory values (like suggested in some of the posts here) and i saw that the IVT is present correctly in the OCRAM, furthermore the external RAM has been initiated and the image has been copied into the RAM.
i halted the SD boot to compare the images in the RAM and they are the same!
furthermore when i halt the nand boot, it stops at pc = 0xfd4 approximately which sounds to me like bootROM and only the Icache is enabled (i guess then that some part of uboot ran), unlike the sd boot which ofcourse the MMU Dcache and Icache are all enabled.
so i infer that the BCB data is correct, and the DCD at least works to configure the RAM (i also tested writing/reading from the RAM in jtag and it works when trying to boot from nand).
any suggestions how i should proceed?
also my nand geometry is 2048 + 64, 64 pages in block, but i think its not the issue, probably some missing instructions from uboot/ instructions that cause uboot to crash.