Hi.I've got a problem with playing audio in i.mx28 EVK.Would anyone help me?Thanks.
Details showed follow:
Steps to Reproduce:
Loop to playback a small sound file(such as a WAV with 3 seconds).For example,execute shell script bellow:
echo "aplay again..."
aplay test.wav #play a small audio file which hold 3 seconds.
The audio should work without trouble forever.
After repeat-playing for some times(maybe several hours or more),the "aplay" would be blocked.Then,neither re-executing "aplay" nor reloading audio-related drivers(alsa driver,sgtl5000,DAI,DMA,and so on.. ) can solve this problem until reboot the system.
i.mx28 audio works unexpected. Audio data can not be sent to I2S's FIFOs from DMA module.
We have approved that: the problem takes because of data in DMA module can not be sent to I2S's FIFOs(Note that,we wrote audio data directly to HW_SAIF_DATA after problem appeared,the audio data was sent to sgtl5000 immediately ).When problem appeared,we record the registers value as follow: HW_APBX_CTRL1 = 0x00500000 HW_APBX_CTRL2 = 0x0 HW_APBX_CH4_CURCMDAR = 0x40c0a3c0 HW_APBX_CH4_NXTCMDAR = 0x40c0a360 HW_APBX_CH4_CMD = 0x2000000e HW_APBX_CH4_BAR = 0x40c20020 HW_APBX_CH4_SEMA = 0x00010000 HW_APBX_CH4_DBG1 = 0x0160000d HW_APBX_CH4_DBG2 = 0x20001fe0