diff options
author | Shengjiu Wang <shengjiu.wang@freescale.com> | 2015-05-05 09:55:30 +0800 |
---|---|---|
committer | Jason Liu <r64343@freescale.com> | 2015-05-08 16:35:52 +0800 |
commit | 7c3ca923f52956a3c279b9fab1ea90dc88d1445a (patch) | |
tree | 71910315cb1e5d02ae564a5e7a3c2d9e093ac17c /sound | |
parent | dd597f13983ba1684617b6bc4d9920d9e1592a47 (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>
Diffstat (limited to 'sound')
-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; } |