path: root/sound/soc
diff options
authorGeert Uytterhoeven <>2016-06-16 14:34:32 +0200
committerMark Brown <>2016-06-17 12:35:33 +0100
commit50c7a0ef2d97e56c7ce2f1ea5fe1d8e25aadc1bb (patch)
treec2181104840bce1515c2991bf33df385750d2090 /sound/soc
parent1a695a905c18548062509178b98bc91e67510864 (diff)
ASoC: wm8940: Enable cache usage to fix crashes on resume
The wm8940 driver is using a regmap cache sync to restore the configuration of the chip when switching from OFF to STANDBY, but does not actually define a register cache which means that the restore is never going to work and we trigger asserts in regmap. Fix this by enabling caching. Based on commit d3030d11961a8c10 ("ASoC: ak4642: Enable cache usage to fix crashes on resume") by Mark Brown <>. Signed-off-by: Geert Uytterhoeven <> Acked-by: Charles Keepax <> Signed-off-by: Mark Brown <>
Diffstat (limited to 'sound/soc')
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm8940.c b/sound/soc/codecs/wm8940.c
index f6f9395ea38e..1c600819f768 100644
--- a/sound/soc/codecs/wm8940.c
+++ b/sound/soc/codecs/wm8940.c
@@ -743,6 +743,7 @@ static const struct regmap_config wm8940_regmap = {
.max_register = WM8940_MONOMIX,
.reg_defaults = wm8940_reg_defaults,
.num_reg_defaults = ARRAY_SIZE(wm8940_reg_defaults),
+ .cache_type = REGCACHE_RBTREE,
.readable_reg = wm8940_readable_register,
.volatile_reg = wm8940_volatile_register,