diff options
author | Arnd Bergmann <arnd@arndb.de> | 2016-11-08 14:38:52 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-11-09 13:24:57 +0000 |
commit | 3b89e4b77ef9c2f985964fab17032db98f074ed0 (patch) | |
tree | 89fbf01b9a17b790a45695a43ce360b2e782158c /sound | |
parent | 94201798dbce1cfd242407f1f422819a735c838f (diff) | |
download | linux-stable-3b89e4b77ef9c2f985964fab17032db98f074ed0.tar.gz linux-stable-3b89e4b77ef9c2f985964fab17032db98f074ed0.tar.bz2 linux-stable-3b89e4b77ef9c2f985964fab17032db98f074ed0.zip |
ASoC: lpass-platform: initialize dma channel number
A bugfix accidentally removed the implicit initialization of the
dma channel number, causing undefined behavior when
v->alloc_dma_channel is NULL:
sound/soc/qcom/lpass-platform.c: In function ‘lpass_platform_pcmops_open’:
sound/soc/qcom/lpass-platform.c:83:29: error: ‘dma_ch’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
This adds back an explicit initialization to zero, restoring the
previous behavior for that case.
Fixes: 022d00ee0b55 ("ASoC: lpass-platform: Fix broken pcm data usage")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Kenneth Westfield <kwestfie@codeaurora.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/qcom/lpass-platform.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/qcom/lpass-platform.c b/sound/soc/qcom/lpass-platform.c index 07000f53db44..e223bc90b2ef 100644 --- a/sound/soc/qcom/lpass-platform.c +++ b/sound/soc/qcom/lpass-platform.c @@ -77,6 +77,9 @@ static int lpass_platform_pcmops_open(struct snd_pcm_substream *substream) if (v->alloc_dma_channel) dma_ch = v->alloc_dma_channel(drvdata, dir); + else + dma_ch = 0; + if (dma_ch < 0) return dma_ch; |