SDK Version: ti-processor-sdk-rtos-j721e-evm-08_06_00_12
DMA Driver: vision_apps/utils/udma
Hi,
I was implementing the following scenario using a couple of DRU channels:
- STEP1: Initialise 1st DRU channel using "appUdmaCopyNDGetHandle".
- STEP2: Initialise 2nd DRU channel using "appUdmaCopyNDGetHandle".
- STEP3: for N iterations:
- STEP3_1: Copy srcBuffer1 to dstBuffer1 using 1st channel using "copy_mode" 0.
- STEP3_2: Copy srcBuffer2 to dstBuffer2 using 2nd channel using "copy_mode" 0.
- STEP3_3: Copy srcBuffer3 to dstBuffer3 using 1st and 2nd channels in ping_pong using "copy_mode" 2.
- STEP4: DeInitialise 1st DRU channel using "appUdmaCopyNDReleaseHandle".
- STEP5: DeInitialise 2nd DRU channel using "appUdmaCopyNDReleaseHandle".
During the execution of STEP3_3, DRU channels seems to randomly hung and wait indefinitely for __EFR event.
This issue only happens in STEP3_3 and only when we switch to copy_mode 2.
Regards.