rhr
rhr

Reputation: 21

TI AM572x Cortex-A15 CPU core stuck

I have a problem with stability running TI AM5728 based custom board, similar to the Beaglebone X15. RTOS SW is running on one Cortex-A15 core MPU0 and sporadically (most often after several hours) freezes. When freezes it is impossible to connect to the MPU0 target by debugger, at the same time I can without any problems connect to the MPU1.

Debugger error:

CortexA15_0: Trouble Halting Target CPU: (Error -1323 @ 0x1386AC) Device failed to enter debug/halt mode because pipeline is stalled. Power-cycle the board. If error persists, confirm configuration and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 6.0.504.1)

For test purposes, I have started the simple program on the MPU1, and when MPU0 freezes MPU1 continue normal operation. WFE and WFI flag for MPU0 is inactive, moreover, I have made the additional test with trying to put MPU1 to the WFI/FORCED_OFF state. However, I still can connect with debugger and wakeup it from the FORCED_OFF state, as described in the technical manual.

I have dumped the registers by connection to the CS_DAP_DebugSS and have not found anything special. Register dump attached:

MPU_PRCM_PRM_C0_PM_CPU0_PWRSTCTRL

MPU_PRCM_DEVICE_PRM_RSTST

MPU_WUGEN_WKG_CONTROL_0

MPU_PRCM_CM_C0_CM_CPU0_CLKSTCTRL

What can be the potential stuck problem of just one core with failed attempts to connect with the debugger and second core running without problems?

Which hardware/software problem can potentially cause such behavior?

Thank you for any suggestions.

Upvotes: 0

Views: 488

Answers (1)

user10590848
user10590848

Reputation: 11

I just encounter the exact same problem. Did you check your code at the address provided with the JTAG error (Error -1323 @ 0x1386AC)? In my case it is an GPMC access, to a FPGA, which I can still access through CS_DAP_DebugSS. I'm currently looking at errata i878, from revision L of the document. As it can take more than 48h to hang under stress test, I won't blindly apply the workaround. I'll modify my test, based on i878, trying to increase the failure rate, then I'll apply the workaround.

Upvotes: 1

Related Questions