RT1165: reset system by using SRC

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

RT1165: reset system by using SRC

Jump to solution
643 Views
kyle81
Contributor II

Hi,

This is a question about how to reset whole system in CM4

The scenario is:

1. RT1165 boots from CM7 and run boot1 XIP,

2. boot1 will load boot2 into ITCM and CM7 will jump to execute boot2 in ITCM. 

3. boot2 will release CM4 and CM4 will execute APP XIP

I added codes in APP (CM4) as below, but it will take a very long time to reset system.

SRC_SetGlobalSystemResetMode(SRC, kSRC_M4RequestReset, kSRC_ResetSystem);
NVIC_SystemReset(); // or SRC_AssertSliceSoftwareReset(SRC, kSRC_M4CoreSlice);

So my question is why it will take a long time ~45s  to reset system in APP (CM4)?

If I put the same codes in boot2 (CM7 )or boot1 (CM7), it will reset system immediately.

SRC_SetGlobalSystemResetMode(SRC, kSRC_M7RequestReset, kSRC_ResetSystem);
NVIC_SystemReset(); // or SRC_AssertSliceSoftwareReset(SRC, kSRC_M7CoreSlice);

Is there any other way to reset whole system in CM4?

 

Thanks,

Kyle

0 Kudos
1 Solution
617 Views
Omar_Anguiano
NXP TechSupport
NXP TechSupport

Hello
Hope you are well

There are four situations, which will cause a reset event. They are:
• Power-on reset (POR)
• Global system reset request
• Software configuration
• Low-power mode transaction

My suggestion for resetting only the CM4 core is through software reset so the two methods applied(NVIC_SystemReset and AsserSliceSoftwareReset) are the correct way to reset the system.

Please check that all status flags or pending interrupts are cleared before reset to avoid this long time.

If you have more questions do not hesitate to ask me.
Best regards,
Omar

View solution in original post

0 Kudos
1 Reply
618 Views
Omar_Anguiano
NXP TechSupport
NXP TechSupport

Hello
Hope you are well

There are four situations, which will cause a reset event. They are:
• Power-on reset (POR)
• Global system reset request
• Software configuration
• Low-power mode transaction

My suggestion for resetting only the CM4 core is through software reset so the two methods applied(NVIC_SystemReset and AsserSliceSoftwareReset) are the correct way to reset the system.

Please check that all status flags or pending interrupts are cleared before reset to avoid this long time.

If you have more questions do not hesitate to ask me.
Best regards,
Omar

0 Kudos