From: Lars-Peter Clausen Date: Mon, 10 Apr 2023 01:44:52 +0000 (-0700) Subject: clk: axi-clkgen: Use managed `of_clk_add_hw_provider()` X-Git-Tag: v6.6.7~2872^2~5^4~9 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a301528f79d1ec27cd34122d655e0200a950f960;p=platform%2Fkernel%2Flinux-starfive.git clk: axi-clkgen: Use managed `of_clk_add_hw_provider()` Use the managed `devm_of_clk_add_hw_provider()` instead of `of_clk_add_hw_provider()`. This makes sure the provider gets automatically removed on unbind and allows to completely eliminate the drivers `remove()` callback. Signed-off-by: Lars-Peter Clausen Link: https://lore.kernel.org/r/20230410014502.27929-1-lars@metafoo.de Signed-off-by: Stephen Boyd --- diff --git a/drivers/clk/clk-axi-clkgen.c b/drivers/clk/clk-axi-clkgen.c index 671bee5..a04a3d3 100644 --- a/drivers/clk/clk-axi-clkgen.c +++ b/drivers/clk/clk-axi-clkgen.c @@ -553,13 +553,8 @@ static int axi_clkgen_probe(struct platform_device *pdev) if (ret) return ret; - return of_clk_add_hw_provider(pdev->dev.of_node, of_clk_hw_simple_get, - &axi_clkgen->clk_hw); -} - -static void axi_clkgen_remove(struct platform_device *pdev) -{ - of_clk_del_provider(pdev->dev.of_node); + return devm_of_clk_add_hw_provider(&pdev->dev, of_clk_hw_simple_get, + &axi_clkgen->clk_hw); } static const struct of_device_id axi_clkgen_ids[] = { @@ -581,7 +576,6 @@ static struct platform_driver axi_clkgen_driver = { .of_match_table = axi_clkgen_ids, }, .probe = axi_clkgen_probe, - .remove_new = axi_clkgen_remove, }; module_platform_driver(axi_clkgen_driver);