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.

TDA2PXEVM: RSYNCERR error when increasing the TDM slots number

Part Number: TDA2PXEVM


Hello TI Team,

I am trying to apply the loopback feature available for the McASP unit.

I modified the sinetone example specified in this path:

~/PROCESSOR_SDK_VISION_03_08_00_00/ti_components/drivers/pdk_01_10_04_05/packages/ti/drv/stw_lld/examples/mcasp/mcasp_sinetone 

This example is transmitting a sinetone on the codec then to the DAC.

I added the RX serializer and everything is working fine when the TDM slots number was 2.

anytime I change the number of slots to be higher than 2 e.g. 4 or 8, I receive an RX status error RSYNCERR however the data seems to be received correctly.

I am attaching the loopback folder for your reference.

/cfs-file/__key/communityserver-discussions-components-files/791/mcasp_5F00_loopback_5F00_test.tar.gz

for the slots number change, I only change the following variables in the code:

#define NUM_TDM_CHANNELS                  (8U)
#define TDM_MODE (8U)

if these definitions were 2 instead of 8, the RSYNCERR will not take place.

 

would you please take a look and let me know if I am missing anything?

This issue is blocking my progross, So, your input is highly appreciated.

Thanks and regards,

Ahmed 

  • Hello,

    to clarify more changes, the changes in NUM_TDM_CHANNELS, TDM_MODE defination should affect the following API:

    McASPRxTimeSlotSet -> to change the RTDMS field of the MCASP_RXTDM register

    McASPTxTimeSlotSet -> to change the XTDMS field of the MCASP_TXTDM register 

    McASPRxFrameSyncCfg -> to change the RMOD field of MCASP_RXFMCTL register

    McASPTxFrameSyncCfg -> to change the XMOD field of the MCASP_TXFMCTL register 

    Please let me know if you need any clarification from my side to handle this issue.

    Best regards,

    Ahmed 

  • This example is for I2S format which can only works with 2 slots.

    Regards,
    Stanley

  • Thanks Stanley for your reply, yes you are right, this example is  for I2S (2 TDM slots). I need to modify it to be suitable for my case (slot number = 8).

    as per the TRM (Table 26-403. McASP Receivers Global Initialization for TDM-Mode Operation,Table 26-408. McASP Transmitters Global Initialization for TDM-Mode Operation), I think the only changes I should do to increase the slots number are the previous mentioned registers (MCASP_RXTDM, MCASP_TXTDM, MCASP_RXFMCTL, MCASP_TXFMCTL).

    So, do you think that there are other changes in the McASP configuration to be handled to increase the slots number?

    also, I don't think that the EDMA configuration needs any changes but you can also confirms this.

    Thanks again for your help.

    best regards,

    Ahmed 

  • The issue is fixed after changing the frame sync width to be one bit instead of one word.

    Thanks,

    Ahmed