diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2005-11-09 05:50:29 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2005-11-09 05:50:29 -0500 |
commit | 2a98beb6390aef8fad85103ea25b3b1ace8015b5 (patch) | |
tree | 09f3e0de9a49f0f61d7f44c6c03218bf29f5d1dd /include/asm-arm/arch-realview | |
parent | 37ee16ae93a3e4ae7dd51beb81d249f5f12a55c2 (diff) |
[ARM SMP] Add local timer support for Realview MPcore
Add platform specific parts for local timer support for the
Realview board.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include/asm-arm/arch-realview')
-rw-r--r-- | include/asm-arm/arch-realview/entry-macro.S | 11 | ||||
-rw-r--r-- | include/asm-arm/arch-realview/irqs.h | 3 | ||||
-rw-r--r-- | include/asm-arm/arch-realview/platform.h | 5 |
3 files changed, 16 insertions, 3 deletions
diff --git a/include/asm-arm/arch-realview/entry-macro.S b/include/asm-arm/arch-realview/entry-macro.S index 4df469bf42e2..6288fad0dc41 100644 --- a/include/asm-arm/arch-realview/entry-macro.S +++ b/include/asm-arm/arch-realview/entry-macro.S | |||
@@ -61,3 +61,14 @@ | |||
61 | strcc \irqstat, [\base, #GIC_CPU_EOI] | 61 | strcc \irqstat, [\base, #GIC_CPU_EOI] |
62 | cmpcs \irqnr, \irqnr | 62 | cmpcs \irqnr, \irqnr |
63 | .endm | 63 | .endm |
64 | |||
65 | /* As above, this assumes that irqstat and base are preserved.. */ | ||
66 | |||
67 | .macro test_for_ltirq, irqnr, irqstat, base, tmp | ||
68 | bic \irqnr, \irqstat, #0x1c00 | ||
69 | mov \tmp, #0 | ||
70 | cmp \irqnr, #29 | ||
71 | moveq \tmp, #1 | ||
72 | streq \irqstat, [\base, #GIC_CPU_EOI] | ||
73 | cmp \tmp, #0 | ||
74 | .endm | ||
diff --git a/include/asm-arm/arch-realview/irqs.h b/include/asm-arm/arch-realview/irqs.h index ff376494e5b1..c16223c9588d 100644 --- a/include/asm-arm/arch-realview/irqs.h +++ b/include/asm-arm/arch-realview/irqs.h | |||
@@ -21,6 +21,9 @@ | |||
21 | 21 | ||
22 | #include <asm/arch/platform.h> | 22 | #include <asm/arch/platform.h> |
23 | 23 | ||
24 | #define IRQ_LOCALTIMER 29 | ||
25 | #define IRQ_LOCALWDOG 30 | ||
26 | |||
24 | /* | 27 | /* |
25 | * IRQ interrupts definitions are the same the INT definitions | 28 | * IRQ interrupts definitions are the same the INT definitions |
26 | * held within platform.h | 29 | * held within platform.h |
diff --git a/include/asm-arm/arch-realview/platform.h b/include/asm-arm/arch-realview/platform.h index aef9b36b3c37..18d7c18b738c 100644 --- a/include/asm-arm/arch-realview/platform.h +++ b/include/asm-arm/arch-realview/platform.h | |||
@@ -209,6 +209,8 @@ | |||
209 | #else | 209 | #else |
210 | #define REALVIEW_MPCORE_SCU_BASE 0x10100000 /* SCU registers */ | 210 | #define REALVIEW_MPCORE_SCU_BASE 0x10100000 /* SCU registers */ |
211 | #define REALVIEW_GIC_CPU_BASE 0x10100100 /* Generic interrupt controller CPU interface */ | 211 | #define REALVIEW_GIC_CPU_BASE 0x10100100 /* Generic interrupt controller CPU interface */ |
212 | #define REALVIEW_TWD_BASE 0x10100700 | ||
213 | #define REALVIEW_TWD_SIZE 0x00000100 | ||
212 | #define REALVIEW_GIC_DIST_BASE 0x10101000 /* Generic interrupt controller distributor */ | 214 | #define REALVIEW_GIC_DIST_BASE 0x10101000 /* Generic interrupt controller distributor */ |
213 | #endif | 215 | #endif |
214 | #define REALVIEW_SMC_BASE 0x10080000 /* SMC */ | 216 | #define REALVIEW_SMC_BASE 0x10080000 /* SMC */ |
@@ -305,9 +307,6 @@ | |||
305 | #define INT_TSPENINT 30 /* Touchscreen pen */ | 307 | #define INT_TSPENINT 30 /* Touchscreen pen */ |
306 | #define INT_TSKPADINT 31 /* Touchscreen keypad */ | 308 | #define INT_TSKPADINT 31 /* Touchscreen keypad */ |
307 | #else | 309 | #else |
308 | #define INT_LOCALTIMER 29 | ||
309 | #define INT_LOCALWDOG 30 | ||
310 | |||
311 | #define INT_AACI 0 | 310 | #define INT_AACI 0 |
312 | #define INT_TIMERINT0_1 1 | 311 | #define INT_TIMERINT0_1 1 |
313 | #define INT_TIMERINT2_3 2 | 312 | #define INT_TIMERINT2_3 2 |