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.

Linux: McASP3 Testing

Other Parts Discussed in Thread: AM5718, DRA72, TLV320AIC3104, BEAGLEBOARD-X15

Tool/software: Linux

Hi,

We have developed a custom board with AM5718 processor and we are using ti-processor-sdk-linux-am57xx-evm-02.00.01.07. We are having McASP3 interface in the board and for MCLK we have connected to B26 ball of AM5718 processor. In AM572x EVM it is connected to D18. How to modify this in the dts file to generate MCLK for the device, rest all pins are connected to McASP3 signals similar to AM572x EVM only. Also please suggest me the testing procedure for McASP3 interface, I have never used this interface before.

Best Regards,

Ganesh

  • Ganesh Tenka said:
    With inclusion of atl node mentioned earlier, I am getting MCLK = 22.5792MHz

    You must not use ATL module. See AM571x DM:

    Audio Tracking Logic (ATL)  Not Supported (1)


    (1) Features noted as “not supported,” must not be used. Their functionality is not supported by TI for this family of devices. These features are subject to removal without notice on future device revisions. Any information regarding the unsupported features has been retained in the documentation solely for the purpose of clarifying signal names or for consistency with previous feature descriptions.

    Ganesh Tenka said:
    · CM_CLKSEL_ABE_PLL_REF[0] CLKSEL = 0x0

    Ganesh Tenka said:
    root@am57xx-evm:~# devmem2 0x4AE06108

    CM_CLKSEL_ABE_PLL_REF is at address 0x4AE0610C.

    0x4AE06108 is CM_CLKSEL_WKUPAON register.


    Please provide me CM_CLKSEL_ABE_PLL_REF/0x4AE0610C value and also the below registers values:

    CM_CLKSEL_ABE_PLL_BYPAS/0x4AE06114

    CM_CLKMODE_DPLL_ABE/0x4A0051E0
    CM_IDLEST_DPLL_ABE/0x4A0051E4
    CM_AUTOIDLE_DPLL_ABE/0x4A0051E8
    CM_CLKSEL_DPLL_ABE/0x4A0051EC
    CM_DIV_M2_DPLL_ABE/0x4A0051F0

    Ganesh Tenka said:
    But no change with the log

    Ganesh Tenka said:
    Please find the log,

    Below is what we have on AM572x TI EVM:

    root@am57xx-evm:~# arecord -l
    **** List of CAPTURE Hardware Devices ****
    card 0: BeagleBoardX15 [BeagleBoard-X15], device 0:
    davinci-mcasp.0-tlv320aic3x-hifi tlv320aic3x-hifi-0 []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    root@am57xx-evm:~# arecord -d 10 -f cd -t wav audio.wav
    Recording WAVE 'audio.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
    root@am57xx-evm:~#


    Can you provide me the output of the below command?

    root@am57xx-evm:~# arecord -l

    Also you have MCASP_AHCLKXCTL/0x484680B4 = 0x18000, which means that bit [15] HCLKXM = 0. This is not correct, change it to 1.

    Regards,
    Pavel

  • Pavel,

    CM_CLKSEL_ABE_PLL_REF ( 0x4AE0610C )value is also zero. I have checked. I will update you the remaining register values tomorrow.


    Best Regards,
    Ganesh
  • Pavel,

    Audio is working now. Actually there is an issue(tlv320aic3x-codec 0-0018: Unable to sync registers 0x1-0x1. -121) with I2C communication as well, so we worked in this regard. In EVM reference schematic, IOVDD is given 3.3V, we have also done that, but in datasheet it is mentioned that max voltage is 3.3V, nominal is 1.8V. So we have given 1.8V supply to IOVDD. Now I2C communication with audio IC is fine, and all the clocks are generated properly, able to play audio files. With 20MHz/22.5792MHz MCLK is working fine.
    Thankyou so much for your support.

    Best Regards,

    Ganesh

  • Ganesh,

    Glad to see this is working. Seems like AIC3x codec driver is made up generic, which means able to work with both 20MHz and 22.5792MHz.

    Regards,
    Pavel