diff mbox series

[v2] clk: samsung: exynos-clkout: Remove misleading of_match_table/MODULE_DEVICE_TABLE

Message ID 20240426092616.4187022-1-m.szyprowski@samsung.com
State New
Headers show
Series [v2] clk: samsung: exynos-clkout: Remove misleading of_match_table/MODULE_DEVICE_TABLE | expand

Commit Message

Marek Szyprowski April 26, 2024, 9:26 a.m. UTC
Since commit 9484f2cb8332 ("clk: samsung: exynos-clkout: convert to
module driver") this driver is instantiated as MFD-cell (matched by
platform device name) not as a real platform device created by OF code.
Remove of_match_table and change related MODULE_DEVICE_TABLE to simple
MODULE_ALIAS to avoid further confusion.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
---
 drivers/clk/samsung/clk-exynos-clkout.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

William McVicker May 1, 2024, 4:49 p.m. UTC | #1
On 04/26/2024, Marek Szyprowski wrote:
> Since commit 9484f2cb8332 ("clk: samsung: exynos-clkout: convert to
> module driver") this driver is instantiated as MFD-cell (matched by
> platform device name) not as a real platform device created by OF code.
> Remove of_match_table and change related MODULE_DEVICE_TABLE to simple
> MODULE_ALIAS to avoid further confusion.
> 
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> ---
>  drivers/clk/samsung/clk-exynos-clkout.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/clk/samsung/clk-exynos-clkout.c b/drivers/clk/samsung/clk-exynos-clkout.c
> index 503c6f5b20d5..e2968784d307 100644
> --- a/drivers/clk/samsung/clk-exynos-clkout.c
> +++ b/drivers/clk/samsung/clk-exynos-clkout.c
> @@ -75,7 +75,6 @@ static const struct of_device_id exynos_clkout_ids[] = {
>  		.data = &exynos_clkout_exynos5,
>  	}, { }
>  };
> -MODULE_DEVICE_TABLE(of, exynos_clkout_ids);
>  
>  /*
>   * Device will be instantiated as child of PMU device without its own
> @@ -237,7 +236,6 @@ static SIMPLE_DEV_PM_OPS(exynos_clkout_pm_ops, exynos_clkout_suspend,
>  static struct platform_driver exynos_clkout_driver = {
>  	.driver = {
>  		.name = "exynos-clkout",
> -		.of_match_table = exynos_clkout_ids,
>  		.pm = &exynos_clkout_pm_ops,
>  	},
>  	.probe = exynos_clkout_probe,
> @@ -248,4 +246,5 @@ module_platform_driver(exynos_clkout_driver);
>  MODULE_AUTHOR("Krzysztof Kozlowski <krzk@kernel.org>");
>  MODULE_AUTHOR("Tomasz Figa <tomasz.figa@gmail.com>");
>  MODULE_DESCRIPTION("Samsung Exynos clock output driver");
> +MODULE_ALIAS("platform:exynos-clkout");

As mentioned by Krzysztof in v1, please create a `platform_device_id` table so
that this is scalable in case we need to add other aliases in the future. For
example, something like this:


static const struct platform_device_id exynos_clkout_platform_ids[] = {
	{ "exynos-clkout" },
	{}
};
MODULE_DEVICE_TABLE(platform, exynos_clkout_platform_ids);

static struct platform_driver exynos_clkout_driver = {
	.driver = {
		.name = "exynos-clkout",
		.pm = &exynos_clkout_pm_ops,
	},
	.probe = exynos_clkout_probe,
	.id_table = exynos_clkout_platform_ids,
...


Thanks,
Will
diff mbox series

Patch

diff --git a/drivers/clk/samsung/clk-exynos-clkout.c b/drivers/clk/samsung/clk-exynos-clkout.c
index 503c6f5b20d5..e2968784d307 100644
--- a/drivers/clk/samsung/clk-exynos-clkout.c
+++ b/drivers/clk/samsung/clk-exynos-clkout.c
@@ -75,7 +75,6 @@  static const struct of_device_id exynos_clkout_ids[] = {
 		.data = &exynos_clkout_exynos5,
 	}, { }
 };
-MODULE_DEVICE_TABLE(of, exynos_clkout_ids);
 
 /*
  * Device will be instantiated as child of PMU device without its own
@@ -237,7 +236,6 @@  static SIMPLE_DEV_PM_OPS(exynos_clkout_pm_ops, exynos_clkout_suspend,
 static struct platform_driver exynos_clkout_driver = {
 	.driver = {
 		.name = "exynos-clkout",
-		.of_match_table = exynos_clkout_ids,
 		.pm = &exynos_clkout_pm_ops,
 	},
 	.probe = exynos_clkout_probe,
@@ -248,4 +246,5 @@  module_platform_driver(exynos_clkout_driver);
 MODULE_AUTHOR("Krzysztof Kozlowski <krzk@kernel.org>");
 MODULE_AUTHOR("Tomasz Figa <tomasz.figa@gmail.com>");
 MODULE_DESCRIPTION("Samsung Exynos clock output driver");
+MODULE_ALIAS("platform:exynos-clkout");
 MODULE_LICENSE("GPL");