linux/arch/arm64/kernel
Catalin Marinas 08e875c16a arm64: SMP support
This patch adds SMP initialisation and spinlocks implementation for
AArch64. The spinlock support uses the new load-acquire/store-release
instructions to avoid explicit barriers. The architecture also specifies
that an event is automatically generated when clearing the exclusive
monitor state to wake up processors in WFE, so there is no need for an
explicit DSB/SEV instruction sequence. The SEVL instruction is used to
set the exclusive monitor locally as there is no conditional WFE and a
branch is more expensive.

For the SMP booting protocol, see Documentation/arm64/booting.txt.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Olof Johansson <olof@lixom.net>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2012-09-17 13:42:06 +01:00
..
asm-offsets.c arm64: Assembly macros and definitions 2012-09-17 10:24:44 +01:00
cputable.c arm64: CPU support 2012-09-17 13:41:59 +01:00
entry.S arm64: Exception handling 2012-09-17 10:24:46 +01:00
head.S arm64: Kernel booting and initialisation 2012-09-17 10:24:45 +01:00
io.c arm64: Device specific operations 2012-09-17 13:42:04 +01:00
irq.c arm64: IRQ handling 2012-09-17 13:42:02 +01:00
process.c arm64: Process management 2012-09-17 13:41:58 +01:00
setup.c arm64: Kernel booting and initialisation 2012-09-17 10:24:45 +01:00
smp.c arm64: SMP support 2012-09-17 13:42:06 +01:00
stacktrace.c arm64: Exception handling 2012-09-17 10:24:46 +01:00
traps.c arm64: Exception handling 2012-09-17 10:24:46 +01:00