i.MXRT1170-EVK hello world example loading

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MXRT1170-EVK hello world example loading

Jump to solution
1,925 Views
igrinberg
Contributor II

In the Hello World example project, there are different loading configurations:

igrinberg_1-1640618455201.png

What does each of them mean?

flexspi_nor_debug executes from QSPI?

flexspi_nor_sdram_debug executes from SDRAM?

What is sdram_debug? what is sdtram_txt_debug?

Thanks,

Irina.

0 Kudos
1 Solution
1,826 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @igrinberg ,

   Check this post, it will helps you!

https://community.nxp.com/t5/i-MX-RT-Knowledge-Base/RT1050-SDRAM-app-code-boot-from-SDcard-burn-with...

   You can know how to generate the sdram code, then you just need to use the tool download it to the external flash.

  to IAR, just modify the text, interrupt to the 0X80002000.

kerryzhou_0-1641288653853.png

 

Wish it helps you!

If you still have question, you can create a new post, we will help you how to run in SDRAM and download to the flash in details. Normally, one question topic to one post.

Best Regards,

Kerry

 

View solution in original post

0 Kudos
8 Replies
1,915 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @igrinberg 

Please refer to the SDK code:

SDK_2_10_1_MIMXRT1170-EVK\docs\Getting Started with MCUXpresso SDK for MIMXRT1170-EVK.pdf

Which can be downloaded from this link:

https://mcuxpresso.nxp.com/en/builder?hw=MIMXRT1170-EVK

kerryzhou_0-1640672300154.png

Please read the get start document carefully.

If you still have issues about it, please kindly let me know.

Best Regards,

Kerry

 

0 Kudos
1,879 Views
igrinberg
Contributor II

Thanks @kerryzhou!

Some follow-up questions -
1. If I want to import one of these settings to another project, which files do I need to copy/change?

2. In all cases where neither text nor data are in the FlexSPI (i.e sdram_txt_release) all will be lost in case of reboot? Or there is a loading to FlexSPI as well followed by some bootloader code to load to RAM/SDRAM?

3. When text is loaded to FlexSPI, is it later executed in place or loaded to RAM?

Thanks,

Ira.

0 Kudos
1,863 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @igrinberg ,

  Answer your questions:

1. If I want to import one of these settings to another project, which files do I need to copy/change?

=>If you want to create a new project, you can use the MCUXPresso CFG tool to generate the project directly.

https://www.nxp.com/design/software/development-software/mcuxpresso-software-and-tools-/mcuxpresso-c...

It will help you copy one SDK project based on the SDK.

In fact, different Settings use the different linker file, you just need to copy the source code and the related linker file.

 

2. In all cases where neither text nor data are in the FlexSPI (i.e sdram_txt_release) all will be lost in case of reboot? Or there is a loading to FlexSPI as well followed by some bootloader code to load to RAM/SDRAM?

=>No, you can use the flexspi_nor_debug, this will download the code to the external flash, then reboot still works.

 

3. When text is loaded to FlexSPI, is it later executed in place or loaded to RAM?

=> flexspi_nor_debug, flexspi_nor_sdram.

 

Wish it helps you!

Best Regards,

Kerry

 

0 Kudos
1,846 Views
igrinberg
Contributor II

Hi @kerryzhou ,

Thanks for your reply!

Regarding 3 - it didn't really answer my question.

igrinberg_0-1641281607070.png

Referring to the highlighted part from the Reference Manual document:

1. How do I know if these SDK images XIP or non-XIP?

2. How the destination RAM is determined?

 

Thanks,

Ira.

0 Kudos
1,843 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @igrinberg 

   In fact, I suggest you use the MCUXPresso IDE project, it will be more easy to understand it.

  Answer your question:

1. How do I know if these SDK images XIP or non-XIP?

Answer: XIP is the code is located to the external flash, as you know, the RT1170-EVK exernal QSPI flash address is 0X30000000

kerryzhou_0-1641283371182.png

If the code runs in the external flash directly, it is XIP.

NoneXIP, the code runs internal RAM,  or SDRAM.

The direct checking is, generate the .s19 file, then check the app code address, if it is in the external flash, it is XIP, if it is internal RAM, then it is none xip.

kerryzhou_1-1641283619275.png

You can see, the IVT is the flash address, 0X30008160, it is the flash address.

You also can debug the code, check the running code place.

So, flespi_nor_debug is XIP.

2. How the destination RAM is determined?

Check linker file, in fact, it just define the data in the internal RAM.

kerryzhou_2-1641283763395.png

if RAM, check the linker file:

kerryzhou_3-1641283860360.png

 

Wish it helps you!

Best Regards,

Kerry

 

0 Kudos
1,834 Views
igrinberg
Contributor II

Hi @kerryzhou,

My final goal in the project is to have the image in the external flash, then in the boot process to load it and run it from the external SDRAM (because the image is too be to reside in the internal RAM).

How can this be achieved in IAR environment?

Thanks,

Ira.

0 Kudos
1,827 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @igrinberg ,

   Check this post, it will helps you!

https://community.nxp.com/t5/i-MX-RT-Knowledge-Base/RT1050-SDRAM-app-code-boot-from-SDcard-burn-with...

   You can know how to generate the sdram code, then you just need to use the tool download it to the external flash.

  to IAR, just modify the text, interrupt to the 0X80002000.

kerryzhou_0-1641288653853.png

 

Wish it helps you!

If you still have question, you can create a new post, we will help you how to run in SDRAM and download to the flash in details. Normally, one question topic to one post.

Best Regards,

Kerry

 

0 Kudos
1,814 Views
igrinberg
Contributor II

Thanks @kerryzhou !

I'll open a dedicated thread in case of further questions.

 

Thanks,

Ira.