The eMcem_Fccu_ClearFault function within eMcem_Fccu_Init failed to clear errors.

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

The eMcem_Fccu_ClearFault function within eMcem_Fccu_Init failed to clear errors.

Jump to solution
318 Views
Allen_863
Contributor III

I found that eMcem_Fccu_ClearFault is always returning E_NOT_OK. I tried increasing FCCU_MAX_FAULT_CLEAR_COUNT_U8, but it still doesn't clear.

Q9.png

I have configured FCCU_ERR0 and FCCU_ERR1.

Q8.png

I have configured the Handlers for FCCU_0_IRQn and FCCU_1_IRQn as FCCU_ALARM_ISR and FCCU_TIMEOUT_ISR, respectively.

Q7.png

Then I tried setting FAULT GROUPS to DISABLE, but it still returned E_NOT_OK. What else could be the reason?

Q6.png

Tags (3)
0 Kudos
Reply
1 Solution
301 Views
danielmartynek
NXP TechSupport
NXP TechSupport

Hi @Allen_863,

This issue might be caused by active NCF faults. There is a known hardware issue with the NCF[0] lockstep error, which can be triggered when attaching a debugger.
Workaround: Avoid resetting the S32K device via the debugger. Instead, allow the application to start without the debugger (for example, insert a while(true) loop in the code), and then attach the debugger without causing a reset. This approach prevents raising the NCF[0] fault.
You can also check the NCF status registers to see if any faults are present when you observe the failure during eMcem_Init().

 

Regards,

Daniel

View solution in original post

0 Kudos
Reply
1 Reply
302 Views
danielmartynek
NXP TechSupport
NXP TechSupport

Hi @Allen_863,

This issue might be caused by active NCF faults. There is a known hardware issue with the NCF[0] lockstep error, which can be triggered when attaching a debugger.
Workaround: Avoid resetting the S32K device via the debugger. Instead, allow the application to start without the debugger (for example, insert a while(true) loop in the code), and then attach the debugger without causing a reset. This approach prevents raising the NCF[0] fault.
You can also check the NCF status registers to see if any faults are present when you observe the failure during eMcem_Init().

 

Regards,

Daniel

0 Kudos
Reply