From: Wentao Liang Date: Mon, 19 May 2025 07:57:39 +0000 (+0800) Subject: ASoC: qcom: sdm845: Add error handling in sdm845_slim_snd_hw_params() X-Git-Tag: v6.16-rc1~13^2~10^2~1^2 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=688abe2860fd9c644705b9e11cb9649eb891b879;p=linux-block.git ASoC: qcom: sdm845: Add error handling in sdm845_slim_snd_hw_params() The function sdm845_slim_snd_hw_params() calls the functuion snd_soc_dai_set_channel_map() but does not check its return value. A proper implementation can be found in msm_snd_hw_params(). Add error handling for snd_soc_dai_set_channel_map(). If the function fails and it is not a unsupported error, return the error code immediately. Fixes: 5caf64c633a3 ("ASoC: qcom: sdm845: add support to DB845c and Lenovo Yoga") Cc: stable@vger.kernel.org # v5.6 Signed-off-by: Wentao Liang Reviewed-by: Dmitry Baryshkov Link: https://patch.msgid.link/20250519075739.1458-1-vulab@iscas.ac.cn Signed-off-by: Mark Brown --- diff --git a/sound/soc/qcom/sdm845.c b/sound/soc/qcom/sdm845.c index fcc7df75346f..a233b80049ee 100644 --- a/sound/soc/qcom/sdm845.c +++ b/sound/soc/qcom/sdm845.c @@ -91,6 +91,10 @@ static int sdm845_slim_snd_hw_params(struct snd_pcm_substream *substream, else ret = snd_soc_dai_set_channel_map(cpu_dai, tx_ch_cnt, tx_ch, 0, NULL); + if (ret != 0 && ret != -ENOTSUPP) { + dev_err(rtd->dev, "failed to set cpu chan map, err:%d\n", ret); + return ret; + } } return 0;