Hi all,
I am in the same situation. My final objective is to boot to ITCM and SDRAM (non-XIP) from QSPI flash. I decided to start by booting from SD to ITCM, which I achieved by following the instructions in AN12107.pdf, and also thanks to Yuri's additional input ().
As a next step, I tried to non-xip from Hyperflash by adjusting the above, as suggested to the OP by Wigros in this thread. I substituted "program_flexspinor_image_hyperflash.bd" for "program_sdcard_image.bd", while still using "imx-itcm-unsigned.bd" and the "MIMXRT1052xxxxx_ram.icf" linker file. However, I have not as yet succeeded in configuring these files for hyperflash non-xip, in particular:
Vector table start address in "MIMXRT1052xxxxx_ram.icf" - Wigros' comment suggests that this should stay at 0x0000 for Hyperflash (unlike the SD case, where it had to be changed to 0x2000)? Is this also the case for QSPI?
startAddress in imx-itcm-unsigned.bd - Yuri's comment (in link above) seems to imply that this should be less than the vector table start address. However, if we leave the vector table at 0x0000, this would make startAddress also 0x0000, which goes against the comment in the .bd file (which states that startAddress should be non-zero). This also makes elftosb.exe crash with a segfault.
ivtOffset in same file - Does this stay at 0x400 since we're not XIP'ing?
"program_flexspinor_image_hyperflash.bd" - Should this be adjusted for flashing a non-xip image?
Any help is greatly appreciated,
Nikos