1 Nov
2012
1 Nov
'12
10:59 p.m.
On 2 November 2012 01:57, Fabio Estevam fabio.estevam@freescale.com wrote:
Playing 24-bit format file leads to channel swap on mx28 and the reason is that the current driver performs one write/read to/from the SAIF_DATA register to trigger the transfer.
This approach works fine for S16_LE case because SAIF_DATA is a 32-bit register and thus is capable of storing the 16-bit left and right channels, but for the S24_LE case it can only store one channel, so in order to not lose the FIFO sync an extra read/write is needed.
Reported-by: Dan Winner DWinner@tc-helicon.com Signed-off-by: Fabio Estevam fabio.estevam@freescale.com Tested-by: Dan Winner DWinner@tc-helicon.com
Acked-by: Dong Aisheng dong.aisheng@linaro.org
Regards Dong Aisheng