mirror of
https://github.com/torvalds/linux.git
synced 2026-05-25 07:33:19 +02:00
remoteproc: imx_dsp_rproc: Use devm_rproc_alloc() helper
Use the device lifecycle managed allocation function. This helps prevent mistakes like freeing out of order in cleanup functions and forgetting to free on error paths. Signed-off-by: Andrew Davis <afd@ti.com> Link: https://lore.kernel.org/r/20240123184632.725054-1-afd@ti.com Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
This commit is contained in:
parent
92a0915ac3
commit
8f12de7913
|
|
@ -1104,8 +1104,8 @@ static int imx_dsp_rproc_probe(struct platform_device *pdev)
|
|||
return ret;
|
||||
}
|
||||
|
||||
rproc = rproc_alloc(dev, "imx-dsp-rproc", &imx_dsp_rproc_ops, fw_name,
|
||||
sizeof(*priv));
|
||||
rproc = devm_rproc_alloc(dev, "imx-dsp-rproc", &imx_dsp_rproc_ops,
|
||||
fw_name, sizeof(*priv));
|
||||
if (!rproc)
|
||||
return -ENOMEM;
|
||||
|
||||
|
|
@ -1125,14 +1125,14 @@ static int imx_dsp_rproc_probe(struct platform_device *pdev)
|
|||
ret = imx_dsp_rproc_detect_mode(priv);
|
||||
if (ret) {
|
||||
dev_err(dev, "failed on imx_dsp_rproc_detect_mode\n");
|
||||
goto err_put_rproc;
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* There are multiple power domains required by DSP on some platform */
|
||||
ret = imx_dsp_attach_pm_domains(priv);
|
||||
if (ret) {
|
||||
dev_err(dev, "failed on imx_dsp_attach_pm_domains\n");
|
||||
goto err_put_rproc;
|
||||
return ret;
|
||||
}
|
||||
/* Get clocks */
|
||||
ret = imx_dsp_rproc_clk_get(priv);
|
||||
|
|
@ -1155,8 +1155,6 @@ static int imx_dsp_rproc_probe(struct platform_device *pdev)
|
|||
|
||||
err_detach_domains:
|
||||
imx_dsp_detach_pm_domains(priv);
|
||||
err_put_rproc:
|
||||
rproc_free(rproc);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
@ -1169,7 +1167,6 @@ static void imx_dsp_rproc_remove(struct platform_device *pdev)
|
|||
pm_runtime_disable(&pdev->dev);
|
||||
rproc_del(rproc);
|
||||
imx_dsp_detach_pm_domains(priv);
|
||||
rproc_free(rproc);
|
||||
}
|
||||
|
||||
/* pm runtime functions */
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user