[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <3bfe9a79-517d-4a27-94da-263dd691ec37@oss.qualcomm.com>
Date: Fri, 21 Feb 2025 12:49:53 +0100
From: Konrad Dybcio <konrad.dybcio@....qualcomm.com>
To: Manikanta Mylavarapu <quic_mmanikan@...cinc.com>, andersson@...nel.org,
mturquette@...libre.com, sboyd@...nel.org, robh@...nel.org,
krzk+dt@...nel.org, conor+dt@...nel.org, konradybcio@...nel.org,
catalin.marinas@....com, will@...nel.org, p.zabel@...gutronix.de,
richardcochran@...il.com, geert+renesas@...der.be,
dmitry.baryshkov@...aro.org, arnd@...db.de, nfraprado@...labora.com,
quic_tdas@...cinc.com, biju.das.jz@...renesas.com,
elinor.montmasson@...oirfairelinux.com, ross.burton@....com,
javier.carrasco@...fvision.net, quic_anusha@...cinc.com,
linux-arm-msm@...r.kernel.org, linux-clk@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, netdev@...r.kernel.org
Cc: quic_srichara@...cinc.com, quic_varada@...cinc.com
Subject: Re: [PATCH v10 4/6] clk: qcom: Add NSS clock Controller driver for
IPQ9574
On 21.02.2025 11:14 AM, Manikanta Mylavarapu wrote:
> From: Devi Priya <quic_devipriy@...cinc.com>
>
> Add Networking Sub System Clock Controller (NSSCC) driver for ipq9574 based
> devices.
>
> Signed-off-by: Devi Priya <quic_devipriy@...cinc.com>
> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@...cinc.com>
> ---
[...]
> +static int nss_cc_ipq9574_probe(struct platform_device *pdev)
> +{
> + struct regmap *regmap;
> + int ret;
> +
> + ret = devm_pm_runtime_enable(&pdev->dev);
> + if (ret)
> + return ret;
> +
> + ret = devm_pm_clk_create(&pdev->dev);
> + if (ret)
> + return ret;
> +
> + ret = pm_clk_add(&pdev->dev, "nsscc");
> + if (ret)
> + return dev_err_probe(&pdev->dev, ret, "Fail to add AHB clock\n");
> +
> + ret = pm_runtime_resume_and_get(&pdev->dev);
> + if (ret)
> + return ret;
if /\ suceeds
> +
> + regmap = qcom_cc_map(pdev, &nss_cc_ipq9574_desc);
> + if (IS_ERR(regmap))
> + return PTR_ERR(regmap);
you return here without pm_runtime_put, which doesn't decrease the refcount
for core to put down the resource
if (IS_ERR(regmap)) {
pm_runtime_put(&pdev->dev);
return PTR_ERR(regmap);
}
instead
Konrad
> +
> + clk_alpha_pll_configure(&ubi32_pll_main, regmap, &ubi32_pll_config);
> +
> + ret = qcom_cc_really_probe(&pdev->dev, &nss_cc_ipq9574_desc, regmap);
> + pm_runtime_put(&pdev->dev);
> +
> + return ret;
> +}
> +
> +static struct platform_driver nss_cc_ipq9574_driver = {
> + .probe = nss_cc_ipq9574_probe,
> + .driver = {
> + .name = "qcom,nsscc-ipq9574",
> + .of_match_table = nss_cc_ipq9574_match_table,
> + .pm = &nss_cc_ipq9574_pm_ops,
> + .sync_state = icc_sync_state,
> + },
> +};
> +
> +module_platform_driver(nss_cc_ipq9574_driver);
> +
> +MODULE_DESCRIPTION("QTI NSS_CC IPQ9574 Driver");
> +MODULE_LICENSE("GPL");
Powered by blists - more mailing lists