ASoC: qcom: Fix uninitialized pointer dmactl
authorColin Ian King <colin.i.king@gmail.com>
Wed, 21 Feb 2024 13:48:04 +0000 (13:48 +0000)
committerMark Brown <broonie@kernel.org>
Wed, 21 Feb 2024 14:01:17 +0000 (14:01 +0000)
In the case where __lpass_get_dmactl_handle is called and the driver
id dai_id is invalid the pointer dmactl is not being assigned a value,
and dmactl contains a garbage value since it has not been initialized
and so the null check may not work. Fix this to initialize dmactl to
NULL. One could argue that modern compilers will set this to zero, but
it is useful to keep this initialized as per the same way in functions
__lpass_platform_codec_intf_init and lpass_cdc_dma_daiops_hw_params.

Cleans up clang scan build warning:
sound/soc/qcom/lpass-cdc-dma.c:275:7: warning: Branch condition
evaluates to a garbage value [core.uninitialized.Branch]

Fixes: b81af585ea54 ("ASoC: qcom: Add lpass CPU driver for codec dma control")
Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Link: https://msgid.link/r/20240221134804.3475989-1-colin.i.king@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/qcom/lpass-cdc-dma.c

index 48b03e60e3a3d760c9d872d9ffc3527b0aed40fe..8106c586f68a4ec456ae2be11f37b1c2c8cd806c 100644 (file)
@@ -259,7 +259,7 @@ static int lpass_cdc_dma_daiops_trigger(struct snd_pcm_substream *substream,
                                    int cmd, struct snd_soc_dai *dai)
 {
        struct snd_soc_pcm_runtime *soc_runtime = snd_soc_substream_to_rtd(substream);
-       struct lpaif_dmactl *dmactl;
+       struct lpaif_dmactl *dmactl = NULL;
        int ret = 0, id;
 
        switch (cmd) {