diff options
author | Jarkko Nikula <jhnikula@gmail.com> | 2010-04-26 08:49:13 -0400 |
---|---|---|
committer | Liam Girdwood <lrg@slimlogic.co.uk> | 2010-04-27 06:08:06 -0400 |
commit | db13802e51f29c40b404038485121a3973c0947d (patch) | |
tree | d33d1bae5ad225a4951b2d6ea351e812ecb1afb8 /sound/soc | |
parent | d3235c4ac17b7f2a9c64cc3ebc71e23d1d1fa466 (diff) |
ASoC: tlv320aic3x: Change bias management semantics
Move PLL enable from BIAS_ON state to BIAS_PREPARE to be pair with
BIAS_STANDBY where PLL is disabled. Remove also old comments about power
control.
Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/codecs/tlv320aic3x.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/sound/soc/codecs/tlv320aic3x.c b/sound/soc/codecs/tlv320aic3x.c index 19602eca4924..6b74ad808a09 100644 --- a/sound/soc/codecs/tlv320aic3x.c +++ b/sound/soc/codecs/tlv320aic3x.c | |||
@@ -997,7 +997,8 @@ static int aic3x_set_bias_level(struct snd_soc_codec *codec, | |||
997 | 997 | ||
998 | switch (level) { | 998 | switch (level) { |
999 | case SND_SOC_BIAS_ON: | 999 | case SND_SOC_BIAS_ON: |
1000 | /* all power is driven by DAPM system */ | 1000 | break; |
1001 | case SND_SOC_BIAS_PREPARE: | ||
1001 | if (aic3x->master) { | 1002 | if (aic3x->master) { |
1002 | /* enable pll */ | 1003 | /* enable pll */ |
1003 | reg = aic3x_read_reg_cache(codec, AIC3X_PLL_PROGA_REG); | 1004 | reg = aic3x_read_reg_cache(codec, AIC3X_PLL_PROGA_REG); |
@@ -1005,13 +1006,8 @@ static int aic3x_set_bias_level(struct snd_soc_codec *codec, | |||
1005 | reg | PLL_ENABLE); | 1006 | reg | PLL_ENABLE); |
1006 | } | 1007 | } |
1007 | break; | 1008 | break; |
1008 | case SND_SOC_BIAS_PREPARE: | ||
1009 | break; | ||
1010 | case SND_SOC_BIAS_STANDBY: | 1009 | case SND_SOC_BIAS_STANDBY: |
1011 | /* | 1010 | /* fall through and disable pll */ |
1012 | * all power is driven by DAPM system, | ||
1013 | * so output power is safe if bypass was set | ||
1014 | */ | ||
1015 | case SND_SOC_BIAS_OFF: | 1011 | case SND_SOC_BIAS_OFF: |
1016 | if (aic3x->master) { | 1012 | if (aic3x->master) { |
1017 | /* disable pll */ | 1013 | /* disable pll */ |