ASoC: SOF: sof-audio: don't squelch errors in WIDGET_SETUP phase
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Tue, 7 Mar 2023 11:46:59 +0000 (13:46 +0200)
committerMark Brown <broonie@kernel.org>
Tue, 7 Mar 2023 13:58:03 +0000 (13:58 +0000)
commitc7e328f1cbf22efe23bc3cd7dd6bb14efccc28d0
tree8f488aaad55e416912413f2dccd1ede0080d87b3
parent8bac40b8ed17ab1be9133e9620f65fae80262b7e
ASoC: SOF: sof-audio: don't squelch errors in WIDGET_SETUP phase

When an IPC error happens while setting-up a widget during the FE
hw_params phase, the existing logic will unwind all previous
configurations but will overwrite the return status. The ALSA/ASoC
logic will then proceed with the prepare and trigger phases, even
though the firmware resources are not available.

Fix by returning the initial error code and ignoring the code returned
in the UNPREPARE phase.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Chao Song <chao.song@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230307114659.4614-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/sof-audio.c