diff options
author | Shengjiu Wang <shengjiu.wang@freescale.com> | 2015-05-05 09:55:30 +0800 |
---|---|---|
committer | Nitin Garg <nitin.garg@freescale.com> | 2015-09-17 09:22:52 -0500 |
commit | 9344e5bf9fac766de4362943d074875216c8ae12 (patch) | |
tree | 7aece205e54c8d36d0dfb90e88807df4d1e12066 | |
parent | 1ec92d1cf49aa42beddfcb884e5bbfa30f340e8f (diff) |
MLK-10813-2: ASoC: imx-wm8958: fix issue that clock is not disabled
The clock disable has no chance to be called in set_bias_level_post,
because the dapm->bias_level is set by the codec driver, machine driver
should use the card->dapm.bias_level.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
-rw-r--r-- | sound/soc/fsl/imx-wm8958.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sound/soc/fsl/imx-wm8958.c b/sound/soc/fsl/imx-wm8958.c index 3675d0c8e942..9be2362db9f4 100644 --- a/sound/soc/fsl/imx-wm8958.c +++ b/sound/soc/fsl/imx-wm8958.c @@ -353,7 +353,7 @@ static int imx_wm8958_set_bias_level(struct snd_soc_card *card, switch (level) { case SND_SOC_BIAS_STANDBY: - if (dapm->bias_level == SND_SOC_BIAS_OFF) { + if (card->dapm.bias_level == SND_SOC_BIAS_OFF) { if (!IS_ERR(data->mclk)) { ret = clk_prepare_enable(data->mclk); if (ret) { @@ -382,7 +382,7 @@ static int imx_wm8958_set_bias_level_post(struct snd_soc_card *card, switch (level) { case SND_SOC_BIAS_OFF: - if (dapm->bias_level == SND_SOC_BIAS_STANDBY) + if (card->dapm.bias_level == SND_SOC_BIAS_STANDBY) if (!IS_ERR(data->mclk)) clk_disable_unprepare(data->mclk); break; @@ -390,7 +390,7 @@ static int imx_wm8958_set_bias_level_post(struct snd_soc_card *card, break; } - dapm->bias_level = level; + card->dapm.bias_level = level; return 0; } |