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.

RM57 warm reset and cold reset

Other Parts Discussed in Thread: TMS570LC4357

We are using RM57/TMS570LC4357 in a product and we are testing ram swap feature to understand if it can be helpful for us..

We are able to run a ram app different from the main flash app using the CPU_RESET method after swapping RAM/FLASH addresses. The only change we need to do is to reconfigure pinmux.

The ram app is able to relaunch the main flash app through a cold reset, done via SYSECR (Global System reset). Is this assumption correct? We tested also watchdog reset via WDKEY.

Do the RM57 got true hardware reset after the Global System reset?

Is there any information about RM57 register/module issue after a SYS_RESET or a WDOG_RESET?

Regards

Luciano

  • Hi Luciano,

    The main purpose of running from RAM is for faster debugging. After the memory swap, the flash can only be accessed up to the size of the RAM (512K). 

     To swap SRAM and flash, the following registers should be programmed:

    *(int *) 0xffffffc4 = 0x05050505;  //BMMCR1 register
    *(int *) 0xffffffcc = 0x00000001;  //CPURSTCR register
    *(int *) 0xffffffcc = 0x00000000;  //CPURSTCR register

    For RM57x, after the memory swap, the SRAM should be cleared to prevent the ECC error:

    *(int *) 0xffffff5c = 0x0000000a;  //MINITGCR register
    *(int *) 0xffffff60 = 0xffffffff;
    *(int *) 0xffffff5c = 0x00000005;

    Do the RM57 got true hardware reset after the Global System reset?

    To swap the memory, the CPU reset should be issued after swap is enabled.

    Is there any information about RM57 register/module issue after a SYS_RESET or a WDOG_RESET?

    After reset, the swap will be disabled. If you want to use swap again, you have to re-enable it. 

    To use swap feature, the stack in linker cmd script ashould be mapped to Flash instead of RAM.