Hi, I agree with Peter's change. Raspbian - the raspberry pi distribution - is currently shipping v5.10.x (jumping from v5.4.x in February), which has changed a lot since v5.5.x. Nonetheless, as a proof of concept, I reverted the idea of Peter's change in v.5.10.x, with this: <diff-start> diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c index 91bf33958..20077dd8c 100644 --- a/sound/soc/soc-pcm.c +++ b/sound/soc/soc-pcm.c @@ -1042,7 +1042,7 @@ static int soc_pcm_trigger(struct snd_pcm_substream *substream, int cmd) case SNDRV_PCM_TRIGGER_START: case SNDRV_PCM_TRIGGER_RESUME: case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: - ret = snd_soc_link_trigger(substream, cmd); + ret = snd_soc_pcm_dai_trigger(substream, cmd); if (ret < 0) break; @@ -1050,8 +1050,9 @@ static int soc_pcm_trigger(struct snd_pcm_substream *substream, int cmd) if (ret < 0) break; - ret = snd_soc_pcm_dai_trigger(substream, cmd); + ret = snd_soc_link_trigger(substream, cmd); break; + case SNDRV_PCM_TRIGGER_STOP: case SNDRV_PCM_TRIGGER_SUSPEND: case SNDRV_PCM_TRIGGER_PAUSE_PUSH: <diff-end> and was able to restore the functionality of Seeed Studio's respeaker driver against v5.10.x. That it relies on the previous behavior is a bit broken. I think I'd like some dev_dbg() inside soc-pcm.c, and perhaps some help in modifying the out-of-tree audio device driver to cope? Thanks a lot. Regards, Hin-Tak On Tuesday, 20 April 2021, 15:19:58 BST, Hin-Tak Leung <htl10@xxxxxxxxxxxxxxxxxxxxx> wrote: > Hi Peter: > I found the commit of a rather unusual regression between kernel v5.4 and v5.5, for an out-of-tree driver on the > raspberrypi. Everything looks identical between v5.4 and 5.5, within accountable differences, even with debugging in > sound/ +p and the driver side. 5.4 records fine, 5.5 stucks on recording. The commit is one of yours: > commit 4378f1fbe924054a09ff0d4e39e1a581b9245252 > Author: Peter Ujfalusi <peter.ujfalusi@xxxxxx> > Date: Fri Sep 27 10:16:46 2019 +0300 > ASoC: soc-pcm: Use different sequence for start/stop trigger ... > The problem was initially at https://github.com/respeaker/seeed-voicecard/issues/290 > then over to https://github.com/raspberrypi/linux/issues/4279 and finally here. The "seeed-8mic-voicecard- > overlay.dts" is the dts corresponds to the problematic device ; The one with similar hardware but okay is "seeed- > 4mic-voicecard-overlay.dts" . ... > The Raspberry Pi distribution raspbian jumped directly from 5.4.x to 5.10.x at the beginning of February. Considering > the change has been in since the v5.5 merge window, I guess I'd like some help to correct / workaround on the > out-of-tree driver side? And probably some new dev_err() message in the kernel for problematic driver helping to > diagnose similar problems in the future would be nice.