]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
ASoC: SOF: Do not reset hw_params for streams that ignored suspend
authorRanjani Sridharan <ranjani.sridharan@linux.intel.com>
Wed, 29 Jan 2020 22:07:18 +0000 (16:07 -0600)
committerMark Brown <broonie@kernel.org>
Tue, 11 Feb 2020 11:48:01 +0000 (11:48 +0000)
Setting the prepared flag to false marks the streams for the
hw_params to be reset upon resuming. In the case of
the D0i3-compatible streams that ignored suspend to
keep the pipeline active in the DSP during suspend,
this should not be done.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20200129220726.31792-2-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/sof-audio.c

index 0d8f65b9ae25c8ba22493963cdd979f134af0c21..345e42ee478372fd73142df397070d684b7d1110 100644 (file)
@@ -39,6 +39,13 @@ int sof_set_hw_params_upon_resume(struct device *dev)
         */
        list_for_each_entry(spcm, &sdev->pcm_list, list) {
                for (dir = 0; dir <= SNDRV_PCM_STREAM_CAPTURE; dir++) {
+                       /*
+                        * do not reset hw_params upon resume for streams that
+                        * were kept running during suspend
+                        */
+                       if (spcm->stream[dir].suspend_ignored)
+                               continue;
+
                        substream = spcm->stream[dir].substream;
                        if (!substream || !substream->runtime)
                                continue;