This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to debug ARM register dump after a reset?

I'm using Tiva TM4C129XNCZAD based on 32-bit ARM® Cortex®-M4F in a TI_RTOS environment. I'm getting an unexpected reset during the normal flow of the system. After reset, I get the following register values. How can I understand what caused the reset using the below register values?

0xffffffff
R1 = 0x00000000  R9  = 0xffffffff
R2 = 0x2000a26c  R10 = 0xffffffff
R3 = 0x2000a26c  R11 = 0xffffffff
R4 = 0x2003ee54  R12 = 0x00000000
R5 = 0x20000a80  SP(R13) = 0x20034e18
R6 = 0x2003d664  LR(R14) = 0x00073135
R7 = 0x2003bbc4  PC(R15) = 0x00000000
PSR = 0x60000000
ICSR = 0x0440f803
MMFSR = 0x00
BFSR = 0x00
UFSR = 0x0002
HFSR = 0x40000000
DFSR = 0x00000001
MMAR = 0xe000ed34
BFAR = 0xe000ed38
AFSR = 0x00000000
Terminating execution...


  • I recommend to ask this in a ti-rtos forum. Without knowing when those register values were saved, any speculation is needless. 

    You can check the source of the rtos to find out.

  • I am not quite understanding that this is a register dump post-reset, but represents a fault that occurred pre-reset?

    Just a hunch, but your PC is 0.  That could occur via

    void (*fp)(void);
    ...
    fp = NULL;
    ...
    fp();

    Is that plausible in this case?