Replace the hand-rolled devm wrapper (ingenic_drm_release_rmem + devm_add_action_or_reset) with the standard devm_of_reserved_mem_device_init(), letting the device resource manager handle cleanup automatically.
Signed-off-by: Mukesh Ojha <[email protected]> --- drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c index 7e569af22391..990c3b4625fa 100644 --- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c +++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c @@ -1060,11 +1060,6 @@ static void ingenic_drm_unbind_all(void *d) component_unbind_all(priv->dev, &priv->drm); } -static void __maybe_unused ingenic_drm_release_rmem(void *d) -{ - of_reserved_mem_device_release(d); -} - static void ingenic_drm_configure_hwdesc(struct ingenic_drm *priv, unsigned int hwdesc, unsigned int next_hwdesc, u32 id) @@ -1127,16 +1122,10 @@ static int ingenic_drm_bind(struct device *dev, bool has_components) } if (IS_ENABLED(CONFIG_OF_RESERVED_MEM)) { - ret = of_reserved_mem_device_init(dev); + ret = devm_of_reserved_mem_device_init(dev); if (ret && ret != -ENODEV) dev_warn(dev, "Failed to get reserved memory: %d\n", ret); - - if (!ret) { - ret = devm_add_action_or_reset(dev, ingenic_drm_release_rmem, dev); - if (ret) - return ret; - } } priv = devm_drm_dev_alloc(dev, &ingenic_drm_driver_data, -- 2.53.0
