aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arc/kernel/time.c6
-rw-r--r--arch/arm/kernel/smp_twd.c6
-rw-r--r--arch/microblaze/kernel/timer.c2
-rw-r--r--arch/mips/ralink/cevt-rt3352.c2
-rw-r--r--arch/nios2/kernel/time.c2
-rw-r--r--drivers/clocksource/arm_arch_timer.c6
-rw-r--r--drivers/clocksource/arm_global_timer.c2
-rw-r--r--drivers/clocksource/armv7m_systick.c2
-rw-r--r--drivers/clocksource/asm9260_timer.c2
-rw-r--r--drivers/clocksource/bcm2835_timer.c2
-rw-r--r--drivers/clocksource/bcm_kona_timer.c4
-rw-r--r--drivers/clocksource/cadence_ttc_timer.c2
-rw-r--r--drivers/clocksource/clksrc-dbx500-prcmu.c2
-rw-r--r--drivers/clocksource/clksrc-probe.c14
-rw-r--r--drivers/clocksource/clksrc_st_lpc.c2
-rw-r--r--drivers/clocksource/clps711x-timer.c2
-rw-r--r--drivers/clocksource/dw_apb_timer_of.c8
-rw-r--r--drivers/clocksource/exynos_mct.c4
-rw-r--r--drivers/clocksource/fsl_ftm_timer.c2
-rw-r--r--drivers/clocksource/h8300_timer16.c2
-rw-r--r--drivers/clocksource/h8300_timer8.c2
-rw-r--r--drivers/clocksource/h8300_tpu.c2
-rw-r--r--drivers/clocksource/meson6_timer.c2
-rw-r--r--drivers/clocksource/mips-gic-timer.c2
-rw-r--r--drivers/clocksource/moxart_timer.c2
-rw-r--r--drivers/clocksource/mps2-timer.c2
-rw-r--r--drivers/clocksource/mtk_timer.c2
-rw-r--r--drivers/clocksource/mxs_timer.c2
-rw-r--r--drivers/clocksource/nomadik-mtu.c2
-rw-r--r--drivers/clocksource/pxa_timer.c2
-rw-r--r--drivers/clocksource/qcom-timer.c4
-rw-r--r--drivers/clocksource/rockchip_timer.c8
-rw-r--r--drivers/clocksource/samsung_pwm_timer.c8
-rw-r--r--drivers/clocksource/sun4i_timer.c2
-rw-r--r--drivers/clocksource/tango_xtal.c2
-rw-r--r--drivers/clocksource/tegra20_timer.c4
-rw-r--r--drivers/clocksource/time-armada-370-xp.c6
-rw-r--r--drivers/clocksource/time-efm32.c4
-rw-r--r--drivers/clocksource/time-lpc32xx.c2
-rw-r--r--drivers/clocksource/time-orion.c2
-rw-r--r--drivers/clocksource/time-pistachio.c2
-rw-r--r--drivers/clocksource/timer-atlas7.c2
-rw-r--r--drivers/clocksource/timer-atmel-pit.c2
-rw-r--r--drivers/clocksource/timer-atmel-st.c2
-rw-r--r--drivers/clocksource/timer-digicolor.c2
-rw-r--r--drivers/clocksource/timer-imx-gpt.c24
-rw-r--r--drivers/clocksource/timer-integrator-ap.c2
-rw-r--r--drivers/clocksource/timer-keystone.c2
-rw-r--r--drivers/clocksource/timer-nps.c4
-rw-r--r--drivers/clocksource/timer-oxnas-rps.c4
-rw-r--r--drivers/clocksource/timer-prima2.c2
-rw-r--r--drivers/clocksource/timer-sp804.c4
-rw-r--r--drivers/clocksource/timer-stm32.c2
-rw-r--r--drivers/clocksource/timer-sun5i.c4
-rw-r--r--drivers/clocksource/timer-ti-32k.c2
-rw-r--r--drivers/clocksource/timer-u300.c2
-rw-r--r--drivers/clocksource/versatile.c4
-rw-r--r--drivers/clocksource/vf_pit_timer.c2
-rw-r--r--drivers/clocksource/vt8500_timer.c2
-rw-r--r--drivers/clocksource/zevio-timer.c2
-rw-r--r--include/asm-generic/vmlinux.lds.h2
-rw-r--r--include/linux/clocksource.h5
62 files changed, 98 insertions, 117 deletions
diff --git a/arch/arc/kernel/time.c b/arch/arc/kernel/time.c
index 09de669f4ff0..98f22d2eb563 100644
--- a/arch/arc/kernel/time.c
+++ b/arch/arc/kernel/time.c
@@ -130,7 +130,7 @@ static int __init arc_cs_setup_gfrc(struct device_node *node)
130 130
131 return clocksource_register_hz(&arc_counter_gfrc, arc_timer_freq); 131 return clocksource_register_hz(&arc_counter_gfrc, arc_timer_freq);
132} 132}
133CLOCKSOURCE_OF_DECLARE_RET(arc_gfrc, "snps,archs-timer-gfrc", arc_cs_setup_gfrc); 133CLOCKSOURCE_OF_DECLARE(arc_gfrc, "snps,archs-timer-gfrc", arc_cs_setup_gfrc);
134 134
135#endif 135#endif
136 136
@@ -192,7 +192,7 @@ static int __init arc_cs_setup_rtc(struct device_node *node)
192 192
193 return clocksource_register_hz(&arc_counter_rtc, arc_timer_freq); 193 return clocksource_register_hz(&arc_counter_rtc, arc_timer_freq);
194} 194}
195CLOCKSOURCE_OF_DECLARE_RET(arc_rtc, "snps,archs-timer-rtc", arc_cs_setup_rtc); 195CLOCKSOURCE_OF_DECLARE(arc_rtc, "snps,archs-timer-rtc", arc_cs_setup_rtc);
196 196
197#endif 197#endif
198 198
@@ -379,7 +379,7 @@ static int __init arc_of_timer_init(struct device_node *np)
379 379
380 return ret; 380 return ret;
381} 381}
382CLOCKSOURCE_OF_DECLARE_RET(arc_clkevt, "snps,arc-timer", arc_of_timer_init); 382CLOCKSOURCE_OF_DECLARE(arc_clkevt, "snps,arc-timer", arc_of_timer_init);
383 383
384/* 384/*
385 * Called from start_kernel() - boot CPU only 385 * Called from start_kernel() - boot CPU only
diff --git a/arch/arm/kernel/smp_twd.c b/arch/arm/kernel/smp_twd.c
index 2b24be41d9cc..b6ec65e68009 100644
--- a/arch/arm/kernel/smp_twd.c
+++ b/arch/arm/kernel/smp_twd.c
@@ -412,7 +412,7 @@ out:
412 WARN(err, "twd_local_timer_of_register failed (%d)\n", err); 412 WARN(err, "twd_local_timer_of_register failed (%d)\n", err);
413 return err; 413 return err;
414} 414}
415CLOCKSOURCE_OF_DECLARE_RET(arm_twd_a9, "arm,cortex-a9-twd-timer", twd_local_timer_of_register); 415CLOCKSOURCE_OF_DECLARE(arm_twd_a9, "arm,cortex-a9-twd-timer", twd_local_timer_of_register);
416CLOCKSOURCE_OF_DECLARE_RET(arm_twd_a5, "arm,cortex-a5-twd-timer", twd_local_timer_of_register); 416CLOCKSOURCE_OF_DECLARE(arm_twd_a5, "arm,cortex-a5-twd-timer", twd_local_timer_of_register);
417CLOCKSOURCE_OF_DECLARE_RET(arm_twd_11mp, "arm,arm11mp-twd-timer", twd_local_timer_of_register); 417CLOCKSOURCE_OF_DECLARE(arm_twd_11mp, "arm,arm11mp-twd-timer", twd_local_timer_of_register);
418#endif 418#endif
diff --git a/arch/microblaze/kernel/timer.c b/arch/microblaze/kernel/timer.c
index 7f35e7b50f1b..5bbf38b916ef 100644
--- a/arch/microblaze/kernel/timer.c
+++ b/arch/microblaze/kernel/timer.c
@@ -332,5 +332,5 @@ static int __init xilinx_timer_init(struct device_node *timer)
332 return 0; 332 return 0;
333} 333}
334 334
335CLOCKSOURCE_OF_DECLARE_RET(xilinx_timer, "xlnx,xps-timer-1.00.a", 335CLOCKSOURCE_OF_DECLARE(xilinx_timer, "xlnx,xps-timer-1.00.a",
336 xilinx_timer_init); 336 xilinx_timer_init);
diff --git a/arch/mips/ralink/cevt-rt3352.c b/arch/mips/ralink/cevt-rt3352.c
index f2d3c7908626..f24eee04e16a 100644
--- a/arch/mips/ralink/cevt-rt3352.c
+++ b/arch/mips/ralink/cevt-rt3352.c
@@ -150,4 +150,4 @@ static int __init ralink_systick_init(struct device_node *np)
150 return 0; 150 return 0;
151} 151}
152 152
153CLOCKSOURCE_OF_DECLARE_RET(systick, "ralink,cevt-systick", ralink_systick_init); 153CLOCKSOURCE_OF_DECLARE(systick, "ralink,cevt-systick", ralink_systick_init);
diff --git a/arch/nios2/kernel/time.c b/arch/nios2/kernel/time.c
index b75e40e17963..d9563ddb337e 100644
--- a/arch/nios2/kernel/time.c
+++ b/arch/nios2/kernel/time.c
@@ -352,4 +352,4 @@ void __init time_init(void)
352 clocksource_probe(); 352 clocksource_probe();
353} 353}
354 354
355CLOCKSOURCE_OF_DECLARE_RET(nios2_timer, ALTR_TIMER_COMPATIBLE, nios2_time_init); 355CLOCKSOURCE_OF_DECLARE(nios2_timer, ALTR_TIMER_COMPATIBLE, nios2_time_init);
diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
index d0cda68e2c41..9e33309ad2ea 100644
--- a/drivers/clocksource/arm_arch_timer.c
+++ b/drivers/clocksource/arm_arch_timer.c
@@ -784,8 +784,8 @@ static int __init arch_timer_of_init(struct device_node *np)
784 784
785 return arch_timer_init(); 785 return arch_timer_init();
786} 786}
787CLOCKSOURCE_OF_DECLARE_RET(armv7_arch_timer, "arm,armv7-timer", arch_timer_of_init); 787CLOCKSOURCE_OF_DECLARE(armv7_arch_timer, "arm,armv7-timer", arch_timer_of_init);
788CLOCKSOURCE_OF_DECLARE_RET(armv8_arch_timer, "arm,armv8-timer", arch_timer_of_init); 788CLOCKSOURCE_OF_DECLARE(armv8_arch_timer, "arm,armv8-timer", arch_timer_of_init);
789 789
790static int __init arch_timer_mem_init(struct device_node *np) 790static int __init arch_timer_mem_init(struct device_node *np)
791{ 791{
@@ -868,7 +868,7 @@ out:
868 of_node_put(best_frame); 868 of_node_put(best_frame);
869 return ret; 869 return ret;
870} 870}
871CLOCKSOURCE_OF_DECLARE_RET(armv7_arch_timer_mem, "arm,armv7-timer-mem", 871CLOCKSOURCE_OF_DECLARE(armv7_arch_timer_mem, "arm,armv7-timer-mem",
872 arch_timer_mem_init); 872 arch_timer_mem_init);
873 873
874#ifdef CONFIG_ACPI 874#ifdef CONFIG_ACPI
diff --git a/drivers/clocksource/arm_global_timer.c b/drivers/clocksource/arm_global_timer.c
index 40104fc93f24..2a9ceb6e93f9 100644
--- a/drivers/clocksource/arm_global_timer.c
+++ b/drivers/clocksource/arm_global_timer.c
@@ -358,5 +358,5 @@ out_unmap:
358} 358}
359 359
360/* Only tested on r2p2 and r3p0 */ 360/* Only tested on r2p2 and r3p0 */
361CLOCKSOURCE_OF_DECLARE_RET(arm_gt, "arm,cortex-a9-global-timer", 361CLOCKSOURCE_OF_DECLARE(arm_gt, "arm,cortex-a9-global-timer",
362 global_timer_of_register); 362 global_timer_of_register);
diff --git a/drivers/clocksource/armv7m_systick.c b/drivers/clocksource/armv7m_systick.c
index 2b55410edaf6..e93af1f6a36c 100644
--- a/drivers/clocksource/armv7m_systick.c
+++ b/drivers/clocksource/armv7m_systick.c
@@ -81,5 +81,5 @@ out_unmap:
81 return ret; 81 return ret;
82} 82}
83 83
84CLOCKSOURCE_OF_DECLARE_RET(arm_systick, "arm,armv7m-systick", 84CLOCKSOURCE_OF_DECLARE(arm_systick, "arm,armv7m-systick",
85 system_timer_of_register); 85 system_timer_of_register);
diff --git a/drivers/clocksource/asm9260_timer.c b/drivers/clocksource/asm9260_timer.c
index d113c0275d06..1ba871b7fe11 100644
--- a/drivers/clocksource/asm9260_timer.c
+++ b/drivers/clocksource/asm9260_timer.c
@@ -238,5 +238,5 @@ static int __init asm9260_timer_init(struct device_node *np)
238 238
239 return 0; 239 return 0;
240} 240}
241CLOCKSOURCE_OF_DECLARE_RET(asm9260_timer, "alphascale,asm9260-timer", 241CLOCKSOURCE_OF_DECLARE(asm9260_timer, "alphascale,asm9260-timer",
242 asm9260_timer_init); 242 asm9260_timer_init);
diff --git a/drivers/clocksource/bcm2835_timer.c b/drivers/clocksource/bcm2835_timer.c
index 2dcf896b5381..e71acf231c89 100644
--- a/drivers/clocksource/bcm2835_timer.c
+++ b/drivers/clocksource/bcm2835_timer.c
@@ -142,5 +142,5 @@ static int __init bcm2835_timer_init(struct device_node *node)
142 142
143 return 0; 143 return 0;
144} 144}
145CLOCKSOURCE_OF_DECLARE_RET(bcm2835, "brcm,bcm2835-system-timer", 145CLOCKSOURCE_OF_DECLARE(bcm2835, "brcm,bcm2835-system-timer",
146 bcm2835_timer_init); 146 bcm2835_timer_init);
diff --git a/drivers/clocksource/bcm_kona_timer.c b/drivers/clocksource/bcm_kona_timer.c
index c251aa68993f..86f87be3d80f 100644
--- a/drivers/clocksource/bcm_kona_timer.c
+++ b/drivers/clocksource/bcm_kona_timer.c
@@ -195,9 +195,9 @@ static int __init kona_timer_init(struct device_node *node)
195 return 0; 195 return 0;
196} 196}
197 197
198CLOCKSOURCE_OF_DECLARE_RET(brcm_kona, "brcm,kona-timer", kona_timer_init); 198CLOCKSOURCE_OF_DECLARE(brcm_kona, "brcm,kona-timer", kona_timer_init);
199/* 199/*
200 * bcm,kona-timer is deprecated by brcm,kona-timer 200 * bcm,kona-timer is deprecated by brcm,kona-timer
201 * being kept here for driver compatibility 201 * being kept here for driver compatibility
202 */ 202 */
203CLOCKSOURCE_OF_DECLARE_RET(bcm_kona, "bcm,kona-timer", kona_timer_init); 203CLOCKSOURCE_OF_DECLARE(bcm_kona, "bcm,kona-timer", kona_timer_init);
diff --git a/drivers/clocksource/cadence_ttc_timer.c b/drivers/clocksource/cadence_ttc_timer.c
index e2e76311dde2..388a77bdc39a 100644
--- a/drivers/clocksource/cadence_ttc_timer.c
+++ b/drivers/clocksource/cadence_ttc_timer.c
@@ -539,4 +539,4 @@ static int __init ttc_timer_init(struct device_node *timer)
539 return 0; 539 return 0;
540} 540}
541 541
542CLOCKSOURCE_OF_DECLARE_RET(ttc, "cdns,ttc", ttc_timer_init); 542CLOCKSOURCE_OF_DECLARE(ttc, "cdns,ttc", ttc_timer_init);
diff --git a/drivers/clocksource/clksrc-dbx500-prcmu.c b/drivers/clocksource/clksrc-dbx500-prcmu.c
index 5a59d2953388..77a365f573d7 100644
--- a/drivers/clocksource/clksrc-dbx500-prcmu.c
+++ b/drivers/clocksource/clksrc-dbx500-prcmu.c
@@ -86,5 +86,5 @@ static int __init clksrc_dbx500_prcmu_init(struct device_node *node)
86#endif 86#endif
87 return clocksource_register_hz(&clocksource_dbx500_prcmu, RATE_32K); 87 return clocksource_register_hz(&clocksource_dbx500_prcmu, RATE_32K);
88} 88}
89CLOCKSOURCE_OF_DECLARE_RET(dbx500_prcmu, "stericsson,db8500-prcmu-timer-4", 89CLOCKSOURCE_OF_DECLARE(dbx500_prcmu, "stericsson,db8500-prcmu-timer-4",
90 clksrc_dbx500_prcmu_init); 90 clksrc_dbx500_prcmu_init);
diff --git a/drivers/clocksource/clksrc-probe.c b/drivers/clocksource/clksrc-probe.c
index 5fa6a555b35c..bc62be97f0a8 100644
--- a/drivers/clocksource/clksrc-probe.c
+++ b/drivers/clocksource/clksrc-probe.c
@@ -20,19 +20,14 @@
20#include <linux/clocksource.h> 20#include <linux/clocksource.h>
21 21
22extern struct of_device_id __clksrc_of_table[]; 22extern struct of_device_id __clksrc_of_table[];
23extern struct of_device_id __clksrc_ret_of_table[];
24 23
25static const struct of_device_id __clksrc_of_table_sentinel 24static const struct of_device_id __clksrc_of_table_sentinel
26 __used __section(__clksrc_of_table_end); 25 __used __section(__clksrc_of_table_end);
27 26
28static const struct of_device_id __clksrc_ret_of_table_sentinel
29 __used __section(__clksrc_ret_of_table_end);
30
31void __init clocksource_probe(void) 27void __init clocksource_probe(void)
32{ 28{
33 struct device_node *np; 29 struct device_node *np;
34 const struct of_device_id *match; 30 const struct of_device_id *match;
35 of_init_fn_1 init_func;
36 of_init_fn_1_ret init_func_ret; 31 of_init_fn_1_ret init_func_ret;
37 unsigned clocksources = 0; 32 unsigned clocksources = 0;
38 int ret; 33 int ret;
@@ -41,15 +36,6 @@ void __init clocksource_probe(void)
41 if (!of_device_is_available(np)) 36 if (!of_device_is_available(np))
42 continue; 37 continue;
43 38
44 init_func = match->data;
45 init_func(np);
46 clocksources++;
47 }
48
49 for_each_matching_node_and_match(np, __clksrc_ret_of_table, &match) {
50 if (!of_device_is_available(np))
51 continue;
52
53 init_func_ret = match->data; 39 init_func_ret = match->data;
54 40
55 ret = init_func_ret(np); 41 ret = init_func_ret(np);
diff --git a/drivers/clocksource/clksrc_st_lpc.c b/drivers/clocksource/clksrc_st_lpc.c
index c9022a9eb593..03cc49217bb4 100644
--- a/drivers/clocksource/clksrc_st_lpc.c
+++ b/drivers/clocksource/clksrc_st_lpc.c
@@ -132,4 +132,4 @@ static int __init st_clksrc_of_register(struct device_node *np)
132 132
133 return ret; 133 return ret;
134} 134}
135CLOCKSOURCE_OF_DECLARE_RET(ddata, "st,stih407-lpc", st_clksrc_of_register); 135CLOCKSOURCE_OF_DECLARE(ddata, "st,stih407-lpc", st_clksrc_of_register);
diff --git a/drivers/clocksource/clps711x-timer.c b/drivers/clocksource/clps711x-timer.c
index 3b6619808442..84aed78261e4 100644
--- a/drivers/clocksource/clps711x-timer.c
+++ b/drivers/clocksource/clps711x-timer.c
@@ -119,5 +119,5 @@ static int __init clps711x_timer_init(struct device_node *np)
119 return -EINVAL; 119 return -EINVAL;
120 } 120 }
121} 121}
122CLOCKSOURCE_OF_DECLARE_RET(clps711x, "cirrus,clps711x-timer", clps711x_timer_init); 122CLOCKSOURCE_OF_DECLARE(clps711x, "cirrus,clps711x-timer", clps711x_timer_init);
123#endif 123#endif
diff --git a/drivers/clocksource/dw_apb_timer_of.c b/drivers/clocksource/dw_apb_timer_of.c
index 4985a2cadad9..aee6c0d39a7c 100644
--- a/drivers/clocksource/dw_apb_timer_of.c
+++ b/drivers/clocksource/dw_apb_timer_of.c
@@ -167,7 +167,7 @@ static int __init dw_apb_timer_init(struct device_node *timer)
167 167
168 return 0; 168 return 0;
169} 169}
170CLOCKSOURCE_OF_DECLARE_RET(pc3x2_timer, "picochip,pc3x2-timer", dw_apb_timer_init); 170CLOCKSOURCE_OF_DECLARE(pc3x2_timer, "picochip,pc3x2-timer", dw_apb_timer_init);
171CLOCKSOURCE_OF_DECLARE_RET(apb_timer_osc, "snps,dw-apb-timer-osc", dw_apb_timer_init); 171CLOCKSOURCE_OF_DECLARE(apb_timer_osc, "snps,dw-apb-timer-osc", dw_apb_timer_init);
172CLOCKSOURCE_OF_DECLARE_RET(apb_timer_sp, "snps,dw-apb-timer-sp", dw_apb_timer_init); 172CLOCKSOURCE_OF_DECLARE(apb_timer_sp, "snps,dw-apb-timer-sp", dw_apb_timer_init);
173CLOCKSOURCE_OF_DECLARE_RET(apb_timer, "snps,dw-apb-timer", dw_apb_timer_init); 173CLOCKSOURCE_OF_DECLARE(apb_timer, "snps,dw-apb-timer", dw_apb_timer_init);
diff --git a/drivers/clocksource/exynos_mct.c b/drivers/clocksource/exynos_mct.c
index f6caed0c36ae..0d18dd4b3bd2 100644
--- a/drivers/clocksource/exynos_mct.c
+++ b/drivers/clocksource/exynos_mct.c
@@ -627,5 +627,5 @@ static int __init mct_init_ppi(struct device_node *np)
627{ 627{
628 return mct_init_dt(np, MCT_INT_PPI); 628 return mct_init_dt(np, MCT_INT_PPI);
629} 629}
630CLOCKSOURCE_OF_DECLARE_RET(exynos4210, "samsung,exynos4210-mct", mct_init_spi); 630CLOCKSOURCE_OF_DECLARE(exynos4210, "samsung,exynos4210-mct", mct_init_spi);
631CLOCKSOURCE_OF_DECLARE_RET(exynos4412, "samsung,exynos4412-mct", mct_init_ppi); 631CLOCKSOURCE_OF_DECLARE(exynos4412, "samsung,exynos4412-mct", mct_init_ppi);
diff --git a/drivers/clocksource/fsl_ftm_timer.c b/drivers/clocksource/fsl_ftm_timer.c
index 9ad4ca32fb2d..738515b89073 100644
--- a/drivers/clocksource/fsl_ftm_timer.c
+++ b/drivers/clocksource/fsl_ftm_timer.c
@@ -369,4 +369,4 @@ err:
369 kfree(priv); 369 kfree(priv);
370 return ret; 370 return ret;
371} 371}
372CLOCKSOURCE_OF_DECLARE_RET(flextimer, "fsl,ftm-timer", ftm_timer_init); 372CLOCKSOURCE_OF_DECLARE(flextimer, "fsl,ftm-timer", ftm_timer_init);
diff --git a/drivers/clocksource/h8300_timer16.c b/drivers/clocksource/h8300_timer16.c
index 9d99fc85ffad..07d9d5be9054 100644
--- a/drivers/clocksource/h8300_timer16.c
+++ b/drivers/clocksource/h8300_timer16.c
@@ -187,5 +187,5 @@ free_clk:
187 return ret; 187 return ret;
188} 188}
189 189
190CLOCKSOURCE_OF_DECLARE_RET(h8300_16bit, "renesas,16bit-timer", 190CLOCKSOURCE_OF_DECLARE(h8300_16bit, "renesas,16bit-timer",
191 h8300_16timer_init); 191 h8300_16timer_init);
diff --git a/drivers/clocksource/h8300_timer8.c b/drivers/clocksource/h8300_timer8.c
index 0292a1907619..546bb180f5a4 100644
--- a/drivers/clocksource/h8300_timer8.c
+++ b/drivers/clocksource/h8300_timer8.c
@@ -215,4 +215,4 @@ free_clk:
215 return ret; 215 return ret;
216} 216}
217 217
218CLOCKSOURCE_OF_DECLARE_RET(h8300_8bit, "renesas,8bit-timer", h8300_8timer_init); 218CLOCKSOURCE_OF_DECLARE(h8300_8bit, "renesas,8bit-timer", h8300_8timer_init);
diff --git a/drivers/clocksource/h8300_tpu.c b/drivers/clocksource/h8300_tpu.c
index 4faf718b30f3..7bdf1991c847 100644
--- a/drivers/clocksource/h8300_tpu.c
+++ b/drivers/clocksource/h8300_tpu.c
@@ -154,4 +154,4 @@ free_clk:
154 return ret; 154 return ret;
155} 155}
156 156
157CLOCKSOURCE_OF_DECLARE_RET(h8300_tpu, "renesas,tpu", h8300_tpu_init); 157CLOCKSOURCE_OF_DECLARE(h8300_tpu, "renesas,tpu", h8300_tpu_init);
diff --git a/drivers/clocksource/meson6_timer.c b/drivers/clocksource/meson6_timer.c
index 3a6e78f62b19..52af591a9fc7 100644
--- a/drivers/clocksource/meson6_timer.c
+++ b/drivers/clocksource/meson6_timer.c
@@ -174,5 +174,5 @@ static int __init meson6_timer_init(struct device_node *node)
174 1, 0xfffe); 174 1, 0xfffe);
175 return 0; 175 return 0;
176} 176}
177CLOCKSOURCE_OF_DECLARE_RET(meson6, "amlogic,meson6-timer", 177CLOCKSOURCE_OF_DECLARE(meson6, "amlogic,meson6-timer",
178 meson6_timer_init); 178 meson6_timer_init);
diff --git a/drivers/clocksource/mips-gic-timer.c b/drivers/clocksource/mips-gic-timer.c
index b164b8712f39..1572c7a778ab 100644
--- a/drivers/clocksource/mips-gic-timer.c
+++ b/drivers/clocksource/mips-gic-timer.c
@@ -222,5 +222,5 @@ static void __init gic_clocksource_of_init(struct device_node *node)
222 222
223 return 0; 223 return 0;
224} 224}
225CLOCKSOURCE_OF_DECLARE_RET(mips_gic_timer, "mti,gic-timer", 225CLOCKSOURCE_OF_DECLARE(mips_gic_timer, "mti,gic-timer",
226 gic_clocksource_of_init); 226 gic_clocksource_of_init);
diff --git a/drivers/clocksource/moxart_timer.c b/drivers/clocksource/moxart_timer.c
index b9c30cd035bf..841454417acd 100644
--- a/drivers/clocksource/moxart_timer.c
+++ b/drivers/clocksource/moxart_timer.c
@@ -178,4 +178,4 @@ static int __init moxart_timer_init(struct device_node *node)
178 178
179 return 0; 179 return 0;
180} 180}
181CLOCKSOURCE_OF_DECLARE_RET(moxart, "moxa,moxart-timer", moxart_timer_init); 181CLOCKSOURCE_OF_DECLARE(moxart, "moxa,moxart-timer", moxart_timer_init);
diff --git a/drivers/clocksource/mps2-timer.c b/drivers/clocksource/mps2-timer.c
index c303fa9ba87f..3e4431ed9aa9 100644
--- a/drivers/clocksource/mps2-timer.c
+++ b/drivers/clocksource/mps2-timer.c
@@ -274,4 +274,4 @@ static int __init mps2_timer_init(struct device_node *np)
274 return 0; 274 return 0;
275} 275}
276 276
277CLOCKSOURCE_OF_DECLARE_RET(mps2_timer, "arm,mps2-timer", mps2_timer_init); 277CLOCKSOURCE_OF_DECLARE(mps2_timer, "arm,mps2-timer", mps2_timer_init);
diff --git a/drivers/clocksource/mtk_timer.c b/drivers/clocksource/mtk_timer.c
index 432a2c0884a9..90659493c59c 100644
--- a/drivers/clocksource/mtk_timer.c
+++ b/drivers/clocksource/mtk_timer.c
@@ -265,4 +265,4 @@ err_kzalloc:
265 265
266 return -EINVAL; 266 return -EINVAL;
267} 267}
268CLOCKSOURCE_OF_DECLARE_RET(mtk_mt6577, "mediatek,mt6577-timer", mtk_timer_init); 268CLOCKSOURCE_OF_DECLARE(mtk_mt6577, "mediatek,mt6577-timer", mtk_timer_init);
diff --git a/drivers/clocksource/mxs_timer.c b/drivers/clocksource/mxs_timer.c
index 17b9d1991178..630a8d3904bb 100644
--- a/drivers/clocksource/mxs_timer.c
+++ b/drivers/clocksource/mxs_timer.c
@@ -295,4 +295,4 @@ static int __init mxs_timer_init(struct device_node *np)
295 295
296 return setup_irq(irq, &mxs_timer_irq); 296 return setup_irq(irq, &mxs_timer_irq);
297} 297}
298CLOCKSOURCE_OF_DECLARE_RET(mxs, "fsl,timrot", mxs_timer_init); 298CLOCKSOURCE_OF_DECLARE(mxs, "fsl,timrot", mxs_timer_init);
diff --git a/drivers/clocksource/nomadik-mtu.c b/drivers/clocksource/nomadik-mtu.c
index d2be5b3e0318..3c124d1ca600 100644
--- a/drivers/clocksource/nomadik-mtu.c
+++ b/drivers/clocksource/nomadik-mtu.c
@@ -284,5 +284,5 @@ static int __init nmdk_timer_of_init(struct device_node *node)
284 284
285 return nmdk_timer_init(base, irq, pclk, clk); 285 return nmdk_timer_init(base, irq, pclk, clk);
286} 286}
287CLOCKSOURCE_OF_DECLARE_RET(nomadik_mtu, "st,nomadik-mtu", 287CLOCKSOURCE_OF_DECLARE(nomadik_mtu, "st,nomadik-mtu",
288 nmdk_timer_of_init); 288 nmdk_timer_of_init);
diff --git a/drivers/clocksource/pxa_timer.c b/drivers/clocksource/pxa_timer.c
index 59af75cc4c74..937e10b84d58 100644
--- a/drivers/clocksource/pxa_timer.c
+++ b/drivers/clocksource/pxa_timer.c
@@ -213,7 +213,7 @@ static int __init pxa_timer_dt_init(struct device_node *np)
213 213
214 return pxa_timer_common_init(irq, clk_get_rate(clk)); 214 return pxa_timer_common_init(irq, clk_get_rate(clk));
215} 215}
216CLOCKSOURCE_OF_DECLARE_RET(pxa_timer, "marvell,pxa-timer", pxa_timer_dt_init); 216CLOCKSOURCE_OF_DECLARE(pxa_timer, "marvell,pxa-timer", pxa_timer_dt_init);
217 217
218/* 218/*
219 * Legacy timer init for non device-tree boards. 219 * Legacy timer init for non device-tree boards.
diff --git a/drivers/clocksource/qcom-timer.c b/drivers/clocksource/qcom-timer.c
index 79f73bddc5f4..662576339049 100644
--- a/drivers/clocksource/qcom-timer.c
+++ b/drivers/clocksource/qcom-timer.c
@@ -273,5 +273,5 @@ static int __init msm_dt_timer_init(struct device_node *np)
273 273
274 return msm_timer_init(freq, 32, irq, !!percpu_offset); 274 return msm_timer_init(freq, 32, irq, !!percpu_offset);
275} 275}
276CLOCKSOURCE_OF_DECLARE_RET(kpss_timer, "qcom,kpss-timer", msm_dt_timer_init); 276CLOCKSOURCE_OF_DECLARE(kpss_timer, "qcom,kpss-timer", msm_dt_timer_init);
277CLOCKSOURCE_OF_DECLARE_RET(scss_timer, "qcom,scss-timer", msm_dt_timer_init); 277CLOCKSOURCE_OF_DECLARE(scss_timer, "qcom,scss-timer", msm_dt_timer_init);
diff --git a/drivers/clocksource/rockchip_timer.c b/drivers/clocksource/rockchip_timer.c
index 85aee6953944..23e267acba25 100644
--- a/drivers/clocksource/rockchip_timer.c
+++ b/drivers/clocksource/rockchip_timer.c
@@ -205,7 +205,7 @@ static int __init rk3399_timer_init(struct device_node *np)
205 return rk_timer_init(np, TIMER_CONTROL_REG3399); 205 return rk_timer_init(np, TIMER_CONTROL_REG3399);
206} 206}
207 207
208CLOCKSOURCE_OF_DECLARE_RET(rk3288_timer, "rockchip,rk3288-timer", 208CLOCKSOURCE_OF_DECLARE(rk3288_timer, "rockchip,rk3288-timer",
209 rk3288_timer_init); 209 rk3288_timer_init);
210CLOCKSOURCE_OF_DECLARE_RET(rk3399_timer, "rockchip,rk3399-timer", 210CLOCKSOURCE_OF_DECLARE(rk3399_timer, "rockchip,rk3399-timer",
211 rk3399_timer_init); 211 rk3399_timer_init);
diff --git a/drivers/clocksource/samsung_pwm_timer.c b/drivers/clocksource/samsung_pwm_timer.c
index 27a9797e8187..54565bd0093b 100644
--- a/drivers/clocksource/samsung_pwm_timer.c
+++ b/drivers/clocksource/samsung_pwm_timer.c
@@ -466,7 +466,7 @@ static int __init s3c2410_pwm_clocksource_init(struct device_node *np)
466{ 466{
467 return samsung_pwm_alloc(np, &s3c24xx_variant); 467 return samsung_pwm_alloc(np, &s3c24xx_variant);
468} 468}
469CLOCKSOURCE_OF_DECLARE_RET(s3c2410_pwm, "samsung,s3c2410-pwm", s3c2410_pwm_clocksource_init); 469CLOCKSOURCE_OF_DECLARE(s3c2410_pwm, "samsung,s3c2410-pwm", s3c2410_pwm_clocksource_init);
470 470
471static const struct samsung_pwm_variant s3c64xx_variant = { 471static const struct samsung_pwm_variant s3c64xx_variant = {
472 .bits = 32, 472 .bits = 32,
@@ -479,7 +479,7 @@ static int __init s3c64xx_pwm_clocksource_init(struct device_node *np)
479{ 479{
480 return samsung_pwm_alloc(np, &s3c64xx_variant); 480 return samsung_pwm_alloc(np, &s3c64xx_variant);
481} 481}
482CLOCKSOURCE_OF_DECLARE_RET(s3c6400_pwm, "samsung,s3c6400-pwm", s3c64xx_pwm_clocksource_init); 482CLOCKSOURCE_OF_DECLARE(s3c6400_pwm, "samsung,s3c6400-pwm", s3c64xx_pwm_clocksource_init);
483 483
484static const struct samsung_pwm_variant s5p64x0_variant = { 484static const struct samsung_pwm_variant s5p64x0_variant = {
485 .bits = 32, 485 .bits = 32,
@@ -492,7 +492,7 @@ static int __init s5p64x0_pwm_clocksource_init(struct device_node *np)
492{ 492{
493 return samsung_pwm_alloc(np, &s5p64x0_variant); 493 return samsung_pwm_alloc(np, &s5p64x0_variant);
494} 494}
495CLOCKSOURCE_OF_DECLARE_RET(s5p6440_pwm, "samsung,s5p6440-pwm", s5p64x0_pwm_clocksource_init); 495CLOCKSOURCE_OF_DECLARE(s5p6440_pwm, "samsung,s5p6440-pwm", s5p64x0_pwm_clocksource_init);
496 496
497static const struct samsung_pwm_variant s5p_variant = { 497static const struct samsung_pwm_variant s5p_variant = {
498 .bits = 32, 498 .bits = 32,
@@ -505,5 +505,5 @@ static int __init s5p_pwm_clocksource_init(struct device_node *np)
505{ 505{
506 return samsung_pwm_alloc(np, &s5p_variant); 506 return samsung_pwm_alloc(np, &s5p_variant);
507} 507}
508CLOCKSOURCE_OF_DECLARE_RET(s5pc100_pwm, "samsung,s5pc100-pwm", s5p_pwm_clocksource_init); 508CLOCKSOURCE_OF_DECLARE(s5pc100_pwm, "samsung,s5pc100-pwm", s5p_pwm_clocksource_init);
509#endif 509#endif
diff --git a/drivers/clocksource/sun4i_timer.c b/drivers/clocksource/sun4i_timer.c
index 445373091fe8..97669ee4df2a 100644
--- a/drivers/clocksource/sun4i_timer.c
+++ b/drivers/clocksource/sun4i_timer.c
@@ -226,5 +226,5 @@ static int __init sun4i_timer_init(struct device_node *node)
226 226
227 return ret; 227 return ret;
228} 228}
229CLOCKSOURCE_OF_DECLARE_RET(sun4i, "allwinner,sun4i-a10-timer", 229CLOCKSOURCE_OF_DECLARE(sun4i, "allwinner,sun4i-a10-timer",
230 sun4i_timer_init); 230 sun4i_timer_init);
diff --git a/drivers/clocksource/tango_xtal.c b/drivers/clocksource/tango_xtal.c
index 7dc716cc976f..12fcef8cf2d3 100644
--- a/drivers/clocksource/tango_xtal.c
+++ b/drivers/clocksource/tango_xtal.c
@@ -53,4 +53,4 @@ static int __init tango_clocksource_init(struct device_node *np)
53 return 0; 53 return 0;
54} 54}
55 55
56CLOCKSOURCE_OF_DECLARE_RET(tango, "sigma,tick-counter", tango_clocksource_init); 56CLOCKSOURCE_OF_DECLARE(tango, "sigma,tick-counter", tango_clocksource_init);
diff --git a/drivers/clocksource/tegra20_timer.c b/drivers/clocksource/tegra20_timer.c
index 543c37e3a62c..f960891aa04e 100644
--- a/drivers/clocksource/tegra20_timer.c
+++ b/drivers/clocksource/tegra20_timer.c
@@ -237,7 +237,7 @@ static int __init tegra20_init_timer(struct device_node *np)
237 237
238 return 0; 238 return 0;
239} 239}
240CLOCKSOURCE_OF_DECLARE_RET(tegra20_timer, "nvidia,tegra20-timer", tegra20_init_timer); 240CLOCKSOURCE_OF_DECLARE(tegra20_timer, "nvidia,tegra20-timer", tegra20_init_timer);
241 241
242static int __init tegra20_init_rtc(struct device_node *np) 242static int __init tegra20_init_rtc(struct device_node *np)
243{ 243{
@@ -261,4 +261,4 @@ static int __init tegra20_init_rtc(struct device_node *np)
261 261
262 return register_persistent_clock(NULL, tegra_read_persistent_clock64); 262 return register_persistent_clock(NULL, tegra_read_persistent_clock64);
263} 263}
264CLOCKSOURCE_OF_DECLARE_RET(tegra20_rtc, "nvidia,tegra20-rtc", tegra20_init_rtc); 264CLOCKSOURCE_OF_DECLARE(tegra20_rtc, "nvidia,tegra20-rtc", tegra20_init_rtc);
diff --git a/drivers/clocksource/time-armada-370-xp.c b/drivers/clocksource/time-armada-370-xp.c
index bc4ab48d4048..a4e59239f28e 100644
--- a/drivers/clocksource/time-armada-370-xp.c
+++ b/drivers/clocksource/time-armada-370-xp.c
@@ -371,7 +371,7 @@ static int __init armada_xp_timer_init(struct device_node *np)
371 371
372 return armada_370_xp_timer_common_init(np); 372 return armada_370_xp_timer_common_init(np);
373} 373}
374CLOCKSOURCE_OF_DECLARE_RET(armada_xp, "marvell,armada-xp-timer", 374CLOCKSOURCE_OF_DECLARE(armada_xp, "marvell,armada-xp-timer",
375 armada_xp_timer_init); 375 armada_xp_timer_init);
376 376
377static int __init armada_375_timer_init(struct device_node *np) 377static int __init armada_375_timer_init(struct device_node *np)
@@ -409,7 +409,7 @@ static int __init armada_375_timer_init(struct device_node *np)
409 409
410 return armada_370_xp_timer_common_init(np); 410 return armada_370_xp_timer_common_init(np);
411} 411}
412CLOCKSOURCE_OF_DECLARE_RET(armada_375, "marvell,armada-375-timer", 412CLOCKSOURCE_OF_DECLARE(armada_375, "marvell,armada-375-timer",
413 armada_375_timer_init); 413 armada_375_timer_init);
414 414
415static int __init armada_370_timer_init(struct device_node *np) 415static int __init armada_370_timer_init(struct device_node *np)
@@ -432,5 +432,5 @@ static int __init armada_370_timer_init(struct device_node *np)
432 432
433 return armada_370_xp_timer_common_init(np); 433 return armada_370_xp_timer_common_init(np);
434} 434}
435CLOCKSOURCE_OF_DECLARE_RET(armada_370, "marvell,armada-370-timer", 435CLOCKSOURCE_OF_DECLARE(armada_370, "marvell,armada-370-timer",
436 armada_370_timer_init); 436 armada_370_timer_init);
diff --git a/drivers/clocksource/time-efm32.c b/drivers/clocksource/time-efm32.c
index 6e2f79fd6ad0..5ac344b383e1 100644
--- a/drivers/clocksource/time-efm32.c
+++ b/drivers/clocksource/time-efm32.c
@@ -283,5 +283,5 @@ static int __init efm32_timer_init(struct device_node *np)
283 283
284 return ret; 284 return ret;
285} 285}
286CLOCKSOURCE_OF_DECLARE_RET(efm32compat, "efm32,timer", efm32_timer_init); 286CLOCKSOURCE_OF_DECLARE(efm32compat, "efm32,timer", efm32_timer_init);
287CLOCKSOURCE_OF_DECLARE_RET(efm32, "energymicro,efm32-timer", efm32_timer_init); 287CLOCKSOURCE_OF_DECLARE(efm32, "energymicro,efm32-timer", efm32_timer_init);
diff --git a/drivers/clocksource/time-lpc32xx.c b/drivers/clocksource/time-lpc32xx.c
index cb5b8665ff82..9649cfdb9213 100644
--- a/drivers/clocksource/time-lpc32xx.c
+++ b/drivers/clocksource/time-lpc32xx.c
@@ -311,4 +311,4 @@ static int __init lpc32xx_timer_init(struct device_node *np)
311 311
312 return ret; 312 return ret;
313} 313}
314CLOCKSOURCE_OF_DECLARE_RET(lpc32xx_timer, "nxp,lpc3220-timer", lpc32xx_timer_init); 314CLOCKSOURCE_OF_DECLARE(lpc32xx_timer, "nxp,lpc3220-timer", lpc32xx_timer_init);
diff --git a/drivers/clocksource/time-orion.c b/drivers/clocksource/time-orion.c
index 5fdeb5dcc4cf..a28f496e97cf 100644
--- a/drivers/clocksource/time-orion.c
+++ b/drivers/clocksource/time-orion.c
@@ -167,4 +167,4 @@ static int __init orion_timer_init(struct device_node *np)
167 167
168 return 0; 168 return 0;
169} 169}
170CLOCKSOURCE_OF_DECLARE_RET(orion_timer, "marvell,orion-timer", orion_timer_init); 170CLOCKSOURCE_OF_DECLARE(orion_timer, "marvell,orion-timer", orion_timer_init);
diff --git a/drivers/clocksource/time-pistachio.c b/drivers/clocksource/time-pistachio.c
index adaaec5e9abd..a7d9a08e4b0e 100644
--- a/drivers/clocksource/time-pistachio.c
+++ b/drivers/clocksource/time-pistachio.c
@@ -214,5 +214,5 @@ static int __init pistachio_clksrc_of_init(struct device_node *node)
214 sched_clock_register(pistachio_read_sched_clock, 32, rate); 214 sched_clock_register(pistachio_read_sched_clock, 32, rate);
215 return clocksource_register_hz(&pcs_gpt.cs, rate); 215 return clocksource_register_hz(&pcs_gpt.cs, rate);
216} 216}
217CLOCKSOURCE_OF_DECLARE_RET(pistachio_gptimer, "img,pistachio-gptimer", 217CLOCKSOURCE_OF_DECLARE(pistachio_gptimer, "img,pistachio-gptimer",
218 pistachio_clksrc_of_init); 218 pistachio_clksrc_of_init);
diff --git a/drivers/clocksource/timer-atlas7.c b/drivers/clocksource/timer-atlas7.c
index 7b1a0071a211..90f8fbc154a4 100644
--- a/drivers/clocksource/timer-atlas7.c
+++ b/drivers/clocksource/timer-atlas7.c
@@ -304,4 +304,4 @@ static int __init sirfsoc_of_timer_init(struct device_node *np)
304 304
305 return sirfsoc_atlas7_timer_init(np); 305 return sirfsoc_atlas7_timer_init(np);
306} 306}
307CLOCKSOURCE_OF_DECLARE_RET(sirfsoc_atlas7_timer, "sirf,atlas7-tick", sirfsoc_of_timer_init); 307CLOCKSOURCE_OF_DECLARE(sirfsoc_atlas7_timer, "sirf,atlas7-tick", sirfsoc_of_timer_init);
diff --git a/drivers/clocksource/timer-atmel-pit.c b/drivers/clocksource/timer-atmel-pit.c
index ffaca7c2c996..1ffac0cb0cb7 100644
--- a/drivers/clocksource/timer-atmel-pit.c
+++ b/drivers/clocksource/timer-atmel-pit.c
@@ -270,5 +270,5 @@ static int __init at91sam926x_pit_dt_init(struct device_node *node)
270 270
271 return at91sam926x_pit_common_init(data); 271 return at91sam926x_pit_common_init(data);
272} 272}
273CLOCKSOURCE_OF_DECLARE_RET(at91sam926x_pit, "atmel,at91sam9260-pit", 273CLOCKSOURCE_OF_DECLARE(at91sam926x_pit, "atmel,at91sam9260-pit",
274 at91sam926x_pit_dt_init); 274 at91sam926x_pit_dt_init);
diff --git a/drivers/clocksource/timer-atmel-st.c b/drivers/clocksource/timer-atmel-st.c
index e9331d36965b..e90ab5b63a90 100644
--- a/drivers/clocksource/timer-atmel-st.c
+++ b/drivers/clocksource/timer-atmel-st.c
@@ -260,5 +260,5 @@ static int __init atmel_st_timer_init(struct device_node *node)
260 /* register clocksource */ 260 /* register clocksource */
261 return clocksource_register_hz(&clk32k, sclk_rate); 261 return clocksource_register_hz(&clk32k, sclk_rate);
262} 262}
263CLOCKSOURCE_OF_DECLARE_RET(atmel_st_timer, "atmel,at91rm9200-st", 263CLOCKSOURCE_OF_DECLARE(atmel_st_timer, "atmel,at91rm9200-st",
264 atmel_st_timer_init); 264 atmel_st_timer_init);
diff --git a/drivers/clocksource/timer-digicolor.c b/drivers/clocksource/timer-digicolor.c
index b929061ebe56..10318cc99c0e 100644
--- a/drivers/clocksource/timer-digicolor.c
+++ b/drivers/clocksource/timer-digicolor.c
@@ -202,5 +202,5 @@ static int __init digicolor_timer_init(struct device_node *node)
202 202
203 return 0; 203 return 0;
204} 204}
205CLOCKSOURCE_OF_DECLARE_RET(conexant_digicolor, "cnxt,cx92755-timer", 205CLOCKSOURCE_OF_DECLARE(conexant_digicolor, "cnxt,cx92755-timer",
206 digicolor_timer_init); 206 digicolor_timer_init);
diff --git a/drivers/clocksource/timer-imx-gpt.c b/drivers/clocksource/timer-imx-gpt.c
index d5640a747078..f595460bfc58 100644
--- a/drivers/clocksource/timer-imx-gpt.c
+++ b/drivers/clocksource/timer-imx-gpt.c
@@ -545,15 +545,15 @@ static int __init imx6dl_timer_init_dt(struct device_node *np)
545 return mxc_timer_init_dt(np, GPT_TYPE_IMX6DL); 545 return mxc_timer_init_dt(np, GPT_TYPE_IMX6DL);
546} 546}
547 547
548CLOCKSOURCE_OF_DECLARE_RET(imx1_timer, "fsl,imx1-gpt", imx1_timer_init_dt); 548CLOCKSOURCE_OF_DECLARE(imx1_timer, "fsl,imx1-gpt", imx1_timer_init_dt);
549CLOCKSOURCE_OF_DECLARE_RET(imx21_timer, "fsl,imx21-gpt", imx21_timer_init_dt); 549CLOCKSOURCE_OF_DECLARE(imx21_timer, "fsl,imx21-gpt", imx21_timer_init_dt);
550CLOCKSOURCE_OF_DECLARE_RET(imx27_timer, "fsl,imx27-gpt", imx21_timer_init_dt); 550CLOCKSOURCE_OF_DECLARE(imx27_timer, "fsl,imx27-gpt", imx21_timer_init_dt);
551CLOCKSOURCE_OF_DECLARE_RET(imx31_timer, "fsl,imx31-gpt", imx31_timer_init_dt); 551CLOCKSOURCE_OF_DECLARE(imx31_timer, "fsl,imx31-gpt", imx31_timer_init_dt);
552CLOCKSOURCE_OF_DECLARE_RET(imx25_timer, "fsl,imx25-gpt", imx31_timer_init_dt); 552CLOCKSOURCE_OF_DECLARE(imx25_timer, "fsl,imx25-gpt", imx31_timer_init_dt);
553CLOCKSOURCE_OF_DECLARE_RET(imx50_timer, "fsl,imx50-gpt", imx31_timer_init_dt); 553CLOCKSOURCE_OF_DECLARE(imx50_timer, "fsl,imx50-gpt", imx31_timer_init_dt);
554CLOCKSOURCE_OF_DECLARE_RET(imx51_timer, "fsl,imx51-gpt", imx31_timer_init_dt); 554CLOCKSOURCE_OF_DECLARE(imx51_timer, "fsl,imx51-gpt", imx31_timer_init_dt);
555CLOCKSOURCE_OF_DECLARE_RET(imx53_timer, "fsl,imx53-gpt", imx31_timer_init_dt); 555CLOCKSOURCE_OF_DECLARE(imx53_timer, "fsl,imx53-gpt", imx31_timer_init_dt);
556CLOCKSOURCE_OF_DECLARE_RET(imx6q_timer, "fsl,imx6q-gpt", imx31_timer_init_dt); 556CLOCKSOURCE_OF_DECLARE(imx6q_timer, "fsl,imx6q-gpt", imx31_timer_init_dt);
557CLOCKSOURCE_OF_DECLARE_RET(imx6dl_timer, "fsl,imx6dl-gpt", imx6dl_timer_init_dt); 557CLOCKSOURCE_OF_DECLARE(imx6dl_timer, "fsl,imx6dl-gpt", imx6dl_timer_init_dt);
558CLOCKSOURCE_OF_DECLARE_RET(imx6sl_timer, "fsl,imx6sl-gpt", imx6dl_timer_init_dt); 558CLOCKSOURCE_OF_DECLARE(imx6sl_timer, "fsl,imx6sl-gpt", imx6dl_timer_init_dt);
559CLOCKSOURCE_OF_DECLARE_RET(imx6sx_timer, "fsl,imx6sx-gpt", imx6dl_timer_init_dt); 559CLOCKSOURCE_OF_DECLARE(imx6sx_timer, "fsl,imx6sx-gpt", imx6dl_timer_init_dt);
diff --git a/drivers/clocksource/timer-integrator-ap.c b/drivers/clocksource/timer-integrator-ap.c
index 675faceab5d6..df6e672afc04 100644
--- a/drivers/clocksource/timer-integrator-ap.c
+++ b/drivers/clocksource/timer-integrator-ap.c
@@ -232,5 +232,5 @@ static int __init integrator_ap_timer_init_of(struct device_node *node)
232 return 0; 232 return 0;
233} 233}
234 234
235CLOCKSOURCE_OF_DECLARE_RET(integrator_ap_timer, "arm,integrator-timer", 235CLOCKSOURCE_OF_DECLARE(integrator_ap_timer, "arm,integrator-timer",
236 integrator_ap_timer_init_of); 236 integrator_ap_timer_init_of);
diff --git a/drivers/clocksource/timer-keystone.c b/drivers/clocksource/timer-keystone.c
index 4199823b2ec9..ab68a47ab3b4 100644
--- a/drivers/clocksource/timer-keystone.c
+++ b/drivers/clocksource/timer-keystone.c
@@ -226,5 +226,5 @@ err:
226 return error; 226 return error;
227} 227}
228 228
229CLOCKSOURCE_OF_DECLARE_RET(keystone_timer, "ti,keystone-timer", 229CLOCKSOURCE_OF_DECLARE(keystone_timer, "ti,keystone-timer",
230 keystone_timer_init); 230 keystone_timer_init);
diff --git a/drivers/clocksource/timer-nps.c b/drivers/clocksource/timer-nps.c
index b5c7b2bd77bd..70c149af8ee0 100644
--- a/drivers/clocksource/timer-nps.c
+++ b/drivers/clocksource/timer-nps.c
@@ -96,5 +96,5 @@ static int __init nps_timer_init(struct device_node *node)
96 return nps_setup_clocksource(node, clk); 96 return nps_setup_clocksource(node, clk);
97} 97}
98 98
99CLOCKSOURCE_OF_DECLARE_RET(ezchip_nps400_clksrc, "ezchip,nps400-timer", 99CLOCKSOURCE_OF_DECLARE(ezchip_nps400_clksrc, "ezchip,nps400-timer",
100 nps_timer_init); 100 nps_timer_init);
diff --git a/drivers/clocksource/timer-oxnas-rps.c b/drivers/clocksource/timer-oxnas-rps.c
index 0d99f40ee757..bd887e2a8cf8 100644
--- a/drivers/clocksource/timer-oxnas-rps.c
+++ b/drivers/clocksource/timer-oxnas-rps.c
@@ -293,5 +293,5 @@ err_alloc:
293 return ret; 293 return ret;
294} 294}
295 295
296CLOCKSOURCE_OF_DECLARE_RET(ox810se_rps, 296CLOCKSOURCE_OF_DECLARE(ox810se_rps,
297 "oxsemi,ox810se-rps-timer", oxnas_rps_timer_init); 297 "oxsemi,ox810se-rps-timer", oxnas_rps_timer_init);
diff --git a/drivers/clocksource/timer-prima2.c b/drivers/clocksource/timer-prima2.c
index 7b1084d0b45e..dae8a66301d7 100644
--- a/drivers/clocksource/timer-prima2.c
+++ b/drivers/clocksource/timer-prima2.c
@@ -246,5 +246,5 @@ static int __init sirfsoc_prima2_timer_init(struct device_node *np)
246 246
247 return 0; 247 return 0;
248} 248}
249CLOCKSOURCE_OF_DECLARE_RET(sirfsoc_prima2_timer, 249CLOCKSOURCE_OF_DECLARE(sirfsoc_prima2_timer,
250 "sirf,prima2-tick", sirfsoc_prima2_timer_init); 250 "sirf,prima2-tick", sirfsoc_prima2_timer_init);
diff --git a/drivers/clocksource/timer-sp804.c b/drivers/clocksource/timer-sp804.c
index 3dc47efc9298..d07863388e05 100644
--- a/drivers/clocksource/timer-sp804.c
+++ b/drivers/clocksource/timer-sp804.c
@@ -287,7 +287,7 @@ err:
287 iounmap(base); 287 iounmap(base);
288 return ret; 288 return ret;
289} 289}
290CLOCKSOURCE_OF_DECLARE_RET(sp804, "arm,sp804", sp804_of_init); 290CLOCKSOURCE_OF_DECLARE(sp804, "arm,sp804", sp804_of_init);
291 291
292static int __init integrator_cp_of_init(struct device_node *np) 292static int __init integrator_cp_of_init(struct device_node *np)
293{ 293{
@@ -335,4 +335,4 @@ err:
335 iounmap(base); 335 iounmap(base);
336 return ret; 336 return ret;
337} 337}
338CLOCKSOURCE_OF_DECLARE_RET(intcp, "arm,integrator-cp-timer", integrator_cp_of_init); 338CLOCKSOURCE_OF_DECLARE(intcp, "arm,integrator-cp-timer", integrator_cp_of_init);
diff --git a/drivers/clocksource/timer-stm32.c b/drivers/clocksource/timer-stm32.c
index d5bf352905c8..1b2574c4fb97 100644
--- a/drivers/clocksource/timer-stm32.c
+++ b/drivers/clocksource/timer-stm32.c
@@ -187,4 +187,4 @@ err_clk_get:
187 return ret; 187 return ret;
188} 188}
189 189
190CLOCKSOURCE_OF_DECLARE_RET(stm32, "st,stm32-timer", stm32_clockevent_init); 190CLOCKSOURCE_OF_DECLARE(stm32, "st,stm32-timer", stm32_clockevent_init);
diff --git a/drivers/clocksource/timer-sun5i.c b/drivers/clocksource/timer-sun5i.c
index f0a3ffbab431..c184eb84101e 100644
--- a/drivers/clocksource/timer-sun5i.c
+++ b/drivers/clocksource/timer-sun5i.c
@@ -346,7 +346,7 @@ static int __init sun5i_timer_init(struct device_node *node)
346 346
347 return sun5i_setup_clockevent(node, timer_base, clk, irq); 347 return sun5i_setup_clockevent(node, timer_base, clk, irq);
348} 348}
349CLOCKSOURCE_OF_DECLARE_RET(sun5i_a13, "allwinner,sun5i-a13-hstimer", 349CLOCKSOURCE_OF_DECLARE(sun5i_a13, "allwinner,sun5i-a13-hstimer",
350 sun5i_timer_init); 350 sun5i_timer_init);
351CLOCKSOURCE_OF_DECLARE_RET(sun7i_a20, "allwinner,sun7i-a20-hstimer", 351CLOCKSOURCE_OF_DECLARE(sun7i_a20, "allwinner,sun7i-a20-hstimer",
352 sun5i_timer_init); 352 sun5i_timer_init);
diff --git a/drivers/clocksource/timer-ti-32k.c b/drivers/clocksource/timer-ti-32k.c
index e4ad3c6e03f9..92b7e390f6c8 100644
--- a/drivers/clocksource/timer-ti-32k.c
+++ b/drivers/clocksource/timer-ti-32k.c
@@ -124,5 +124,5 @@ static int __init ti_32k_timer_init(struct device_node *np)
124 124
125 return 0; 125 return 0;
126} 126}
127CLOCKSOURCE_OF_DECLARE_RET(ti_32k_timer, "ti,omap-counter32k", 127CLOCKSOURCE_OF_DECLARE(ti_32k_timer, "ti,omap-counter32k",
128 ti_32k_timer_init); 128 ti_32k_timer_init);
diff --git a/drivers/clocksource/timer-u300.c b/drivers/clocksource/timer-u300.c
index a6a0dec41faa..704e40c6f151 100644
--- a/drivers/clocksource/timer-u300.c
+++ b/drivers/clocksource/timer-u300.c
@@ -458,5 +458,5 @@ static int __init u300_timer_init_of(struct device_node *np)
458 return 0; 458 return 0;
459} 459}
460 460
461CLOCKSOURCE_OF_DECLARE_RET(u300_timer, "stericsson,u300-apptimer", 461CLOCKSOURCE_OF_DECLARE(u300_timer, "stericsson,u300-apptimer",
462 u300_timer_init_of); 462 u300_timer_init_of);
diff --git a/drivers/clocksource/versatile.c b/drivers/clocksource/versatile.c
index 8daeffac300b..220b490a8142 100644
--- a/drivers/clocksource/versatile.c
+++ b/drivers/clocksource/versatile.c
@@ -38,7 +38,7 @@ static int __init versatile_sched_clock_init(struct device_node *node)
38 38
39 return 0; 39 return 0;
40} 40}
41CLOCKSOURCE_OF_DECLARE_RET(vexpress, "arm,vexpress-sysreg", 41CLOCKSOURCE_OF_DECLARE(vexpress, "arm,vexpress-sysreg",
42 versatile_sched_clock_init); 42 versatile_sched_clock_init);
43CLOCKSOURCE_OF_DECLARE_RET(versatile, "arm,versatile-sysreg", 43CLOCKSOURCE_OF_DECLARE(versatile, "arm,versatile-sysreg",
44 versatile_sched_clock_init); 44 versatile_sched_clock_init);
diff --git a/drivers/clocksource/vf_pit_timer.c b/drivers/clocksource/vf_pit_timer.c
index ca4dff4d5684..55d8d8402d90 100644
--- a/drivers/clocksource/vf_pit_timer.c
+++ b/drivers/clocksource/vf_pit_timer.c
@@ -201,4 +201,4 @@ static int __init pit_timer_init(struct device_node *np)
201 201
202 return pit_clockevent_init(clk_rate, irq); 202 return pit_clockevent_init(clk_rate, irq);
203} 203}
204CLOCKSOURCE_OF_DECLARE_RET(vf610, "fsl,vf610-pit", pit_timer_init); 204CLOCKSOURCE_OF_DECLARE(vf610, "fsl,vf610-pit", pit_timer_init);
diff --git a/drivers/clocksource/vt8500_timer.c b/drivers/clocksource/vt8500_timer.c
index 1bc8707b4f9d..b15069483fbd 100644
--- a/drivers/clocksource/vt8500_timer.c
+++ b/drivers/clocksource/vt8500_timer.c
@@ -165,4 +165,4 @@ static int __init vt8500_timer_init(struct device_node *np)
165 return 0; 165 return 0;
166} 166}
167 167
168CLOCKSOURCE_OF_DECLARE_RET(vt8500, "via,vt8500-timer", vt8500_timer_init); 168CLOCKSOURCE_OF_DECLARE(vt8500, "via,vt8500-timer", vt8500_timer_init);
diff --git a/drivers/clocksource/zevio-timer.c b/drivers/clocksource/zevio-timer.c
index cb4cf056d56d..9a53f5ef6157 100644
--- a/drivers/clocksource/zevio-timer.c
+++ b/drivers/clocksource/zevio-timer.c
@@ -215,4 +215,4 @@ static int __init zevio_timer_init(struct device_node *node)
215 return zevio_timer_add(node); 215 return zevio_timer_add(node);
216} 216}
217 217
218CLOCKSOURCE_OF_DECLARE_RET(zevio_timer, "lsi,zevio-timer", zevio_timer_init); 218CLOCKSOURCE_OF_DECLARE(zevio_timer, "lsi,zevio-timer", zevio_timer_init);
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
index 8c6c626285c0..6a67ab94b553 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -173,7 +173,6 @@
173 *(__##name##_of_table_end) 173 *(__##name##_of_table_end)
174 174
175#define CLKSRC_OF_TABLES() OF_TABLE(CONFIG_CLKSRC_OF, clksrc) 175#define CLKSRC_OF_TABLES() OF_TABLE(CONFIG_CLKSRC_OF, clksrc)
176#define CLKSRC_RET_OF_TABLES() OF_TABLE(CONFIG_CLKSRC_OF, clksrc_ret)
177#define IRQCHIP_OF_MATCH_TABLE() OF_TABLE(CONFIG_IRQCHIP, irqchip) 176#define IRQCHIP_OF_MATCH_TABLE() OF_TABLE(CONFIG_IRQCHIP, irqchip)
178#define CLK_OF_TABLES() OF_TABLE(CONFIG_COMMON_CLK, clk) 177#define CLK_OF_TABLES() OF_TABLE(CONFIG_COMMON_CLK, clk)
179#define IOMMU_OF_TABLES() OF_TABLE(CONFIG_OF_IOMMU, iommu) 178#define IOMMU_OF_TABLES() OF_TABLE(CONFIG_OF_IOMMU, iommu)
@@ -532,7 +531,6 @@
532 CLK_OF_TABLES() \ 531 CLK_OF_TABLES() \
533 RESERVEDMEM_OF_TABLES() \ 532 RESERVEDMEM_OF_TABLES() \
534 CLKSRC_OF_TABLES() \ 533 CLKSRC_OF_TABLES() \
535 CLKSRC_RET_OF_TABLES() \
536 IOMMU_OF_TABLES() \ 534 IOMMU_OF_TABLES() \
537 CPU_METHOD_OF_TABLES() \ 535 CPU_METHOD_OF_TABLES() \
538 CPUIDLE_METHOD_OF_TABLES() \ 536 CPUIDLE_METHOD_OF_TABLES() \
diff --git a/include/linux/clocksource.h b/include/linux/clocksource.h
index 15c3839850f4..08398182f56e 100644
--- a/include/linux/clocksource.h
+++ b/include/linux/clocksource.h
@@ -244,10 +244,7 @@ extern int clocksource_mmio_init(void __iomem *, const char *,
244extern int clocksource_i8253_init(void); 244extern int clocksource_i8253_init(void);
245 245
246#define CLOCKSOURCE_OF_DECLARE(name, compat, fn) \ 246#define CLOCKSOURCE_OF_DECLARE(name, compat, fn) \
247 OF_DECLARE_1(clksrc, name, compat, fn) 247 OF_DECLARE_1_RET(clksrc, name, compat, fn)
248
249#define CLOCKSOURCE_OF_DECLARE_RET(name, compat, fn) \
250 OF_DECLARE_1_RET(clksrc_ret, name, compat, fn)
251 248
252#ifdef CONFIG_CLKSRC_PROBE 249#ifdef CONFIG_CLKSRC_PROBE
253extern void clocksource_probe(void); 250extern void clocksource_probe(void);