summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2013-05-28 19:22:12 +0200
committerMark Brown <broonie@opensource.wolfsonmicro.com>2013-05-30 13:33:40 +0200
commit569ef65a973e19ec3327c8efbcf26bfc844af7e3 (patch)
tree4d6771752092b199cc9fb3a77add70f33667e009
parentASoC: blackfin: bf5xx-sport: Allow setting rx and tx mask independently (diff)
downloadlinux-569ef65a973e19ec3327c8efbcf26bfc844af7e3.tar.xz
linux-569ef65a973e19ec3327c8efbcf26bfc844af7e3.zip
ASoC: blackfin: bf5xx-i2s: Allocate buffer only as large as requested
There is no need to always allocate the maximum buffer size. While we are at it also pass errors returned by snd_pcm_lib_malloc_pages() on to the upper layers. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r--sound/soc/blackfin/bf5xx-i2s-pcm.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/sound/soc/blackfin/bf5xx-i2s-pcm.c b/sound/soc/blackfin/bf5xx-i2s-pcm.c
index 8726c3ad4947..107c1c9b1cb6 100644
--- a/sound/soc/blackfin/bf5xx-i2s-pcm.c
+++ b/sound/soc/blackfin/bf5xx-i2s-pcm.c
@@ -66,10 +66,7 @@ static const struct snd_pcm_hardware bf5xx_pcm_hardware = {
static int bf5xx_pcm_hw_params(struct snd_pcm_substream *substream,
struct snd_pcm_hw_params *params)
{
- size_t size = bf5xx_pcm_hardware.buffer_bytes_max;
- snd_pcm_lib_malloc_pages(substream, size);
-
- return 0;
+ return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params));
}
static int bf5xx_pcm_hw_free(struct snd_pcm_substream *substream)