summaryrefslogtreecommitdiff
path: root/drivers/remoteproc
diff options
context:
space:
mode:
authorPeng Fan <peng.fan@nxp.com>2025-10-24 10:51:30 +0800
committerMathieu Poirier <mathieu.poirier@linaro.org>2025-10-24 08:47:26 -0600
commitb2d66cd137e73e5ef5918d910cb42a8c882664d3 (patch)
treedff0d9783642add19d91bf80398d749478303f78 /drivers/remoteproc
parent016a3d4bcf92400b4f91b33fe4c8bdecdabc3c2a (diff)
remoteproc: imx_rproc: Enable PM runtime support unconditionally
PM runtime support is safe and applicable across all i.MX platforms, not just those using the SCU API. Remove the conditional check and enable PM runtime unconditionally to simplify the code and ensure consistent power management behavior. Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com> Reviewed-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> Link: https://lore.kernel.org/r/20251024-imx_rproc_c4-v4-3-af83ed3fdbba@nxp.com Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Diffstat (limited to 'drivers/remoteproc')
-rw-r--r--drivers/remoteproc/imx_rproc.c22
1 files changed, 8 insertions, 14 deletions
diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c
index 820b0cd5adbb..25f5cb4d414e 100644
--- a/drivers/remoteproc/imx_rproc.c
+++ b/drivers/remoteproc/imx_rproc.c
@@ -1119,12 +1119,10 @@ static int imx_rproc_probe(struct platform_device *pdev)
return dev_err_probe(dev, ret, "register restart handler failure\n");
}
- if (dcfg->method == IMX_RPROC_SCU_API) {
- pm_runtime_enable(dev);
- ret = pm_runtime_resume_and_get(dev);
- if (ret)
- return dev_err_probe(dev, ret, "pm_runtime get failed\n");
- }
+ pm_runtime_enable(dev);
+ ret = pm_runtime_resume_and_get(dev);
+ if (ret)
+ return dev_err_probe(dev, ret, "pm_runtime get failed\n");
ret = devm_rproc_add(dev, rproc);
if (ret) {
@@ -1135,10 +1133,8 @@ static int imx_rproc_probe(struct platform_device *pdev)
return 0;
err_put_pm:
- if (dcfg->method == IMX_RPROC_SCU_API) {
- pm_runtime_disable(dev);
- pm_runtime_put_noidle(dev);
- }
+ pm_runtime_disable(dev);
+ pm_runtime_put_noidle(dev);
return ret;
}
@@ -1148,10 +1144,8 @@ static void imx_rproc_remove(struct platform_device *pdev)
struct rproc *rproc = platform_get_drvdata(pdev);
struct imx_rproc *priv = rproc->priv;
- if (priv->dcfg->method == IMX_RPROC_SCU_API) {
- pm_runtime_disable(priv->dev);
- pm_runtime_put_noidle(priv->dev);
- }
+ pm_runtime_disable(priv->dev);
+ pm_runtime_put_noidle(priv->dev);
}
static const struct imx_rproc_plat_ops imx_rproc_ops_arm_smc = {