[alsa-devel] [PATCH] ASoC: soc-pcm: BE dai needs prepare when pause release after resume
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Mon May 6 17:07:31 CEST 2019
On 5/5/19 1:37 AM, libin.yang at intel.com wrote:
> From: Libin Yang <libin.yang at intel.com>
>
> If playback/capture is paused and system enters S3, after system returns
> from suspend, BE dai needs to call prepare() callback when playback/capture
> is released from pause.
Libin, this patch was discussed at length on GitHub [1] and the commit
message does not convey any of the information we looked into. It's not
very helpful to send such patches to a larger audience without
explaining context and goals. I personally still have no idea of the
state machine and if all solutions need this or if this is only needed
in the case where the RESUME_INFO flag is not set.
[1] https://github.com/thesofproject/linux/pull/868
>
> Signed-off-by: Libin Yang <libin.yang at intel.com>
> ---
> sound/soc/soc-pcm.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c
> index d2aa560..0888995 100644
> --- a/sound/soc/soc-pcm.c
> +++ b/sound/soc/soc-pcm.c
> @@ -2471,7 +2471,8 @@ int dpcm_be_dai_prepare(struct snd_soc_pcm_runtime *fe, int stream)
>
> if ((be->dpcm[stream].state != SND_SOC_DPCM_STATE_HW_PARAMS) &&
> (be->dpcm[stream].state != SND_SOC_DPCM_STATE_STOP) &&
> - (be->dpcm[stream].state != SND_SOC_DPCM_STATE_SUSPEND))
> + (be->dpcm[stream].state != SND_SOC_DPCM_STATE_SUSPEND) &&
> + (be->dpcm[stream].state != SND_SOC_DPCM_STATE_PAUSED))
> continue;
>
> dev_dbg(be->dev, "ASoC: prepare BE %s\n",
>
More information about the Alsa-devel
mailing list