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.

DM355 daughter sound card problem

Hi All,

 

I am developing driver for daughter sound card on DM355.

 

I2C is working fine and the ioctl's are working fine but recording is not working.

 

There are 2 McBSP bus (McBSP1 and McBSP2) used for DMA transfer out of which McBSP1 is used for the sound daughter card.

Audio format is I2S.

Following is the configuration that I tried:

#define DEFAULT_BITPERSAMPLE         256

#define AUDIO_RATE_DEFAULT              8000

#define    AUDIO_MCBSP              DAVINCI_MCBSP1

McBSP1 is configured as slave for recording.

Below is configuration for McBSP1:

    .spcr2 = FREE | XINTM(3),
    .spcr1 = RINTM(3),
    .rcr2 = RWDLEN2(DAVINCI_MCBSP_WORD_16) | RDATDLY(1),
    .rcr1 = RFRLEN1(1) | RWDLEN1(DAVINCI_MCBSP_WORD_16),
    .xcr2 = XWDLEN2(DAVINCI_MCBSP_WORD_16) | XDATDLY(1) | XFIG,
    .xcr1 = XFRLEN1(1) | XWDLEN1(DAVINCI_MCBSP_WORD_16),
    .srgr1 = FWID(DEFAULT_BITPERSAMPLE - 1),
    .srgr2 = FSGM | FPER(DEFAULT_BITPERSAMPLE * 2 - 1),
    /* configure McBSP to be the I2S master */
    .pcr0 = FSXM | FSRM | CLKXM | CLKRM | CLKXP | CLKRP,

 

Daughter card is configured for 16bit word, 8000KHz and 256bits per sample.

 

But I don't get any interrupt for recording.

Please can anyone help to sort out the problem.

 

Thanks,

Azam.

  • are you aware that there is an audio OSS Linux driver included with the DVSDK?  Our DM355 EVM has an AIC33 part along with the Linux driver to exercise audio.

  • Hello Gonzales,

     

    Thanks for the suggestion. I am already aware of the OSS driver layer that is present in for AIC33 with the DVSDK. I have modified the same driver for the daughter sound card that I am using. AIC33 uses McBSP2 for audio I2S transfer. But the sound daughter card that I am using uses McBSP1 which is connected to DC3 on the DM355 board. DEFAULT_BITPERSAMPLE sample is 16 in case of AIC33, but I have set it to 256.