ASoC: mediatek: mt8195: add missing initialization
authorTrevor Wu <trevor.wu@mediatek.com>
Wed, 1 Mar 2023 11:02:00 +0000 (19:02 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 11 Mar 2023 12:55:31 +0000 (13:55 +0100)
[ Upstream commit b56ec2992a2e43bc3e60d6db86849d31640e791f ]

In etdm dai driver, dai_etdm_parse_of() function is used to parse dts
properties to get parameters. There are two for-loops which are
sepearately for all etdm and etdm input only cases. In etdm in only
loop, dai_id is not initialized, so it keeps the value intiliazed in
another loop.

In the patch, add the missing initialization to fix the unexpected
parsing problem.

Fixes: 1de9a54acafb ("ASoC: mediatek: mt8195: support etdm in platform driver")
Signed-off-by: Trevor Wu <trevor.wu@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20230301110200.26177-3-trevor.wu@mediatek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/mediatek/mt8195/mt8195-dai-etdm.c

index c2e2680..f2c9a1f 100644 (file)
@@ -2567,6 +2567,9 @@ static void mt8195_dai_etdm_parse_of(struct mtk_base_afe *afe)
 
        /* etdm in only */
        for (i = 0; i < 2; i++) {
+               dai_id = ETDM_TO_DAI_ID(i);
+               etdm_data = afe_priv->dai_priv[dai_id];
+
                ret = snprintf(prop, sizeof(prop),
                               "mediatek,%s-chn-disabled",
                               of_afe_etdms[i].name);