OSDN Git Service

ASoC: SOF: use current DAI config during resume
authorRanjani Sridharan <ranjani.sridharan@linux.intel.com>
Thu, 15 Apr 2021 16:21:07 +0000 (11:21 -0500)
committerMark Brown <broonie@kernel.org>
Thu, 15 Apr 2021 17:11:30 +0000 (18:11 +0100)
Recently, the sof_pcm_dai_link_fixup() function was
updated to match SSP config with the PCM hw_params
and set the current_config for the DAI widget.

But the sof_restore_pipelines() function still chooses the
default config for the DAI widget upon resuming. Fix this
to use the last used config when setting up the DAI widget
during resume.

Fixes: c943a586f6e49 ("ASoC: SOF: match SSP config with pcm hw params")
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
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/20210415162107.130963-1-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/sof-audio.c

index 0d0d47d..510883c 100644 (file)
@@ -267,7 +267,7 @@ int sof_restore_pipelines(struct device *dev)
        /* restore dai links */
        list_for_each_entry_reverse(dai, &sdev->dai_list, list) {
                struct sof_ipc_reply reply;
-               struct sof_ipc_dai_config *config = dai->dai_config;
+               struct sof_ipc_dai_config *config = &dai->dai_config[dai->current_config];
 
                if (!config) {
                        dev_err(dev, "error: no config for DAI %s\n",