aboutsummaryrefslogtreecommitdiff
path: root/arch/powerpc/include/asm/synch.h
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2011-11-28 11:49:56 +0000
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-11-28 11:49:56 +0000
commit9ee4be4156b1a507f199e750ba2c13ffb6ea9b42 (patch)
treec92cb39ad1f0be559390c2a995d9aad2b0300b14 /arch/powerpc/include/asm/synch.h
parent005d610f2abc550172726b997f5cfe683769cc1c (diff)
parentd4d6373c1109b11c8118340be97ae31b8f94d66a (diff)
Merge remote-tracking branch 'regulator/for-linus' into regulator-next
Diffstat (limited to 'arch/powerpc/include/asm/synch.h')
-rw-r--r--arch/powerpc/include/asm/synch.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/powerpc/include/asm/synch.h b/arch/powerpc/include/asm/synch.h
index d7cab44643c..e682a7143ed 100644
--- a/arch/powerpc/include/asm/synch.h
+++ b/arch/powerpc/include/asm/synch.h
@@ -13,6 +13,7 @@
extern unsigned int __start___lwsync_fixup, __stop___lwsync_fixup;
extern void do_lwsync_fixups(unsigned long value, void *fixup_start,
void *fixup_end);
+extern void do_final_fixups(void);
static inline void eieio(void)
{
@@ -41,11 +42,15 @@ static inline void isync(void)
START_LWSYNC_SECTION(97); \
isync; \
MAKE_LWSYNC_SECTION_ENTRY(97, __lwsync_fixup);
-#define PPC_ACQUIRE_BARRIER "\n" stringify_in_c(__PPC_ACQUIRE_BARRIER)
-#define PPC_RELEASE_BARRIER stringify_in_c(LWSYNC) "\n"
+#define PPC_ACQUIRE_BARRIER "\n" stringify_in_c(__PPC_ACQUIRE_BARRIER)
+#define PPC_RELEASE_BARRIER stringify_in_c(LWSYNC) "\n"
+#define PPC_ATOMIC_ENTRY_BARRIER "\n" stringify_in_c(LWSYNC) "\n"
+#define PPC_ATOMIC_EXIT_BARRIER "\n" stringify_in_c(sync) "\n"
#else
#define PPC_ACQUIRE_BARRIER
#define PPC_RELEASE_BARRIER
+#define PPC_ATOMIC_ENTRY_BARRIER
+#define PPC_ATOMIC_EXIT_BARRIER
#endif
#endif /* __KERNEL__ */