diff options
| author | Marc Zyngier <marc.zyngier@arm.com> | 2012-04-27 08:18:42 -0400 |
|---|---|---|
| committer | Marc Zyngier <marc.zyngier@arm.com> | 2012-04-27 08:39:25 -0400 |
| commit | fb8a99f9f6bdc908cbbd2284cee80c709d9f7c03 (patch) | |
| tree | c99ea6cd79714e25e016c7270e5191b0e9dfcd6f | |
| parent | 120f3d6c2309cde8b93310267ed11a9b5aa2aad4 (diff) | |
ARM: architected timers: remove support for non DT platforms
All mainline platforms using the ARM architected timers are DT
only. As such, remove the ad-hoc support that is not longer needed
anymore.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
| -rw-r--r-- | arch/arm/include/asm/arch_timer.h | 14 | ||||
| -rw-r--r-- | arch/arm/kernel/arch_timer.c | 19 |
2 files changed, 3 insertions, 30 deletions
diff --git a/arch/arm/include/asm/arch_timer.h b/arch/arm/include/asm/arch_timer.h index 935897f120b6..ed2e95d46e29 100644 --- a/arch/arm/include/asm/arch_timer.h +++ b/arch/arm/include/asm/arch_timer.h | |||
| @@ -1,22 +1,10 @@ | |||
| 1 | #ifndef __ASMARM_ARCH_TIMER_H | 1 | #ifndef __ASMARM_ARCH_TIMER_H |
| 2 | #define __ASMARM_ARCH_TIMER_H | 2 | #define __ASMARM_ARCH_TIMER_H |
| 3 | 3 | ||
| 4 | #include <linux/ioport.h> | ||
| 5 | |||
| 6 | struct arch_timer { | ||
| 7 | struct resource res[2]; | ||
| 8 | }; | ||
| 9 | |||
| 10 | #ifdef CONFIG_ARM_ARCH_TIMER | 4 | #ifdef CONFIG_ARM_ARCH_TIMER |
| 11 | int arch_timer_register(struct arch_timer *); | ||
| 12 | int arch_timer_sched_clock_init(void); | ||
| 13 | int arch_timer_of_register(void); | 5 | int arch_timer_of_register(void); |
| 6 | int arch_timer_sched_clock_init(void); | ||
| 14 | #else | 7 | #else |
| 15 | static inline int arch_timer_register(struct arch_timer *at) | ||
| 16 | { | ||
| 17 | return -ENXIO; | ||
| 18 | } | ||
| 19 | |||
| 20 | static inline int arch_timer_of_register(void) | 8 | static inline int arch_timer_of_register(void) |
| 21 | { | 9 | { |
| 22 | return -ENXIO; | 10 | return -ENXIO; |
diff --git a/arch/arm/kernel/arch_timer.c b/arch/arm/kernel/arch_timer.c index 154f0a1756b1..dd58035621f7 100644 --- a/arch/arm/kernel/arch_timer.c +++ b/arch/arm/kernel/arch_timer.c | |||
| @@ -248,7 +248,7 @@ static struct local_timer_ops arch_timer_ops __cpuinitdata = { | |||
| 248 | 248 | ||
| 249 | static struct clock_event_device arch_timer_global_evt; | 249 | static struct clock_event_device arch_timer_global_evt; |
| 250 | 250 | ||
| 251 | static int __init arch_timer_common_register(void) | 251 | static int __init arch_timer_register(void) |
| 252 | { | 252 | { |
| 253 | int err; | 253 | int err; |
| 254 | 254 | ||
| @@ -309,20 +309,6 @@ out_free: | |||
| 309 | return err; | 309 | return err; |
| 310 | } | 310 | } |
| 311 | 311 | ||
| 312 | int __init arch_timer_register(struct arch_timer *at) | ||
| 313 | { | ||
| 314 | if (at->res[0].start <= 0 || !(at->res[0].flags & IORESOURCE_IRQ)) | ||
| 315 | return -EINVAL; | ||
| 316 | |||
| 317 | arch_timer_ppi = at->res[0].start; | ||
| 318 | |||
| 319 | if (at->res[1].start > 0 || (at->res[1].flags & IORESOURCE_IRQ)) | ||
| 320 | arch_timer_ppi2 = at->res[1].start; | ||
| 321 | |||
| 322 | return arch_timer_common_register(); | ||
| 323 | } | ||
| 324 | |||
| 325 | #ifdef CONFIG_OF | ||
| 326 | static const struct of_device_id arch_timer_of_match[] __initconst = { | 312 | static const struct of_device_id arch_timer_of_match[] __initconst = { |
| 327 | { .compatible = "arm,armv7-timer", }, | 313 | { .compatible = "arm,armv7-timer", }, |
| 328 | {}, | 314 | {}, |
| @@ -348,9 +334,8 @@ int __init arch_timer_of_register(void) | |||
| 348 | pr_info("arch_timer: found %s irqs %d %d\n", | 334 | pr_info("arch_timer: found %s irqs %d %d\n", |
| 349 | np->name, arch_timer_ppi, arch_timer_ppi2); | 335 | np->name, arch_timer_ppi, arch_timer_ppi2); |
| 350 | 336 | ||
| 351 | return arch_timer_common_register(); | 337 | return arch_timer_register(); |
| 352 | } | 338 | } |
| 353 | #endif | ||
| 354 | 339 | ||
| 355 | int __init arch_timer_sched_clock_init(void) | 340 | int __init arch_timer_sched_clock_init(void) |
| 356 | { | 341 | { |
