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: Using UDMA Copy on MCU2_1

Part Number: TDA4VM

Hello,

We have been working with PSDK RTOS 06_02_00_21 so far.
And now we are working on migrating our code base to PSDK RTOS 07_00_00_11 (and in the future to 07_01_00_11).

There is system hanging observed only when our custom node is running on MCU2_1.
When our custom node is running on MCU2_0 - no hanging is observed. But we need it to be running on MCU2_1 for performance reasons.
The same node runs on another IPU with no hanging observed in PSDK RTOS 06_02_00_21.
In PSDK RTOS 07_00_00_11 the master IPU was changed from MCU2_1 to MCU2_0.

After some debugging we found out that the reason of the hanging was a UDMA copy call from the node running on MCU2_1.

The UDMA Copy is being initialized successfully based on the logs from sourcing vision_apps_init.sh
[MCU2_1]      3.928359 s: UDMA: Init ... !!!
[MCU2_1]      3.929261 s: UDMA: Init ... Done !!!

We are using the following function for udma copying:

appUdmaCopy1D(NULL, &prms);

And the hanging occurs at: vision_apps/utils/udma/src/app_udma.c, fn: appUdmaTransfer

SemaphoreP_pend(ch_obj->transfer_done_sem, SemaphoreP_WAIT_FOREVER);

The hanging is not observed when the node is running on MCU2_0. It was not observed in PSDK RTOS 06_02_00_21 as well.
Any suggestions or recommendations would be appreciated!

Best Regards,
Todor