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.

How to produce a soft reset of TMSC6748?

How to produce a soft reset of C6748. I need to use soft reset in my code

  • Hi,

    Please Check out "C6748 Technical Reference Manual".
    www.ti.com/.../spruh79a.pdf

    On Page 142 Section 7.3.4
    PLLC0 Reset Control Register (RSCTRL)

    You need to write a key value to unlock this register and after that you need to set its "bit 16" to do a software reset.
  • Hello,

    You can use SWRST bit in RSCTRL register to implement soft reset in your code. Please refer section 7.3.4 in C6748 TRM for more details.

    You can also refer the below thread in which the similar query is already addressed.

    https://e2e.ti.com/support/dsp/tms320c6000_high_performance_dsps/f/115/t/114802

    Regards,

    Senthil

  • Hi,
    I've modified the LED code to do this reset demonstration, it worked well.

    The following LED blink code would reset after 20th time of LED blink.

    #define RSCTRL 0x01C110E8 // RSCTRL register (reset)
    unsigned int* rsctrl = ( unsigned int* )RSCTRL;

    while(1)
    {

    count++;

    GPIOPinWrite(SOC_GPIO_0_REGS, 109, GPIO_PIN_LOW);

    Delay(1000000);

    GPIOPinWrite(SOC_GPIO_0_REGS, 109, GPIO_PIN_HIGH);

    Delay(1000000);

    if (count == 20)
    {
    *rsctrl = 0x5A69; //key unlock

    *rsctrl &= ~(1 << 16); //Assert reset bit

    *rsctrl = 0; //key lock

    printf("RESET done.\n"); // this line won't hit due to reset

    }
    }