Is non-XIP possible on RT1050 QSPI Flash

cancel
Showing results for 
Search instead for 
Did you mean: 

Is non-XIP possible on RT1050 QSPI Flash

1,404 Views
Contributor IV

Hello all, I was wondering if it's possible to load and execute a RAM based, non-XIP image from QSPI NOR Flash on the RT1050.  I have been looking at the example bd files in the Flashloader_RT1050_1.x archive and associated documentation but I am still unsure or what is required for the non-XIP image.  If it is possible, please suggest the necessary bd file or file changes.

I have seen this post but the suggested solution is for non-XIP out of SD.

Thanks.

Labels (1)
0 Kudos
5 Replies

112 Views
NXP Employee
NXP Employee

Of course, it is possible, you can try this GUI tool Releases · JayHeng/NXP-MCUBootUtility · GitHub 

0 Kudos

112 Views
Contributor III

Finally, Is it possible to use QSPI Nor Flash interface to contain code, but execute the code in internal SRAM or external SDRAM?

0 Kudos

112 Views
NXP TechSupport
NXP TechSupport

Hi Ryan

yes this is possible, one can look at AN1208 How to Enable Boot from QSPI Flash

sect.4.3. MFG Boot from QSPI Flash with DCD for SDRAM

https://www.nxp.com/docs/en/application-note/AN12108.pdf 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

112 Views
Contributor IV

Hello Igor.  The document section you recommended (4.3. MFG Boot from QSPI Flash with DCD for SDRAM) does not appear to produce a non-XIP image.  It appears to produce an image where code is executing from Flash but data is placed in SRAM.  Did you perhaps mean that the boot from SD card section could be adapted from QSPI?

What I was hoping for was an image that would be loaded from QSPI but would execute entirely from RAM. 

Please clarify, thanks.

0 Kudos

112 Views
Contributor IV

It appears that the SD example is the one to follow.  I had had to modify both my IAR linker script (MIMXRT1052xxxxx_ram.icf) and the imx-itcm-unsigned.bd

The linker script requires the following mods:

define symbol m_interrupts_start       = 0x00002000;
define symbol m_interrupts_end         = 0x000023FF;

define symbol m_text_start             = 0x00002400;
define symbol m_text_end               = 0x0001FFFF;

And imx-itcm-unsigned.bd requires the following options section:

options {
    flags = 0x00;
    startAddress = 0x0;
    ivtOffset = 0x1000;
    initialLoadSize = 0x8000;
}

I then build the boot image with:

elftosb.exe -f imx -V -c imx-itcm-unsigned.bd -o ivt_itcm_my_image.bin my_image.out
elftosb.exe -f kinetis -V -c program_flexspinor_image_qspinor.bd -o boot_image.sb ivt_itcm_my_image_nopadding.bin
0 Kudos