ASoC: wm8994: Make sure we disable FLL bypass when stopping the FLL

If FLL bypass is left enabled when we disable the CODEC then the output
clock will be left running which consumes a small amount of additional
current. Only enable bypass when there is an output.

Signed-off-by: Kyung-Kwee Ryu <Kyung-Kwee.Ryu@wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
Kyung-Kwee Ryu 2012-04-24 18:01:48 +01:00 committed by Mark Brown
parent dd7b10b30c
commit e05854ddaa

View File

@ -1982,7 +1982,7 @@ static int _wm8994_set_fll(struct snd_soc_codec *codec, int id, int src,
WM8994_FLL1_ENA, 0);
if (wm8994->fll_byp && src == WM8994_FLL_SRC_BCLK &&
freq_in == freq_out) {
freq_in == freq_out && freq_out) {
dev_dbg(codec->dev, "Bypassing FLL%d\n", id + 1);
snd_soc_update_bits(codec, WM8994_FLL1_CONTROL_5 + reg_offset,
WM8958_FLL1_BYP, WM8958_FLL1_BYP);