diff options
author | Nicolin Chen <b42378@freescale.com> | 2013-04-01 17:51:30 +0800 |
---|---|---|
committer | Nicolin Chen <b42378@freescale.com> | 2013-04-01 18:15:18 +0800 |
commit | 76a61369b32149dd71333284295a1c57e2287120 (patch) | |
tree | e7199b3926a712c67a2bf9c9f5da49a5907f6fc2 /sound | |
parent | aaf14db7afe5ce603857782e96033b259606594b (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>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/wm8962.c | 3 |
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, |