[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <131123e4dde4d95927bb9ec92aefc50bbde53cd6.camel@mediatek.com>
Date: Wed, 3 May 2023 13:25:46 +0000
From: Trevor Wu (吳文良) <Trevor.Wu@...iatek.com>
To: "lgirdwood@...il.com" <lgirdwood@...il.com>,
"angelogioacchino.delregno@...labora.com"
<angelogioacchino.delregno@...labora.com>
CC: "sound-open-firmware@...a-project.org"
<sound-open-firmware@...a-project.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"alsa-devel@...a-project.org" <alsa-devel@...a-project.org>,
"ribalda@...omium.org" <ribalda@...omium.org>,
"linux-mediatek@...ts.infradead.org"
<linux-mediatek@...ts.infradead.org>,
"u.kleine-koenig@...gutronix.de" <u.kleine-koenig@...gutronix.de>,
YC Hung (洪堯俊) <yc.hung@...iatek.com>,
"kai.vehmanen@...ux.intel.com" <kai.vehmanen@...ux.intel.com>,
Chunxu Li (李春旭) <Chunxu.Li@...iatek.com>,
"kernel@...labora.com" <kernel@...labora.com>,
"pierre-louis.bossart@...ux.intel.com"
<pierre-louis.bossart@...ux.intel.com>,
Allen-KH Cheng (程冠勳)
<Allen-KH.Cheng@...iatek.com>,
"broonie@...nel.org" <broonie@...nel.org>,
"tiwai@...e.com" <tiwai@...e.com>,
"yung-chuan.liao@...ux.intel.com" <yung-chuan.liao@...ux.intel.com>,
"ranjani.sridharan@...ux.intel.com"
<ranjani.sridharan@...ux.intel.com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"matthias.bgg@...il.com" <matthias.bgg@...il.com>,
"peter.ujfalusi@...ux.intel.com" <peter.ujfalusi@...ux.intel.com>,
"perex@...ex.cz" <perex@...ex.cz>,
"daniel.baluta@....com" <daniel.baluta@....com>,
"nicolas.ferre@...rochip.com" <nicolas.ferre@...rochip.com>,
TingHan Shen (沈廷翰)
<TingHan.Shen@...iatek.com>,
"error27@...il.com" <error27@...il.com>
Subject: Re: [PATCH 5/5] ASoC: mediatek: mt8195-afe-pcm: Clean up unnecessary
functions
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@...labora.com>
Acked-by: Trevor Wu <trevor.wu@...iatek.com>
> ---
> 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
>
>
Powered by blists - more mailing lists