I have an application running on the Cortex A9 port that will randomly crash and lock up the entire system.
Every time this happens the PC stops at the first instruction in vPortEnterCritical() which is the “CPSID i”, disable interrupts instruction.
It is not causing an exception. What I observe is that the system becomes unresponsive. If I try to halt the processor through JTAG it will not let me open a debug context.
The only way of knowing what happened is by reading the Program Counter Sampling Register (DBGPCSR) while the CPU is running. It always stops at the same instruction which is in vPortEnterCritical().