From: Mark Brown Date: Tue, 1 Nov 2011 13:36:10 +0000 (+0000) Subject: ASoC: Ensure WM8962 PLL registers are reset X-Git-Tag: v2.6.39-400.9.0~823^2~194 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=d2055abdea7e484b9f20522b0f9341a12a1583a6;p=users%2Fjedix%2Flinux-maple.git ASoC: Ensure WM8962 PLL registers are reset commit 4f4488abc97c1c27ff029f887944e6a6da1f5733 upstream. The WM8962 has a separate software reset for the PLL registers. Ensure that these are reset also on startup. Signed-off-by: Mark Brown Signed-off-by: Greg Kroah-Hartman --- diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c index 6bc72a7b6b9e..ebff8ad788ac 100644 --- a/sound/soc/codecs/wm8962.c +++ b/sound/soc/codecs/wm8962.c @@ -1957,7 +1957,13 @@ static int wm8962_readable_register(struct snd_soc_codec *codec, unsigned int re static int wm8962_reset(struct snd_soc_codec *codec) { - return snd_soc_write(codec, WM8962_SOFTWARE_RESET, 0x6243); + int ret; + + ret = snd_soc_write(codec, WM8962_SOFTWARE_RESET, 0x6243); + if (ret != 0) + return ret; + + return snd_soc_write(codec, WM8962_PLL_SOFTWARE_RESET, 0); } static const DECLARE_TLV_DB_SCALE(inpga_tlv, -2325, 75, 0);