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.

SYS/BIOS audio example for LCDK

There's a nice audio loopback example in pdk_C6748_2_0_0_0\biospsp_03_00_01_00\drivers\examples\evm6748\audio.

I've tried this on the LCDK and it doesn't appear to work. Apparently it was written for and tested on the EVM6748. Is there a similar example for the LCDK or can someone tell me what modifications are necessary to make this example work on the LCDK?

I've read elsewhere (http://e2e.ti.com/support/dsp/tms320c6000_high_performance_dsps/f/115/p/269562/974501.aspx) that the LCDK uses a different McASP channel than the EVM6748, for instance.

  • Answering my own question...

    EVM uses serializers 11 and 12 LCDK uses serializers 13 and 14. You need to tell the driver to use the right serializer and you need to modify the platform support to enable those pins. Here are the code changes.

    diff --git a/CDDSP/audio/src/audioSample_io.c b/CDDSP/audio/src/audioSample_io.c
    index fd8ff86..113c40b 100644
    --- a/CDDSP/audio/src/audioSample_io.c
    +++ b/CDDSP/audio/src/audioSample_io.c
    @@ -163,9 +163,10 @@ Mcasp_HwSetupData mcaspXmtSetup = {
    /* McBsp channel parameters */
    Mcasp_ChanParams mcasp_chanparam[Audio_NUM_CHANS]=
    {
    + /* input */
    {
    0x0001, /* number of serialisers */
    - {Mcasp_SerializerNum_12, }, /* serialiser index */
    + {Mcasp_SerializerNum_14, }, /* serialiser index */
    &mcaspRcvSetup,
    TRUE,
    Mcasp_OpMode_TDM, /* Mode (TDM/DIT) */
    @@ -179,9 +180,10 @@ Mcasp_ChanParams mcasp_chanparam[Audio_NUM_CHANS]=
    TRUE,
    TRUE
    },
    + /* output */
    {
    0x0001, /* number of serialisers */
    - {Mcasp_SerializerNum_11,},
    + {Mcasp_SerializerNum_13,},
    &mcaspXmtSetup,
    TRUE,
    Mcasp_OpMode_TDM,
    diff --git a/CDDSP/biospsp/platforms/evm6748/src/audio_evmInit.c b/CDDSP/biospsp/platforms/evm6748/src/audio_evmInit.c
    index 7cb9f44..8c9bbc1 100644
    --- a/CDDSP/biospsp/platforms/evm6748/src/audio_evmInit.c
    +++ b/CDDSP/biospsp/platforms/evm6748/src/audio_evmInit.c
    @@ -115,7 +115,7 @@ void configureAudio(void)

    /* write to the pinmux registers to enable the mcasp0 and i2c0 */
    syscfgRegs->PINMUX0 = (savePinmux0 | 0x01111111);
    - syscfgRegs->PINMUX1 = (savePinmux1 | 0x00011000);
    + syscfgRegs->PINMUX1 = (savePinmux1 | 0x00000110);
    syscfgRegs->PINMUX4 = (savePinmux4 | 0x00002200);
    }