Hi,
I have an issue with stopping and re-starting McASP Tx/RX DMAs using EDMA3. This is on a OMAP-L138.
We are using Starter Ware 1.10.03.03
Start sequence is:
-------------------
- Initialize EDMA3 (using EDMA3Init())
- request DMA channel (using EDMA3RequestChannel)
- configure MCASP
- enable DMA
- wait for XDATA to go low to ensure that all requests have been served
- start the McASP state machine
Stop sequence is
------------------------
- disable DMA and reset McASP
- free DMA channel (using EDMA3FreeChannel())
Re-start process is exactly the same as the start sequence above, except not calling EDMA3Init() the second time around. But, the code hangs in the XDATA check loop.
Is it possible to stop and re-start DMAs? Am I missing some step in that process? Can you please help?
Cheers,
-raja.