]> git.baikalelectronics.ru Git - kernel.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)
commite2c763dc14afe6fdbe21253cfa724cf21d20a8bf
treef05c31e2c83900d3a7881b8834563e464c23cb43
parentca09702717581356bb91e5bbfbb244eda384a004
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