aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/arch/arm/kernel
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2013-03-15 22:57:45 +0100
committerArnd Bergmann <arnd@arndb.de>2013-03-15 22:57:45 +0100
commitb0d62d977674d178ac9bc0acaa3cb5cdd166035d (patch)
tree6e8f7b99b9ecdb8869acc12a5e5af29d08f57e31 /arch/arm/kernel
parentMerge branch 'next/cleanup-s5p' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/cleanup (diff)
parentARM: smp_twd: convert to use CLKSRC_OF init (diff)
downloadwireguard-linux-b0d62d977674d178ac9bc0acaa3cb5cdd166035d.tar.xz
wireguard-linux-b0d62d977674d178ac9bc0acaa3cb5cdd166035d.zip
Merge tag 'clksrc-cleanup-for-3.10' of git://sources.calxeda.com/kernel/linux into next/cleanup
From Rob Herring <robherring2@gmail.com>: - Add device_node ptr to clocksource init functions - Add CLKSRC_OF support to twd_smp timer * tag 'clksrc-cleanup-for-3.10' of git://sources.calxeda.com/kernel/linux: ARM: smp_twd: convert to use CLKSRC_OF init clocksource: tegra20: use the device_node pointer passed to init clocksource: pass DT node pointer to init functions clocksource: add empty version of clocksource_of_init Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/kernel')
-rw-r--r--arch/arm/kernel/smp_twd.c17
1 files changed, 4 insertions, 13 deletions
diff --git a/arch/arm/kernel/smp_twd.c b/arch/arm/kernel/smp_twd.c
index 3f2565037480..90525d9d290b 100644
--- a/arch/arm/kernel/smp_twd.c
+++ b/arch/arm/kernel/smp_twd.c
@@ -362,25 +362,13 @@ int __init twd_local_timer_register(struct twd_local_timer *tlt)
}
#ifdef CONFIG_OF
-const static struct of_device_id twd_of_match[] __initconst = {
- { .compatible = "arm,cortex-a9-twd-timer", },
- { .compatible = "arm,cortex-a5-twd-timer", },
- { .compatible = "arm,arm11mp-twd-timer", },
- { },
-};
-
-void __init twd_local_timer_of_register(void)
+static void __init twd_local_timer_of_register(struct device_node *np)
{
- struct device_node *np;
int err;
if (!is_smp() || !setup_max_cpus)
return;
- np = of_find_matching_node(NULL, twd_of_match);
- if (!np)
- return;
-
twd_ppi = irq_of_parse_and_map(np, 0);
if (!twd_ppi) {
err = -EINVAL;
@@ -398,4 +386,7 @@ void __init twd_local_timer_of_register(void)
out:
WARN(err, "twd_local_timer_of_register failed (%d)\n", err);
}
+CLOCKSOURCE_OF_DECLARE(arm_twd_a9, "arm,cortex-a9-twd-timer", twd_local_timer_of_register);
+CLOCKSOURCE_OF_DECLARE(arm_twd_a5, "arm,cortex-a5-twd-timer", twd_local_timer_of_register);
+CLOCKSOURCE_OF_DECLARE(arm_twd_11mp, "arm,arm11mp-twd-timer", twd_local_timer_of_register);
#endif