Skip to content

Commit 0ba591c

Browse files
plbossartbardliao
authored andcommitted
ASoC: soc-pcm: improve BE transition for TRIGGER_START
When the BE was in PAUSED state, the correct trigger is PAUSE_RELEASE. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
1 parent 492f190 commit 0ba591c

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

sound/soc/soc-pcm.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2122,6 +2122,13 @@ int dpcm_be_dai_trigger(struct snd_soc_pcm_runtime *fe, int stream,
21222122
if (be->dpcm[stream].be_start != 1)
21232123
goto next;
21242124

2125+
if (be->dpcm[stream].state == SND_SOC_DPCM_STATE_PAUSED)
2126+
ret = soc_pcm_trigger(be_substream,
2127+
SNDRV_PCM_TRIGGER_PAUSE_RELEASE);
2128+
else
2129+
ret = soc_pcm_trigger(be_substream,
2130+
SNDRV_PCM_TRIGGER_START);
2131+
21252132
ret = soc_pcm_trigger(be_substream, cmd);
21262133
if (ret) {
21272134
be->dpcm[stream].be_start--;

0 commit comments

Comments
 (0)