aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sound/soc/codecs/tlv320aic3x.c10
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 */