]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
ASoC: davinci-mcasp: Correct rx format unit configuration
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Thu, 4 Sep 2014 07:52:53 +0000 (10:52 +0300)
committerMark Brown <broonie@kernel.org>
Thu, 4 Sep 2014 11:44:49 +0000 (12:44 +0100)
commitfe0a29e163a5d045c73faab682a8dac71c2f8012
treef05c31e2c83900d3a7881b8834563e464c23cb43
parent7d1311b93e58ed55f3a31cc8f94c4b8fe988a2b9
ASoC: davinci-mcasp: Correct rx format unit configuration

In case of capture we should not use rotation. The reverse and mask is
enough to get the data align correctly from the bus to MCU:
Format   data from bus    after reverse (XRBUF)
S16_LE:  |LSB|MSB|xxx|xxx|  |xxx|xxx|MSB|LSB|
S24_3LE: |LSB|DAT|MSB|xxx|  |xxx|MSB|DAT|LSB|
S24_LE:  |LSB|DAT|MSB|xxx|  |xxx|MSB|DAT|LSB|
S32_LE:  |LSB|DAT|DAT|MSB|  |MSB|DAT|DAT|LSB|

With this patch all supported formats will work for playback and capture.

Reported-by: Jyri Sarha <jsarha@ti.com> (broken S24_3LE capture)
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
sound/soc/davinci/davinci-mcasp.c