]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ASoC: Fix Blackfin I2S _pointer() implementation return in bounds values
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Mon, 13 Jun 2011 11:14:07 +0000 (12:14 +0100)
committerPaul Gortmaker <paul.gortmaker@windriver.com>
Thu, 17 May 2012 15:21:08 +0000 (11:21 -0400)
commit67f0639f65b1109f25ad7a9827b392705582f7b3
treee2a1cd6cb098863d249867265231362bfa134fc5
parent6fb7c40b505e5a2fd57164a7d5bd7f9e2a6a5ede
ASoC: Fix Blackfin I2S _pointer() implementation return in bounds values

commit e999dc50404d401150a5429b6459473a691fd1a0 upstream.

The Blackfin DMA controller can report one frame beyond the end of the
buffer in the wraparound case but ALSA requires that the pointer always
be in the buffer. Do the wraparound to handle this. A similar bug is
likely to apply to the other Blackfin PCM drivers but the code is less
obvious to inspection and I don't have a user to test.

Reported-by: Kieran O'Leary <Kieran.O'Leary@wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
sound/soc/blackfin/bf5xx-i2s-pcm.c