]> 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)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 8 Aug 2011 17:23:06 +0000 (10:23 -0700)
commit32910025980f24cab5061901d9b1249c2b2574b2
treed5df46b45e4f82d8489afe8554d8c25a164ba518
parentd0a11cb1254411fd1d60084cd8498e8512cd6075
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: Greg Kroah-Hartman <gregkh@suse.de>
sound/soc/blackfin/bf5xx-i2s-pcm.c