aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Gortmaker <paul.gortmaker@windriver.com>2016-07-04 17:12:17 -0400
committerMichael Turquette <mturquette@baylibre.com>2016-07-13 17:57:59 -0400
commit4c7c28ffe9658ebfb43e638d9d267e1be2ffb71c (patch)
tree6ea022db98671776cab9eb312bf5fb77cdca7d44
parent9893c9bf6a9c02ff571686f1b5820e4f0841e581 (diff)
clk: samsung: make clk-s5pv210-audss explicitly non-modular
The Kconfig currently controlling compilation of this code is: arch/arm/mach-s5pv210/Kconfig:config ARCH_S5PV210 arch/arm/mach-s5pv210/Kconfig: bool "Samsung S5PV210/S5PC110" if ARCH_MULTI_V7 ...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 this code is already not using module_init, case, the init ordering remains unchanged with this commit. We also delete the MODULE_LICENSE tags etc. since all that information is already contained at the top of the file in the comments. Cc: Tomasz Figa <tomasz.figa@gmail.com> Cc: Stephen Boyd <sboyd@codeaurora.org> Cc: linux-samsung-soc@vger.kernel.org Cc: linux-clk@vger.kernel.org Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Michael Turquette <mturquette@baylibre.com> Link: lkml.kernel.org/r/20160704211220.5685-8-paul.gortmaker@windriver.com
-rw-r--r--drivers/clk/samsung/clk-s5pv210-audss.c29
1 files changed, 2 insertions, 27 deletions
diff --git a/drivers/clk/samsung/clk-s5pv210-audss.c b/drivers/clk/samsung/clk-s5pv210-audss.c
index eefb84b22566..c66ed2d1450e 100644
--- a/drivers/clk/samsung/clk-s5pv210-audss.c
+++ b/drivers/clk/samsung/clk-s5pv210-audss.c
@@ -18,7 +18,7 @@
18#include <linux/clk-provider.h> 18#include <linux/clk-provider.h>
19#include <linux/of_address.h> 19#include <linux/of_address.h>
20#include <linux/syscore_ops.h> 20#include <linux/syscore_ops.h>
21#include <linux/module.h> 21#include <linux/init.h>
22#include <linux/platform_device.h> 22#include <linux/platform_device.h>
23 23
24#include <dt-bindings/clock/s5pv210-audss.h> 24#include <dt-bindings/clock/s5pv210-audss.h>
@@ -194,20 +194,6 @@ unregister:
194 return ret; 194 return ret;
195} 195}
196 196
197static int s5pv210_audss_clk_remove(struct platform_device *pdev)
198{
199 int i;
200
201 of_clk_del_provider(pdev->dev.of_node);
202
203 for (i = 0; i < clk_data.clk_num; i++) {
204 if (!IS_ERR(clk_table[i]))
205 clk_unregister(clk_table[i]);
206 }
207
208 return 0;
209}
210
211static const struct of_device_id s5pv210_audss_clk_of_match[] = { 197static const struct of_device_id s5pv210_audss_clk_of_match[] = {
212 { .compatible = "samsung,s5pv210-audss-clock", }, 198 { .compatible = "samsung,s5pv210-audss-clock", },
213 {}, 199 {},
@@ -216,10 +202,10 @@ static const struct of_device_id s5pv210_audss_clk_of_match[] = {
216static struct platform_driver s5pv210_audss_clk_driver = { 202static struct platform_driver s5pv210_audss_clk_driver = {
217 .driver = { 203 .driver = {
218 .name = "s5pv210-audss-clk", 204 .name = "s5pv210-audss-clk",
205 .suppress_bind_attrs = true,
219 .of_match_table = s5pv210_audss_clk_of_match, 206 .of_match_table = s5pv210_audss_clk_of_match,
220 }, 207 },
221 .probe = s5pv210_audss_clk_probe, 208 .probe = s5pv210_audss_clk_probe,
222 .remove = s5pv210_audss_clk_remove,
223}; 209};
224 210
225static int __init s5pv210_audss_clk_init(void) 211static int __init s5pv210_audss_clk_init(void)
@@ -227,14 +213,3 @@ static int __init s5pv210_audss_clk_init(void)
227 return platform_driver_register(&s5pv210_audss_clk_driver); 213 return platform_driver_register(&s5pv210_audss_clk_driver);
228} 214}
229core_initcall(s5pv210_audss_clk_init); 215core_initcall(s5pv210_audss_clk_init);
230
231static void __exit s5pv210_audss_clk_exit(void)
232{
233 platform_driver_unregister(&s5pv210_audss_clk_driver);
234}
235module_exit(s5pv210_audss_clk_exit);
236
237MODULE_AUTHOR("Tomasz Figa <t.figa@samsung.com>");
238MODULE_DESCRIPTION("S5PV210 Audio Subsystem Clock Controller");
239MODULE_LICENSE("GPL v2");
240MODULE_ALIAS("platform:s5pv210-audss-clk");