diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2005-06-19 14:26:54 -0400 |
---|---|---|
committer | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2005-06-19 14:26:54 -0400 |
commit | ea4423c3b6c1dbd116c91be876b3ad07067c77c8 (patch) | |
tree | d4132a9ffc173be69b2e7abf0b52a52eb61bffcc /include/asm-arm | |
parent | 36c5ed23b9f535d1c79986efb45f9c1f115e0997 (diff) | |
parent | fe6ef2daa29df8fef1a95446faccd18ab163993e (diff) |
Merge with ../linux-2.6-smp
Diffstat (limited to 'include/asm-arm')
-rw-r--r-- | include/asm-arm/arch-integrator/smp.h | 19 | ||||
-rw-r--r-- | include/asm-arm/smp.h | 14 |
2 files changed, 33 insertions, 0 deletions
diff --git a/include/asm-arm/arch-integrator/smp.h b/include/asm-arm/arch-integrator/smp.h new file mode 100644 index 000000000000..0ec7093f7c37 --- /dev/null +++ b/include/asm-arm/arch-integrator/smp.h | |||
@@ -0,0 +1,19 @@ | |||
1 | #ifndef ASMARM_ARCH_SMP_H | ||
2 | #define ASMARM_ARCH_SMP_H | ||
3 | |||
4 | #include <linux/config.h> | ||
5 | |||
6 | #include <asm/arch/hardware.h> | ||
7 | #include <asm/io.h> | ||
8 | |||
9 | #define hard_smp_processor_id() \ | ||
10 | ({ \ | ||
11 | unsigned int cpunum; \ | ||
12 | __asm__("mrc p15, 0, %0, c0, c0, 5" \ | ||
13 | : "=r" (cpunum)); \ | ||
14 | cpunum &= 0x0F; \ | ||
15 | }) | ||
16 | |||
17 | extern void secondary_scan_irqs(void); | ||
18 | |||
19 | #endif | ||
diff --git a/include/asm-arm/smp.h b/include/asm-arm/smp.h index f21fd8f6bcdd..bd44f894690f 100644 --- a/include/asm-arm/smp.h +++ b/include/asm-arm/smp.h | |||
@@ -55,4 +55,18 @@ extern void smp_cross_call(cpumask_t callmap); | |||
55 | */ | 55 | */ |
56 | extern int boot_secondary(unsigned int cpu, struct task_struct *); | 56 | extern int boot_secondary(unsigned int cpu, struct task_struct *); |
57 | 57 | ||
58 | /* | ||
59 | * Perform platform specific initialisation of the specified CPU. | ||
60 | */ | ||
61 | extern void platform_secondary_init(unsigned int cpu); | ||
62 | |||
63 | /* | ||
64 | * Initial data for bringing up a secondary CPU. | ||
65 | */ | ||
66 | struct secondary_data { | ||
67 | unsigned long pgdir; | ||
68 | void *stack; | ||
69 | }; | ||
70 | extern struct secondary_data secondary_data; | ||
71 | |||
58 | #endif /* ifndef __ASM_ARM_SMP_H */ | 72 | #endif /* ifndef __ASM_ARM_SMP_H */ |