summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/arizona.c
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2013-11-20 16:20:30 +0100
committerMark Brown <broonie@linaro.org>2013-11-20 16:20:30 +0100
commitc33ef2c9ed870901cdadf367ffc4423b90257e5f (patch)
tree3e1d38f248f78e7f26272fb343c6f2fdb75722db /sound/soc/codecs/arizona.c
parentMerge remote-tracking branch 'asoc/fix/ab8500' into asoc-linus (diff)
parentASoC: arizona: Set FLL to free-run before disabling (diff)
downloadlinux-c33ef2c9ed870901cdadf367ffc4423b90257e5f.tar.xz
linux-c33ef2c9ed870901cdadf367ffc4423b90257e5f.zip
Merge remote-tracking branch 'asoc/fix/arizona' into asoc-linus
Diffstat (limited to 'sound/soc/codecs/arizona.c')
-rw-r--r--sound/soc/codecs/arizona.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/soc/codecs/arizona.c b/sound/soc/codecs/arizona.c
index 6f05b17d1965..fea991031be1 100644
--- a/sound/soc/codecs/arizona.c
+++ b/sound/soc/codecs/arizona.c
@@ -1529,6 +1529,8 @@ static void arizona_enable_fll(struct arizona_fll *fll,
try_wait_for_completion(&fll->ok);
regmap_update_bits(arizona->regmap, fll->base + 1,
+ ARIZONA_FLL1_FREERUN, 0);
+ regmap_update_bits(arizona->regmap, fll->base + 1,
ARIZONA_FLL1_ENA, ARIZONA_FLL1_ENA);
if (use_sync)
regmap_update_bits(arizona->regmap, fll->base + 0x11,
@@ -1546,6 +1548,8 @@ static void arizona_disable_fll(struct arizona_fll *fll)
struct arizona *arizona = fll->arizona;
bool change;
+ regmap_update_bits(arizona->regmap, fll->base + 1,
+ ARIZONA_FLL1_FREERUN, ARIZONA_FLL1_FREERUN);
regmap_update_bits_check(arizona->regmap, fll->base + 1,
ARIZONA_FLL1_ENA, 0, &change);
regmap_update_bits(arizona->regmap, fll->base + 0x11,