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.

McASP disabled TDM slots

I have configured the L138 McASP from the DSP side to use 16 TDM slots on both rx and tx, serviced by EDMA.  This works.  Now I want to disable some of those slots.  I thought all I'd have to do is modify RTDM/XTDM and change the dma BCNT to match the new number of enabled slots, but I get a transmit underrun.  Any ideas?

Thanks,
Elron

  • Hello, as far as the McASP setup, I don't think you need to do anything more.  So I would suggest looking at DMA configuration.

    One question: do you have the AFIFO enabled or disabled?  If enabled, have you made the appropriate adjustments to its configuration?

  • For the DMA configuration, other than BCNT I don't see anything that should depend on the number of TDM slots.  Each active slot should trigger a DMA event, and that should cause a transfer ACNT (= 4 * number of serializers) bytes.  BCNT matches the number of active slots (events) so at the end of the frame, the linked PaRAM is loaded and the transfer complete interrupt is asserted.  Am I missing something here?

    I don't have the AFIFOs enabled, but if I did, wouldn't I configure NUMDMA and NUMEVT based on the number of serializers, not the number of slots?