Re: [PATCH 5/5] ASoC: mediatek: mt8195-afe-pcm: Clean up unnecessary functions

From: Trevor Wu (吳文良)
Date: Wed May 03 2023 - 09:26:12 EST


On Wed, 2023-05-03 at 13:34 +0200, AngeloGioacchino Del Regno wrote:
> Function mt8195_afe_init_registers() performs just a single call to
> regmap_multi_reg_write(), it returns int and it's not error checked;
> move that call to the probe function and also add some error check.
>
> While at it, also move the contents of mt8195_afe_parse_of() to the
> probe function as well: since this is getting a handle to topckgen
> and since that's optional, the ifdef for CONFIG_SND_SOC_MT6359 can
> also be removed.
>
> Signed-off-by: AngeloGioacchino Del Regno <
> angelogioacchino.delregno@xxxxxxxxxxxxx>

Acked-by: Trevor Wu <trevor.wu@xxxxxxxxxxxx>

> ---
> sound/soc/mediatek/mt8195/mt8195-afe-pcm.c | 32 ++++++------------
> ----
> 1 file changed, 8 insertions(+), 24 deletions(-)
>
> diff --git a/sound/soc/mediatek/mt8195/mt8195-afe-pcm.c
> b/sound/soc/mediatek/mt8195/mt8195-afe-pcm.c
> index 105db11eecec..d22cf1664d8a 100644
> --- a/sound/soc/mediatek/mt8195/mt8195-afe-pcm.c
> +++ b/sound/soc/mediatek/mt8195/mt8195-afe-pcm.c
> @@ -3030,28 +3030,6 @@ static const struct reg_sequence
> mt8195_cg_patch[] = {
> { AUDIO_TOP_CON1, 0xfffffff8 },
> };
>
> -static int mt8195_afe_init_registers(struct mtk_base_afe *afe)
> -{
> - return regmap_multi_reg_write(afe->regmap,
> - mt8195_afe_reg_defaults,
> - ARRAY_SIZE(mt8195_afe_reg_defaults));
> -}
> -
> -static void mt8195_afe_parse_of(struct mtk_base_afe *afe,
> - struct device_node *np)
> -{
> -#if IS_ENABLED(CONFIG_SND_SOC_MT6359)
> - struct mt8195_afe_private *afe_priv = afe->platform_priv;
> -
> - afe_priv->topckgen = syscon_regmap_lookup_by_phandle(afe-
> >dev->of_node,
> - "mediate
> k,topckgen");
> - if (IS_ERR(afe_priv->topckgen)) {
> - dev_info(afe->dev, "%s() Cannot find topckgen
> controller: %ld\n",
> - __func__, PTR_ERR(afe_priv->topckgen));
> - }
> -#endif
> -}
> -
> static int mt8195_afe_pcm_dev_probe(struct platform_device *pdev)
> {
> struct mtk_base_afe *afe;
> @@ -3160,7 +3138,10 @@ static int mt8195_afe_pcm_dev_probe(struct
> platform_device *pdev)
>
> platform_set_drvdata(pdev, afe);
>
> - mt8195_afe_parse_of(afe, pdev->dev.of_node);
> + afe_priv->topckgen = syscon_regmap_lookup_by_phandle(dev-
> >of_node, "mediatek,topckgen");
> + if (IS_ERR(afe_priv->topckgen))
> + dev_dbg(afe->dev, "Cannot find topckgen controller:
> %ld\n",
> + PTR_ERR(afe_priv->topckgen));
>
> /* enable clock for regcache get default value from hw */
> afe_priv->pm_runtime_bypass_reg_ctl = true;
> @@ -3219,7 +3200,10 @@ static int mt8195_afe_pcm_dev_probe(struct
> platform_device *pdev)
> goto err_pm_put;
> }
>
> - mt8195_afe_init_registers(afe);
> + ret = regmap_multi_reg_write(afe->regmap,
> mt8195_afe_reg_defaults,
> + ARRAY_SIZE(mt8195_afe_reg_defaul
> ts));
> + if (ret)
> + goto err_pm_put;
>
> ret = pm_runtime_put_sync(dev);
> if (ret)
> --
> 2.40.1
>
>