From: Charles Keepax Date: Wed, 9 Jul 2014 16:41:48 +0000 (+0100) Subject: ASoC: arizona: FLL freerun only required whilst disabling X-Git-Tag: v3.17-rc1~101^2~5^2~11^5~2 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=5e39a50bf8c644f2ef348037d3e3efdc03fa65b2;p=karo-tx-linux.git ASoC: arizona: FLL freerun only required whilst disabling The FLL freerun is only required whilst we disable the FLL not the entire time the FLL is disabled. This patch moves the FLL freerun disable from the enable sequence to the disable sequence. Signed-off-by: Charles Keepax Signed-off-by: Mark Brown --- diff --git a/sound/soc/codecs/arizona.c b/sound/soc/codecs/arizona.c index a6f09bb0a2e9..7c362cb36b21 100644 --- a/sound/soc/codecs/arizona.c +++ b/sound/soc/codecs/arizona.c @@ -1791,8 +1791,6 @@ static int arizona_enable_fll(struct arizona_fll *fll) /* Clear any pending completions */ try_wait_for_completion(&fll->ok); - regmap_update_bits_async(arizona->regmap, fll->base + 1, - ARIZONA_FLL1_FREERUN, 0); regmap_update_bits_async(arizona->regmap, fll->base + 1, ARIZONA_FLL1_ENA, ARIZONA_FLL1_ENA); if (use_sync) @@ -1819,6 +1817,8 @@ static void arizona_disable_fll(struct arizona_fll *fll) ARIZONA_FLL1_ENA, 0, &change); regmap_update_bits(arizona->regmap, fll->base + 0x11, ARIZONA_FLL1_SYNC_ENA, 0); + regmap_update_bits_async(arizona->regmap, fll->base + 1, + ARIZONA_FLL1_FREERUN, 0); if (change) pm_runtime_put_autosuspend(arizona->dev);