aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Gortmaker <paul.gortmaker@windriver.com>2016-07-04 17:12:15 -0400
committerMichael Turquette <mturquette@baylibre.com>2016-07-06 18:20:33 -0400
commit80c6397c37d56f4cf8e175a541b1ebbf5f7d186a (patch)
treea2eacf4c66dadbe3f902df64496c49fc84598270
parentcb98fd5d4da192cf2bf3fceddcc3bc9e59a22598 (diff)
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
-rw-r--r--drivers/clk/clk-oxnas.c15
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 @@
18 18
19#include <linux/clk-provider.h> 19#include <linux/clk-provider.h>
20#include <linux/kernel.h> 20#include <linux/kernel.h>
21#include <linux/module.h> 21#include <linux/init.h>
22#include <linux/of.h> 22#include <linux/of.h>
23#include <linux/platform_device.h> 23#include <linux/platform_device.h>
24#include <linux/stringify.h> 24#include <linux/stringify.h>
@@ -170,26 +170,17 @@ static int oxnas_stdclk_probe(struct platform_device *pdev)
170 clk_oxnas->onecell_data); 170 clk_oxnas->onecell_data);
171} 171}
172 172
173static int oxnas_stdclk_remove(struct platform_device *pdev)
174{
175 of_clk_del_provider(pdev->dev.of_node);
176
177 return 0;
178}
179
180static const struct of_device_id oxnas_stdclk_dt_ids[] = { 173static const struct of_device_id oxnas_stdclk_dt_ids[] = {
181 { .compatible = "oxsemi,ox810se-stdclk" }, 174 { .compatible = "oxsemi,ox810se-stdclk" },
182 { } 175 { }
183}; 176};
184MODULE_DEVICE_TABLE(of, oxnas_stdclk_dt_ids);
185 177
186static struct platform_driver oxnas_stdclk_driver = { 178static struct platform_driver oxnas_stdclk_driver = {
187 .probe = oxnas_stdclk_probe, 179 .probe = oxnas_stdclk_probe,
188 .remove = oxnas_stdclk_remove,
189 .driver = { 180 .driver = {
190 .name = "oxnas-stdclk", 181 .name = "oxnas-stdclk",
182 .suppress_bind_attrs = true,
191 .of_match_table = oxnas_stdclk_dt_ids, 183 .of_match_table = oxnas_stdclk_dt_ids,
192 }, 184 },
193}; 185};
194 186builtin_platform_driver(oxnas_stdclk_driver);
195module_platform_driver(oxnas_stdclk_driver);