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.

TDA4VM: TDA4VM restart remote processor issue

Part Number: TDA4VM
Other Parts Discussed in Thread: SYSBIOS

Hi,

When using following commands to restart the ==R5== remote processor, the Linux will get stuck in the zero out TCMs memory sometimes:

$ echo stop > state && echo start > state

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
static int k3_r5_rproc_prepare(struct rproc *rproc)
{
......
/*
* Zero out both TCMs unconditionally (access from v8 Arm core is not
* affected by ATCM & BTCM enable configuration values) so that ECC
* can be effective on all TCM addresses.
*/
dev_dbg(dev, "zeroing out ATCM memory\n");
memset(core->mem[0].cpu_addr, 0x00, core->mem[0].size);
dev_dbg(dev, "zeroing out BTCM memory\n");
memset(core->mem[1].cpu_addr, 0x00, core->mem[1].size);
......
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Thanks 

Alex

  • Hi Alex,

    What core are you trying to stop? What firmware are you running? Is this a TI example firmware or your own? What RTOS are you running on the firmware.

    The K3 remoteprocs need to be shutdown gracefully. The remoteprocs need to be idled and release all resources before it can be shutdown. This support will be added in a future SDK.

    If the remoteproc is not idled properly, then the shutdown would have been ineffective, and it will result in a hang on the next powerup.

    regards

    Suman

  • Hi, Suman

    I am runing myself firmware on mcu3_0 (sysbios).

    Alex

  • Hi Alex,

    MCU3_0 uses LPSC 96. You can read the corresponding PSC0 MDSTAT register value either using devmem2 or rwmem.

    The register is at 0x400980 [0x400000 (PSC0 base) + 0x800 (MDSTAT offset) + 0x180 (LPSC 96 *4)]. A clean shutdown will yield a value of 0x10a00. If you do not see this value, the next remoteproc start will result in a hang.

    regards

    Suman