Replace the hand-rolled keystone_rproc_mem_release() devres action with devm_of_reserved_mem_device_init(), which handles the cleanup automatically. This removes both the wrapper function and the devm_add_action_or_reset() call.
Signed-off-by: Mukesh Ojha <[email protected]> --- drivers/remoteproc/keystone_remoteproc.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/drivers/remoteproc/keystone_remoteproc.c b/drivers/remoteproc/keystone_remoteproc.c index 83763d640c4e..7834a50da209 100644 --- a/drivers/remoteproc/keystone_remoteproc.c +++ b/drivers/remoteproc/keystone_remoteproc.c @@ -330,13 +330,6 @@ static int keystone_rproc_of_get_dev_syscon(struct platform_device *pdev, return 0; } -static void keystone_rproc_mem_release(void *data) -{ - struct device *dev = data; - - of_reserved_mem_device_release(dev); -} - static void keystone_rproc_pm_runtime_put(void *data) { struct device *dev = data; @@ -426,14 +419,9 @@ static int keystone_rproc_probe(struct platform_device *pdev) if (ret) return dev_err_probe(dev, ret, "failed to get gpio for virtio kicks\n"); - ret = of_reserved_mem_device_init(dev); - if (ret) { + ret = devm_of_reserved_mem_device_init(dev); + if (ret) dev_warn(dev, "device does not have specific CMA pool\n"); - } else { - ret = devm_add_action_or_reset(dev, keystone_rproc_mem_release, dev); - if (ret) - return ret; - } /* ensure the DSP is in reset before loading firmware */ ret = reset_control_status(ksproc->reset); -- 2.53.0
