diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-07-11 19:03:48 +0100 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-07-12 18:41:02 +0100 |
commit | e4dd76788c7e5b27165890d712c8c4f6f0abd645 (patch) | |
tree | f6122cd8a021069b700fc7531f6b60f027a2e15a | |
parent | b761c0ca2e964a240d74e50da9e27dc0b3be0649 (diff) |
ASoC: wm8962: Redo early init of the part on resume
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>
Cc: stable@vger.kernel.org
-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 beb709bd56c..eaf65863ec2 100644 --- a/sound/soc/codecs/wm8962.c +++ b/sound/soc/codecs/wm8962.c @@ -3725,6 +3725,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, |