summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/unified.h
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2013-07-02 13:10:42 +0200
committerWill Deacon <will.deacon@arm.com>2013-09-30 17:42:55 +0200
commit27a84793e42084392181ef2ef51a954f1cf0c519 (patch)
tree955a332f67b4be1d37fd195422a68ca4af806761 /arch/arm/include/asm/unified.h
parentARM: prefetch: remove redundant "cc" clobber (diff)
downloadlinux-27a84793e42084392181ef2ef51a954f1cf0c519.tar.xz
linux-27a84793e42084392181ef2ef51a954f1cf0c519.zip
ARM: smp_on_up: move inline asm ALT_SMP patching macro out of spinlock.h
Patching UP/SMP alternatives inside inline assembly blocks is useful outside of the spinlock implementation, where it is used for sev and wfe. This patch lifts the macro into processor.h and gives it a scarier name to (a) avoid conflicts in the global namespace and (b) to try and deter its usage unless you "know what you're doing". The W macro for generating wide instructions when targetting Thumb-2 is also made available under the name WASM, to reduce the potential for conflicts with other headers. Acked-by: Nicolas Pitre <nico@linaro.org> Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm/include/asm/unified.h')
-rw-r--r--arch/arm/include/asm/unified.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/include/asm/unified.h b/arch/arm/include/asm/unified.h
index f5989f46b4d2..b88beaba6b4a 100644
--- a/arch/arm/include/asm/unified.h
+++ b/arch/arm/include/asm/unified.h
@@ -38,6 +38,8 @@
#ifdef __ASSEMBLY__
#define W(instr) instr.w
#define BSYM(sym) sym + 1
+#else
+#define WASM(instr) #instr ".w"
#endif
#else /* !CONFIG_THUMB2_KERNEL */
@@ -50,6 +52,8 @@
#ifdef __ASSEMBLY__
#define W(instr) instr
#define BSYM(sym) sym
+#else
+#define WASM(instr) #instr
#endif
#endif /* CONFIG_THUMB2_KERNEL */