Skip to content

Commit 1c53123

Browse files
morimotobroonie
authored andcommitted
ASoC: soc-pcm/soc-compress: don't use snd_soc_dapm_stream_stop()
commit b0edff4 ("ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP") uses snd_soc_dapm_stream_stop() for soc_compr_free_fe() and dpcm_fe_dai_shutdown() because it didn't care about pmdown_time. But, it didn't need to care. This patch rollback to original code. Some system will wait unneeded timed-out without this patch. Special Thanks for reporting to Chris Gorman. ... intel_sst_acpi 808622A8:00: Wait timed-out condition:0x0, msg_id:0x1 fw_state 0x3 intel_sst_acpi 808622A8:00: fw returned err -16 sst-mfld-platform sst-mfld-platform: ASoC: PRE_PMD: pcm0_in event failed: -16 ... Fixes: commit b0edff4 ("ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP") Reported-by: Chris Gorman <[email protected]> Signed-off-by: Kuninori Morimoto <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mark Brown <[email protected]>
1 parent 22946f3 commit 1c53123

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

sound/soc/soc-compress.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ static int soc_compr_free_fe(struct snd_compr_stream *cstream)
299299
for_each_dpcm_be(fe, stream, dpcm)
300300
dpcm->state = SND_SOC_DPCM_LINK_STATE_FREE;
301301

302-
snd_soc_dapm_stream_stop(fe, stream);
302+
dpcm_dapm_stream_event(fe, stream, SND_SOC_DAPM_STREAM_STOP);
303303

304304
fe->dpcm[stream].state = SND_SOC_DPCM_STATE_CLOSE;
305305
fe->dpcm[stream].runtime_update = SND_SOC_DPCM_UPDATE_NO;

sound/soc/soc-pcm.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2006,7 +2006,7 @@ static int dpcm_fe_dai_shutdown(struct snd_pcm_substream *substream)
20062006
soc_pcm_close(substream);
20072007

20082008
/* run the stream event for each BE */
2009-
snd_soc_dapm_stream_stop(fe, stream);
2009+
dpcm_dapm_stream_event(fe, stream, SND_SOC_DAPM_STREAM_STOP);
20102010

20112011
fe->dpcm[stream].state = SND_SOC_DPCM_STATE_CLOSE;
20122012
dpcm_set_fe_update_state(fe, stream, SND_SOC_DPCM_UPDATE_NO);

0 commit comments

Comments
 (0)