Bugzilla – Bug 12272
Channel Swap (causes Test Tone to fail)
Last modified: 2009-09-08 09:29:08 UTC
Playing the built in test tone, bass and mid may fail to play or cut in and out
This is caused by audio channels swapping left and right. We updated the test file to make it so it doesn't matter if the channels swap. So, I'm sending to Richard to fix the swap issues (not necessary for PB2).
With the new test tone, moving the volume knob to 0 then back up, when the tone is playing will cause it to stop or act badly
And the tone stops for me too after a while.
This could be due to imx25 errata ENGcm09835. Implemented a change in svn r6064 that needs to be tested.
Fix from Freescale in r6435. From Sammy @ freescale: SSI underrun reduced much since two FIFOs are used. In same condtion, it is reduced from 100 times to 5~6 times with same audio playback duration in my side. There is no audio swap since left channel is put to FIFO0, right channel is put to FIFO1 even with underrun. Current SSI underrun was caused by the high overloading in EMI bus. The SDMA core needs to access data in the context and descriptor almost all the time, and the data is in EMI currently. In order to speed up the SDMA data transaction, putting SDMA content and description data in the IRAM will decrease the EMI loading because IRAM access bypass the EMI. And also current audio data are located in the IRAM, the audio playback is isolated from the heavy EMI loading that's caused by other routines, such as display rotation, audio codec, LCD update, etc.
The last patch distorted the left channel, a new version has been checked in r6454. This one sounds good, and fixes the SSI underruns.