This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS570LC4357: Invalidate cache causes reset

Part Number: TMS570LC4357
Other Parts Discussed in Thread: LAUNCHXL2-570LC43

Tool/software:

I am using the development board LAUNCHXL2-570LC43.  I wrote code for a bootloader over CAN and Serial with the FLASH API. The code I started with was generated by the HAL code generator tool.

 If I have cache disabled everything is fine.  If I enable cache, when I call the function _dCacheInvalidate_(), the processor resets. The invalidate cache code is generated by the HAL tool:

_dCacheInvalidate_
MOV R0,#0
DSB
MCR P15, #0, R0, C15, C5, #0
DSB
bx lr
.endasmfunc

This appears correct.

Can you tell me what could be causing a reset.  I need to invalidate cache after a flash erase or flash write.

  • Hi Christopher,

    I never tested "_dCacheInvalidate_", however it should not cause reset.

    Are you using watchdog in your application? I am suspecting that maybe a watchdog reset happening due to core stuck at "_dCacheInvalidate_".

    --
    Thanks & regards,
    Jagadish.