S32K312-Unable to disable reset threshold function

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

S32K312-Unable to disable reset threshold function

1,716 Views
Simon-Liu
Contributor V

Hello

When using the DS tool to configure the Reset function, set [Functional Reset Escalation Threshold] to 0 in the [Power] component, that is, turn off the Reset Escalation Threshold function. Call the interface Power_Ip_PerformReset in the code to execute the Reset action. After 8 consecutive Resets, the MCU cannot be powered on.
Why can't the Reset Escalation Threshold function be turned off? How can I turn off this function so that the MCU can be reset infinitely?

SimonLiu_0-1689833575959.png

BestRegards

Simon

 

0 Kudos
Reply
9 Replies

1,701 Views
danielmartynek
NXP TechSupport
NXP TechSupport

Hi @Simon-Liu,

Which version of the RTD do you use?

 

BR, Daniel

 

 

1,686 Views
Simon-Liu
Contributor V

Hi @danielmartynek 

The information in the picture below is the version of RTD I am using, thanks.

SimonLiu_0-1689902164204.png

 

BestRegards

Simon

0 Kudos
Reply

1,664 Views
danielmartynek
NXP TechSupport
NXP TechSupport

Hi Simon,

In your setup, you probably see this behavior because you don't power cycle the MCU.

The driver clears the FRET register after POR or a desctructive reset only.

danielmartynek_0-1690204572323.png

My test project is attached.

Once the project is loaded, power-cycle the MCU and attach the debugger back without reset.

It will be stuck in the while(stop){} loop.

The stop variable can be cleared via the debugger once attached.

You should see that the Power_Ip_Init() clears the FRET register if DES != 0.

 

Regards,

Daniel

 

1,613 Views
Simon-Liu
Contributor V

Hi @danielmartynek 

I learned that the registers FRET and DRET are used to set the Reset Escalation Threshold, so I set these two registers to 0 before restarting to disable the Reset Escalation Threshold. When I set the Power Reset Type to FunctionalReset, the MCU can always reset by calling the Power_Ip_PerformReset interface; if I set the Power Reset Type to DestructiveReset, the MCU will be stuck and unable to operate after calling the Power_Ip_PerformReset interface Reset 8 times.
What is the reason for this?

Looking forward for your reply, thank you.

BestRegards

Simon

0 Kudos
Reply

1,588 Views
danielmartynek
NXP TechSupport
NXP TechSupport

Hi Simon,

Your observation seems to be right.

The DRET register is cleared only after POR.

If you trigger a functional descructive reset, DES[F_POR] = 0.

danielmartynek_0-1690537578703.png

But it should be cleared after any DES reset if the driver is configured with DRET = 0 (escallation disabled).

danielmartynek_1-1690537860970.png

It has been reported to the RTD team,

 

Regards,

Daniel

1,510 Views
Simon-Liu
Contributor V

Hi @danielmartynek 

Thank you for your answer.

I hope the RTD team can give the cause and solution of the problem as soon as possible.

 

BestRegards

Siomon

0 Kudos
Reply

1,212 Views
danielmartynek
NXP TechSupport
NXP TechSupport

Hi @Simon-Liu,

I'm sorry for the delay.

It is going to be fixed in this RTD version: BLN_RTD_4.7_S32K3XX_S32M27x_4.0.0

 

BR, Daniel

 

1,164 Views
Simon-Liu
Contributor V

Hi @danielmartynek 

Thank you for your reply, please let me know when this RTD is released.

BestRegards,

Simon

 

0 Kudos
Reply

1,646 Views
Simon-Liu
Contributor V

Hi @danielmartynek 

Thank you for your answer.

I checked your project and found that your code is the same as mine. In the Power_Ip_MC_RGM_ResetInit function in my project, there is also the processing of clears the FRET register if DES != 0. The attachment is my project. Please help to find out where the problem is.

BestRegards

Simon

0 Kudos
Reply