From: Mark Brown <broonie@opensource.wolfsonmicro.com>
Date: Fri, 18 Dec 2009 14:20:35 +0000 (+0000)
Subject: ASoC: Host clock2 read up in WM8904 FLL configuration
X-Git-Tag: firefly_0821_release~9833^2~1382^2~7^2~241
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=18240b67c8ca5efbbb2e8bb11942cc3db033fb16;p=firefly-linux-kernel-4.4.55.git

ASoC: Host clock2 read up in WM8904 FLL configuration

Avoids skipping over the read for disable cases.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
---

diff --git a/sound/soc/codecs/wm8904.c b/sound/soc/codecs/wm8904.c
index e44ee31c2184..992a7f23df5c 100644
--- a/sound/soc/codecs/wm8904.c
+++ b/sound/soc/codecs/wm8904.c
@@ -1893,6 +1893,8 @@ static int wm8904_set_fll(struct snd_soc_dai *dai, int fll_id, int source,
 	    Fout == wm8904->fll_fout)
 		return 0;
 
+	clock2 = snd_soc_read(codec, WM8904_CLOCK_RATES_2);
+
 	if (Fout == 0) {
 		dev_dbg(codec->dev, "FLL disabled\n");
 
@@ -1936,7 +1938,6 @@ static int wm8904_set_fll(struct snd_soc_dai *dai, int fll_id, int source,
 
 	/* Save current state then disable the FLL and SYSCLK to avoid
 	 * misclocking */
-	clock2 = snd_soc_read(codec, WM8904_CLOCK_RATES_2);
 	fll1 = snd_soc_read(codec, WM8904_FLL_CONTROL_1);
 	snd_soc_update_bits(codec, WM8904_CLOCK_RATES_2,
 			    WM8904_CLK_SYS_ENA, 0);