[alsa-devel] [PATCH RESEND] ASoC: max98088 - fix element type of the register cache.

Dylan Reid dgreid at chromium.org
Mon Jul 15 18:38:46 CEST 2013

From: Chih-Chung Chang <chihchung at chromium.org>

The registers of max98088 are 8 bits, not 16 bits. This bug causes the
contents of registers to be overwritten with bad values when the codec
is suspended and then resumed.

Signed-off-by: Chih-Chung Chang <chihchung at chromium.org>
Signed-off-by: Dylan Reid <dgreid at chromium.org>
 sound/soc/codecs/max98088.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/max98088.c b/sound/soc/codecs/max98088.c
index 3eeada5..566a367 100644
--- a/sound/soc/codecs/max98088.c
+++ b/sound/soc/codecs/max98088.c
@@ -1612,7 +1612,7 @@ static int max98088_dai2_digital_mute(struct snd_soc_dai *codec_dai, int mute)
 static void max98088_sync_cache(struct snd_soc_codec *codec)
-       u16 *reg_cache = codec->reg_cache;
+       u8 *reg_cache = codec->reg_cache;
        int i;
        if (!codec->cache_sync)

More information about the Alsa-devel mailing list