DSP/BIOS 5.33.06, Spectrum Digital OMAP-L137 + DSKDA830, CCS v3.3
Hi,
I use the omap-l137 Spectrum Digital Board with the DSKDA830 audio extender. Finally I got audio input/output working based on DMA transfers. This works fine but there is one thing which I do not understand.
Once finished with the DMA stuff I found another periodic (DSP/BIOS PRD) function call which I used earlier but no longer need. The corresponding timer is setup to define a tick as 1000 microsecs.I changed this to 10 microsecs and under specific circumstances, my DMA processing stops working after a short time: It seems that the DMA loop is still running ( I see the paRAM sets being modified propperly) BUT the transfer complete interrupt service routine seems to be no longer called.
I do not expect that anyone ever had a similar problem, however, maybe someone has an idea where to look at to find the reason. I found out that the EDMA IPR register is set to 1 for receive and transmit, hence the interrupt seems to be initiated by the EDMA channel controller. And also, I see that the flag in the EVTFLAG register of the interrupt controller is set so that this event seems to arrive at the interrupt controller (it seems, however, that this flag is always set anyway).
Is there a register where I might see wether there has been a specific error that blocks away the interrupts? Where would I be able to track that my interrupt has been disabled?
By the way: Is there a clock cycle counter register on the DSP core of the omap-l137? I would like to measure the duration in cycles for a specific portion of code.
Best regards,
HT