Patch "ASoC: dmaengine: do not use a NULL prepare_slave_config() callback" has been added to the 5.17-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    ASoC: dmaengine: do not use a NULL prepare_slave_config() callback

to the 5.17-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     asoc-dmaengine-do-not-use-a-null-prepare_slave_confi.patch
and it can be found in the queue-5.17 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit f03f4647931ae8e1bf48d6a78b4e51533152ff2d
Author: Codrin Ciubotariu <codrin.ciubotariu@xxxxxxxxxxxxx>
Date:   Mon Mar 7 14:21:57 2022 +0200

    ASoC: dmaengine: do not use a NULL prepare_slave_config() callback
    
    [ Upstream commit 9a1e13440a4f2e7566fd4c5eae6a53e6400e08a4 ]
    
    Even if struct snd_dmaengine_pcm_config is used, prepare_slave_config()
    callback might not be set. Check if this callback is set before using it.
    
    Fixes: fa654e085300 ("ASoC: dmaengine-pcm: Provide default config")
    Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@xxxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20220307122202.2251639-2-codrin.ciubotariu@xxxxxxxxxxxxx
    Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/sound/soc/soc-generic-dmaengine-pcm.c b/sound/soc/soc-generic-dmaengine-pcm.c
index c54c8ca8d715..359987bf76d1 100644
--- a/sound/soc/soc-generic-dmaengine-pcm.c
+++ b/sound/soc/soc-generic-dmaengine-pcm.c
@@ -86,10 +86,10 @@ static int dmaengine_pcm_hw_params(struct snd_soc_component *component,
 
 	memset(&slave_config, 0, sizeof(slave_config));
 
-	if (!pcm->config)
-		prepare_slave_config = snd_dmaengine_pcm_prepare_slave_config;
-	else
+	if (pcm->config && pcm->config->prepare_slave_config)
 		prepare_slave_config = pcm->config->prepare_slave_config;
+	else
+		prepare_slave_config = snd_dmaengine_pcm_prepare_slave_config;
 
 	if (prepare_slave_config) {
 		int ret = prepare_slave_config(substream, params, &slave_config);



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux