summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolin Chen <b42378@freescale.com>2013-04-01 17:51:30 +0800
committerNicolin Chen <b42378@freescale.com>2013-04-01 18:21:47 +0800
commit1151a5a99e807caedfd98118922b9ab38651d4ea (patch)
treeb3b132c85ac5d332e130408b84e2570672822a66
parent84e470f29aebad1ebb870e76fe920b1c537351e7 (diff)
ENGR00256820-1 ASoC: WM8962: revert FLL-disable before FLL-setting
The patch at the commit 30293bc6 dropped FLL-disabling code from wm8962 driver, which was a work around for CR 00209905. Since we fixed the issue in a better way(commit 018958f4), we don't need the work around any more. And in wm8962's datasheet, Wolfson suggests that driver should disable and re-enable the FLL after the other registers're updated. So it's better for us to revert the code to prevent some potential issue. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <b42378@freescale.com>
-rw-r--r--sound/soc/codecs/wm8962.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c
index 6e7a5e9e9444..9acae3004c72 100644
--- a/sound/soc/codecs/wm8962.c
+++ b/sound/soc/codecs/wm8962.c
@@ -3461,6 +3461,9 @@ static int wm8962_set_fll(struct snd_soc_codec *codec, int fll_id, int source,
if (fll_div.theta || fll_div.lambda)
fll1 |= WM8962_FLL_FRAC;
+ /* Stop the FLL while we reconfigure */
+ snd_soc_update_bits(codec, WM8962_FLL_CONTROL_1, WM8962_FLL_ENA, 0);
+
snd_soc_update_bits(codec, WM8962_FLL_CONTROL_2,
WM8962_FLL_OUTDIV_MASK |
WM8962_FLL_REFCLK_DIV_MASK,