[alsa-devel] [PATCH v2] ASoC: soc-cache: Fix the return value of snd_soc_cache_init when reg_size is 0

Fabio Estevam fabio.estevam at freescale.com
Mon Jun 2 16:25:46 CEST 2014


Commit b59dce53ef6 (ASoC: cache: Fix possible ZERO_SIZE_PTR pointer 
dereferencing error.) caused the following probe error:

wm8962 0-001a: customer id 0 revision D
wm8962 0-001a: ASoC: Failed to set cache compression type: -22
imx-wm8962 sound: snd_soc_register_card failed (-22)
imx-wm8962: probe of sound failed with error -22

If reg_size is 0 just return success instead.

Suggested-by: Lars-Peter Clausen <lars at metafoo.de>
Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
---
Changes since v1:
- Fix typo "If reg_size is 0 just return success instead."

 sound/soc/soc-cache.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/soc-cache.c b/sound/soc/soc-cache.c
index 8fff5b6..00e70b6 100644
--- a/sound/soc/soc-cache.c
+++ b/sound/soc/soc-cache.c
@@ -73,7 +73,7 @@ int snd_soc_cache_init(struct snd_soc_codec *codec)
 	reg_size = codec_drv->reg_cache_size * codec_drv->reg_word_size;
 
 	if (!reg_size)
-		return -EINVAL;
+		return 0;
 
 	mutex_init(&codec->cache_rw_mutex);
 
-- 
1.8.3.2



More information about the Alsa-devel mailing list