Question of MIMXRT1011 FlexSPI Software Reset

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

Question of MIMXRT1011 FlexSPI Software Reset

1,092 Views
tim342514
Contributor I

Dear all, 

      I tried to use FlexSPI to access external flash on MIMXRT1010-EVK. Therefor, my program was broken down at software reset. I also tried to prove the reason is software reset by calling software reset function only, but it can success execute. Thus, I want to ask the following question: 

1. What does FlexSPI do when execute software reset command?

2. Does it have the problem when the program flash and the external flash use the same FlexSPI module but different port? (For example: program flash use FlexSPI portA, external flash use FlexSPI portB)

0 Kudos
5 Replies

1,066 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi tim342514,

   When you use FlexSPI to access external flash, do you download the code to the internal RAM or to the external flash directly?

   Do you try this project?

SDK_2.8.2_EVK-MIMXRT1010\boards\evkmimxrt1010\driver_examples\flexspi\nor\polling_transfer

  Please also give me more details about your program, load in the flash or the RAM?

   FlexSPI operation needs to put in the internal RAM, as the external QSPI flash can't support the RWW function.

   You can share me some of your code which can reproduce the issues, or you can simplify your project which can reproduce the issues in the MIMXRT1010-EVK board, and attached it, then I will help you to check it on my side.

  Answer your two questions:

1. What does FlexSPI do when execute software reset command?

Answer: I think after you reset, the flexSPI module is reset, then you need to configure the flexspi module again.

2. Does it have the problem when the program flash and the external flash use the same FlexSPI module but different port? (For example: program flash use FlexSPI portA, external flash use FlexSPI portB)

Answer: About this question, please read this application document, it will be useful to you:

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

 

Wish it helps you!
If you still have questions about it, please kindly let me know!
Best Regards,
Kerry
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-----------------------------------------------------------------------------

0 Kudos

1,057 Views
tim342514
Contributor I

Hi @kerryzhou ,

      Thanks for your reply. When I use FlexSPI to access external flash, I download code to the external flash. My code and hardware can see at the following figure: 

FlexSPI Setting-Page-1.pngFlexSPI Setting-Page-2.png

      The code will run into hardware fault when do software reset in "FLEXSPI_init" function.

      I will read the application note to examine my code.

Best Regards,
Jhewei, Syu

0 Kudos

1,048 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi tim342514,

   When you run the FLEXSPI_init, do you try to copy it to the RAM, and run it in the RAM? Even the software reset also in the RAM, whether it still have issues or not?

 

Wish it helps you!
If you still have questions about it, please kindly let me know!
Best Regards,
Kerry
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-----------------------------------------------------------------------------

0 Kudos

1,022 Views
tim342514
Contributor I

Hi @kerryzhou ,

      Thanks for your reply. I tried to use "__RAMFUNC(RAM2)" for executing subroutine at RAM2 (SRAM_ITC). I use this method to let "FLEXSPI_init" execute at RAM, but the code will also run into hardware fault.

Remark:

Before use __RAMFUNC: Flash/SRAM_DTC/SRAM_ITC/SRAM_OC: 26968/4408/0/0 byte

After use __RAMFUNC: Flash/SRAM_DTC/SRAM_ITC/SRAM_OC: 27028/4408/440/0 byte

Best Regards,
Jhewei, Syu

0 Kudos

981 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi tim342514,

  Which IDE you are using? Do you debug your code? Whether when you do the FLEXSPI_init code, it is really in the RAM address or not?

   Do you try to copy all the code to the RAM, whether the operation can success or not?

Best Regards,

Kerry

0 Kudos