diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-07-11 22:03:48 +0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-08-09 19:31:28 +0400 |
commit | 8f1b438887c47d3b65fc64ca23821d69ba69ddd7 (patch) | |
tree | 4727e604d136c7ace1ed20900556af0855f6352b /sound | |
parent | a73185355e3d19694b655528811e54cc086a5bcf (diff) | |
download | linux-8f1b438887c47d3b65fc64ca23821d69ba69ddd7.tar.xz |
ASoC: wm8962: Redo early init of the part on resume
commit e4dd76788c7e5b27165890d712c8c4f6f0abd645 upstream.
Ensure robust startup of the part by going through the reset procedure
prior to resyncing the full register cache, avoiding potential intermittent
faults in some designs.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/wm8962.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c index 15d467ff91b4..08850f8fdb58 100644 --- a/sound/soc/codecs/wm8962.c +++ b/sound/soc/codecs/wm8962.c @@ -3710,6 +3710,9 @@ static int wm8962_runtime_resume(struct device *dev) } regcache_cache_only(wm8962->regmap, false); + + wm8962_reset(wm8962); + regcache_sync(wm8962->regmap); regmap_update_bits(wm8962->regmap, WM8962_ANTI_POP, |