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.

EDMA3 error

Other Parts Discussed in Thread: SYSBIOS

Hi all!

I am debugging my DSP application on c6747. App writes precalculated samples of sinusoid signal to McASP using EDMA3 ping-pong, no SYSBIOS. When I first launch it, it works well. But if I do stop debugging and launch again (without any source code changes) app gets stuck. In McASP regs RSTAT RDMAERR bit as well as XSTAT XDMAERR bit are setted up. But there is no errors in any of EDMA regs. Of course, no EDMA interrupts happens. I don't know what to try and what is the reason. Currently I am just reset DSP every time. Need help!

Regards.

  • Sergey,

    If you stop the processor while streaming is happening, there is no guarantee that the streaming will be unaffected. The only clean solution is to reset the DSP every time.

    The EDMA will continue running, responding to events from the McASP and setting the IPR register to flag an interrupt when a transfer set has completed. The McASP may continue running, or there may be ways to control that if you wish - it just depends on the control registers available on that device. But the processor will definitely not be responding to the interrupts or updating/consuming data in the ping-pong buffers.

    If the DSP interaction is required after buffers have been filled or emptied, then there may be no choice but to reset the DSP every time.

    What are the exact steps you are taking when you 'do stop debugging and launch again'? That could describe a few different scenarios.

    Regards,
    RandyP
  • Hi, RandyP!
    Thank you very much for good explanation. I think I have understood the idea.
    Actually I press 'Terminate' button and then 'Debug' button again.
  • Let me ask one more question related to topic. I have seen that writing 0 to McASP GBLCTL does not clean error state in RSTAT and XSTAT registers. Is there any trick to 'soft' reset McASP state?

    Regards.
  • Sergey,

    I do not know anything that is not in the McASP User Guide. It would help you, I think, to post this new question as a new thread on the forum since people looking to answer questions would see it more easily.

    Regards,
    RandyP