The iMX RT1050 ROM will allow you to copy an application image from a serial NOR flash memory on the FlexSPI controller to SDRAM at boot time. If you want to run your application from SDRAM, then when debugging and developing your application you should use an initialization script for the debugger to setup the SDRAM so the application can be downloaded directly to the SDRAM for debugging.
When you are ready to have your application boot without the debugger, then you'll need to use the RT flashloader tools to program the application to the flash and configure it to copy to the SDRAM. The attached document contains instructions on how to program a boot image to serial NOR flash (in this case the hyperflash that is on the EVK) that will be copied to the SDRAM at boot time.
Do possible your side to provides more example on this application? I did tried using hello_word example modified the ICF to as following, but it fail to boot up.
define symbol m_interrupts_start = 0x80000100;
define symbol m_interrupts_end = 0x800004FF;
define symbol m_text_start = 0x80000500;
define symbol m_text_end = 0x801FFFFF;
define symbol m_data3_start = 0x80200000;
define symbol m_data3_end = 0x81DFFFFF;
define symbol m_ncache_start = 0x81E00000;
define symbol m_ncache_end = 0x81FFFFFF;
I thought we didn't need to use the elftosb tool anymore as the MCUxpresso code creates the IVT; in fact, elftosb crashes when trying to
use certain addresses.
I've been able to get QSPI to work to copy from flash into ICT RAM and adjusting the IVT tables accordingly, but relocating to anything other than ICT fails, even though the code is linked to, say, 0x20202000, for example, when I look at the map file.
Is it possible to include the "DCD.bin" inside the IVT DCD location directly in MCUxpresso to configure SDRAM without requiring elftosb?
For what it's worth my USB stuff doesn't work when copied to RAM this way, but everything else does. USB returns "this device has failed" in Windows... a subject for a different thread.
You can also try this tool, with this tool, You can flash bare image into various boot devices easily and don't need to care about headers (ivt, boot data...)
GitHub - JayHeng/nxp-sec-boot-ui: A one-stop GUI tool to work with NXP MCU (Kinetis, i.MXRT, LPC) RO...