diff options
author | Paul Gortmaker <paul.gortmaker@windriver.com> | 2016-07-04 17:12:15 -0400 |
---|---|---|
committer | Michael Turquette <mturquette@baylibre.com> | 2016-07-06 15:20:33 -0700 |
commit | 80c6397c37d56f4cf8e175a541b1ebbf5f7d186a (patch) | |
tree | a2eacf4c66dadbe3f902df64496c49fc84598270 /drivers/clk | |
parent | cb98fd5d4da192cf2bf3fceddcc3bc9e59a22598 (diff) | |
download | lwn-80c6397c37d56f4cf8e175a541b1ebbf5f7d186a.tar.gz lwn-80c6397c37d56f4cf8e175a541b1ebbf5f7d186a.zip |
clk: oxnas: make it explicitly non-modular
The Kconfig currently controlling compilation of this code is:
drivers/clk/Kconfig:config COMMON_CLK_OXNAS
drivers/clk/Kconfig: bool "Clock driver for the OXNAS SoC Family"
...meaning that it currently is not being built as a module by anyone.
Lets remove the modular code that is essentially orphaned, so that
when reading the driver there is no doubt it is builtin-only.
We explicitly disallow a driver unbind, since that doesn't have a
sensible use case anyway, and it allows us to drop the ".remove"
code for non-modular drivers.
Since module_platform_driver() uses the same init level priority as
builtin_platform_driver() the init ordering remains unchanged with
this commit.
Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
Cc: Stephen Boyd <sboyd@codeaurora.org>
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
Cc: linux-clk@vger.kernel.org
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Michael Turquette <mturquette@baylibre.com>
Link: lkml.kernel.org/r/20160704211220.5685-6-paul.gortmaker@windriver.com
Diffstat (limited to 'drivers/clk')
-rw-r--r-- | drivers/clk/clk-oxnas.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/drivers/clk/clk-oxnas.c b/drivers/clk/clk-oxnas.c index 79bcb2e42060..47649ac5d399 100644 --- a/drivers/clk/clk-oxnas.c +++ b/drivers/clk/clk-oxnas.c @@ -18,7 +18,7 @@ #include <linux/clk-provider.h> #include <linux/kernel.h> -#include <linux/module.h> +#include <linux/init.h> #include <linux/of.h> #include <linux/platform_device.h> #include <linux/stringify.h> @@ -170,26 +170,17 @@ static int oxnas_stdclk_probe(struct platform_device *pdev) clk_oxnas->onecell_data); } -static int oxnas_stdclk_remove(struct platform_device *pdev) -{ - of_clk_del_provider(pdev->dev.of_node); - - return 0; -} - static const struct of_device_id oxnas_stdclk_dt_ids[] = { { .compatible = "oxsemi,ox810se-stdclk" }, { } }; -MODULE_DEVICE_TABLE(of, oxnas_stdclk_dt_ids); static struct platform_driver oxnas_stdclk_driver = { .probe = oxnas_stdclk_probe, - .remove = oxnas_stdclk_remove, .driver = { .name = "oxnas-stdclk", + .suppress_bind_attrs = true, .of_match_table = oxnas_stdclk_dt_ids, }, }; - -module_platform_driver(oxnas_stdclk_driver); +builtin_platform_driver(oxnas_stdclk_driver); |