ASoC: sdm845: fix clock refcount for MI2S/AUXPCM shutdown
For MI2S and AUXPCM shutdown, if clock disable is failed, do not bother to re-increment clock reference. Otherwise, next time when startup is called, clock enable will not be called again, so use case will not work. Change-Id: I5ce4590d2a2030f9d00f1dba9577396f7685a87b Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org> Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
7cb56be566
commit
f6853a2010
@@ -4153,7 +4153,6 @@ static void msm_aux_pcm_snd_shutdown(struct snd_pcm_substream *substream)
|
||||
dev_err(rtd->card->dev,
|
||||
"%s lpaif_tert_muxsel_virt_addr is NULL\n",
|
||||
__func__);
|
||||
auxpcm_intf_conf[index].ref_cnt++;
|
||||
}
|
||||
}
|
||||
mutex_unlock(&auxpcm_intf_conf[index].lock);
|
||||
@@ -4715,11 +4714,9 @@ static void msm_mi2s_snd_shutdown(struct snd_pcm_substream *substream)
|
||||
mutex_lock(&mi2s_intf_conf[index].lock);
|
||||
if (--mi2s_intf_conf[index].ref_cnt == 0) {
|
||||
ret = msm_mi2s_set_sclk(substream, false);
|
||||
if (ret < 0) {
|
||||
if (ret < 0)
|
||||
pr_err("%s:clock disable failed for MI2S (%d); ret=%d\n",
|
||||
__func__, index, ret);
|
||||
mi2s_intf_conf[index].ref_cnt++;
|
||||
}
|
||||
}
|
||||
mutex_unlock(&mi2s_intf_conf[index].lock);
|
||||
|
||||
|
Reference in New Issue
Block a user