2023-03-01 04:08:50

by Trevor Wu (吳文良)

[permalink] [raw]
Subject: [PATCH] ASoC: mediatek: add missing initialization

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.

Signed-off-by: Trevor Wu <[email protected]>
---
sound/soc/mediatek/mt8188/mt8188-dai-etdm.c | 3 +++
sound/soc/mediatek/mt8195/mt8195-dai-etdm.c | 3 +++
2 files changed, 6 insertions(+)

diff --git a/sound/soc/mediatek/mt8188/mt8188-dai-etdm.c b/sound/soc/mediatek/mt8188/mt8188-dai-etdm.c
index 1c53d4cb19bb..7a37752d4244 100644
--- a/sound/soc/mediatek/mt8188/mt8188-dai-etdm.c
+++ b/sound/soc/mediatek/mt8188/mt8188-dai-etdm.c
@@ -2498,6 +2498,9 @@ static void mt8188_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];
+
snprintf(prop, sizeof(prop), "mediatek,%s-chn-disabled",
of_afe_etdms[i].name);

diff --git a/sound/soc/mediatek/mt8195/mt8195-dai-etdm.c b/sound/soc/mediatek/mt8195/mt8195-dai-etdm.c
index c2e268054773..f2c9a1fdbe0d 100644
--- a/sound/soc/mediatek/mt8195/mt8195-dai-etdm.c
+++ b/sound/soc/mediatek/mt8195/mt8195-dai-etdm.c
@@ -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);
--
2.18.0



Subject: Re: [PATCH] ASoC: mediatek: add missing initialization

Il 01/03/23 05:08, Trevor Wu ha scritto:
> 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.
>
> Signed-off-by: Trevor Wu <[email protected]>

I agree about this fix, but this commit is not fine as it is:
Please split it in two commits and add the appropriate Fixes tag to each
for backports.

Regards,
Angelo


2023-03-01 11:10:22

by Trevor Wu (吳文良)

[permalink] [raw]
Subject: Re: [PATCH] ASoC: mediatek: add missing initialization

On Wed, 2023-03-01 at 11:00 +0100, AngeloGioacchino Del Regno wrote:
> Il 01/03/23 05:08, Trevor Wu ha scritto:
> > 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.
> >
> > Signed-off-by: Trevor Wu <[email protected]>
>
> I agree about this fix, but this commit is not fine as it is:
> Please split it in two commits and add the appropriate Fixes tag to
> each
> for backports.
>
> Regards,
> Angelo
>

Got it.
I will split it into two commits in V2.

Thanks,
Trevor