]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/3.4.56/asoc-max98088-fix-element-type-of-the-register-cache.patch
4.14-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 3.4.56 / asoc-max98088-fix-element-type-of-the-register-cache.patch
1 From cb6f66a2d278e57a6c9d8fb59bd9ebd8ab3965c2 Mon Sep 17 00:00:00 2001
2 From: Chih-Chung Chang <chihchung@chromium.org>
3 Date: Mon, 15 Jul 2013 09:38:46 -0700
4 Subject: ASoC: max98088 - fix element type of the register cache.
5
6 From: Chih-Chung Chang <chihchung@chromium.org>
7
8 commit cb6f66a2d278e57a6c9d8fb59bd9ebd8ab3965c2 upstream.
9
10 The registers of max98088 are 8 bits, not 16 bits. This bug causes the
11 contents of registers to be overwritten with bad values when the codec
12 is suspended and then resumed.
13
14 Signed-off-by: Chih-Chung Chang <chihchung@chromium.org>
15 Signed-off-by: Dylan Reid <dgreid@chromium.org>
16 Signed-off-by: Mark Brown <broonie@linaro.org>
17 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
18
19 ---
20 sound/soc/codecs/max98088.c | 2 +-
21 1 file changed, 1 insertion(+), 1 deletion(-)
22
23 --- a/sound/soc/codecs/max98088.c
24 +++ b/sound/soc/codecs/max98088.c
25 @@ -1594,7 +1594,7 @@ static int max98088_dai2_digital_mute(st
26
27 static void max98088_sync_cache(struct snd_soc_codec *codec)
28 {
29 - u16 *reg_cache = codec->reg_cache;
30 + u8 *reg_cache = codec->reg_cache;
31 int i;
32
33 if (!codec->cache_sync)