diff options
author | Olof Johansson <olof@lixom.net> | 2012-09-22 03:06:21 -0400 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2012-09-22 03:16:04 -0400 |
commit | 25468fe89f88c4ceeef94526e94ae0db176f6999 (patch) | |
tree | d70a713525281276b5063c814413bb3141e6056c /arch/arm/plat-versatile | |
parent | a283580c52d3aa24305985e945dfccfbcfc6f4f9 (diff) | |
parent | 28e8e29c616f947348cc66bea684d0035c76021a (diff) |
Merge branch 'multiplatform/smp_ops' into next/multiplatform
* multiplatform/smp_ops:
ARM: consolidate pen_release instead of having per platform definitions
ARM: smp: Make SMP operations mandatory
ARM: SoC: convert spear13xx to SMP operations
ARM: SoC: convert imx6q to SMP operations
ARM: SoC: convert highbank to SMP operations
ARM: SoC: convert shmobile SMP to SMP operations
ARM: SoC: convert ux500 to SMP operations
ARM: SoC: convert MSM to SMP operations
ARM: SoC: convert Exynos4 to SMP operations
ARM: SoC: convert Tegra to SMP operations
ARM: SoC: convert OMAP4 to SMP operations
ARM: SoC: convert VExpress/RealView to SMP operations
ARM: SoC: add per-platform SMP operations
Conflicts due to file moves or removals in:
arch/arm/mach-msm/board-msm8960.c
arch/arm/mach-msm/board-msm8x60.c
arch/arm/mach-tegra/board-harmony.c
arch/arm/mach-tegra/board-trimslice.c
Conflicts due to board file cleanup:
arch/arm/mach-tegra/board-paz00.c
Conflicts due to cpu hotplug addition:
arch/arm/mach-tegra/hotplug.c
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'arch/arm/plat-versatile')
-rw-r--r-- | arch/arm/plat-versatile/include/plat/platsmp.h | 14 | ||||
-rw-r--r-- | arch/arm/plat-versatile/platsmp.c | 10 |
2 files changed, 16 insertions, 8 deletions
diff --git a/arch/arm/plat-versatile/include/plat/platsmp.h b/arch/arm/plat-versatile/include/plat/platsmp.h new file mode 100644 index 000000000000..50fb830192e0 --- /dev/null +++ b/arch/arm/plat-versatile/include/plat/platsmp.h | |||
@@ -0,0 +1,14 @@ | |||
1 | /* | ||
2 | * linux/arch/arm/plat-versatile/include/plat/platsmp.h | ||
3 | * | ||
4 | * Copyright (C) 2011 ARM Ltd. | ||
5 | * All Rights Reserved | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License version 2 as | ||
9 | * published by the Free Software Foundation. | ||
10 | */ | ||
11 | |||
12 | extern void versatile_secondary_startup(void); | ||
13 | extern void versatile_secondary_init(unsigned int cpu); | ||
14 | extern int versatile_boot_secondary(unsigned int cpu, struct task_struct *idle); | ||
diff --git a/arch/arm/plat-versatile/platsmp.c b/arch/arm/plat-versatile/platsmp.c index d7c5c171f5aa..04ca4937d8ca 100644 --- a/arch/arm/plat-versatile/platsmp.c +++ b/arch/arm/plat-versatile/platsmp.c | |||
@@ -20,12 +20,6 @@ | |||
20 | #include <asm/hardware/gic.h> | 20 | #include <asm/hardware/gic.h> |
21 | 21 | ||
22 | /* | 22 | /* |
23 | * control for which core is the next to come out of the secondary | ||
24 | * boot "holding pen" | ||
25 | */ | ||
26 | volatile int __cpuinitdata pen_release = -1; | ||
27 | |||
28 | /* | ||
29 | * Write pen_release in a way that is guaranteed to be visible to all | 23 | * Write pen_release in a way that is guaranteed to be visible to all |
30 | * observers, irrespective of whether they're taking part in coherency | 24 | * observers, irrespective of whether they're taking part in coherency |
31 | * or not. This is necessary for the hotplug code to work reliably. | 25 | * or not. This is necessary for the hotplug code to work reliably. |
@@ -40,7 +34,7 @@ static void __cpuinit write_pen_release(int val) | |||
40 | 34 | ||
41 | static DEFINE_SPINLOCK(boot_lock); | 35 | static DEFINE_SPINLOCK(boot_lock); |
42 | 36 | ||
43 | void __cpuinit platform_secondary_init(unsigned int cpu) | 37 | void __cpuinit versatile_secondary_init(unsigned int cpu) |
44 | { | 38 | { |
45 | /* | 39 | /* |
46 | * if any interrupts are already enabled for the primary | 40 | * if any interrupts are already enabled for the primary |
@@ -62,7 +56,7 @@ void __cpuinit platform_secondary_init(unsigned int cpu) | |||
62 | spin_unlock(&boot_lock); | 56 | spin_unlock(&boot_lock); |
63 | } | 57 | } |
64 | 58 | ||
65 | int __cpuinit boot_secondary(unsigned int cpu, struct task_struct *idle) | 59 | int __cpuinit versatile_boot_secondary(unsigned int cpu, struct task_struct *idle) |
66 | { | 60 | { |
67 | unsigned long timeout; | 61 | unsigned long timeout; |
68 | 62 | ||