diff options
author | Shengjiu Wang <shengjiu.wang@freescale.com> | 2016-03-21 10:08:11 +0800 |
---|---|---|
committer | Jason Liu <jason.hui.liu@nxp.com> | 2019-02-12 10:24:32 +0800 |
commit | 4ca32025ddbfa733f5f917cc60af2d0597c13fdf (patch) | |
tree | 522618e9f5c4394ebb6f0f1954c3f4cc2ebcbd35 /sound | |
parent | dcc4bb1687f413de35c832b80bfc97514aa61c0f (diff) |
MLK-12464-1: ASoC: fsl: imx-wm8960: Fix no clock after suspend/resume randomly
After suspend and resume, the wm8960 codec will change the state from
BIAS_OFF to BIAS_ON, in this time, the hw_free is called, the PLL will be
diabled, and next instance is started in rapid sequence, hw_params is called
But PLL is not enabled, because the bias state is not BIAS_ON.
As PLL is disabled in BIAS_ON->BIAS_STANDBY, so don't need to disable pll
in hw_free of machine driver.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/fsl/imx-wm8960.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/sound/soc/fsl/imx-wm8960.c b/sound/soc/fsl/imx-wm8960.c index f14481e11370..e96e8098389e 100644 --- a/sound/soc/fsl/imx-wm8960.c +++ b/sound/soc/fsl/imx-wm8960.c @@ -273,9 +273,7 @@ static int imx_hifi_hw_free(struct snd_pcm_substream *substream) data->is_stream_in_use[tx] = false; - /* Power down PLL to save power*/ if (data->is_codec_master && !data->is_stream_in_use[!tx]) { - snd_soc_dai_set_pll(codec_dai, 0, 0, 0, 0); ret = snd_soc_dai_set_fmt(codec_dai, SND_SOC_DAIFMT_CBS_CFS | SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF); if (ret) dev_warn(dev, "failed to set codec dai fmt: %d\n", ret); |