summaryrefslogtreecommitdiff
path: root/arch/powerpc/include/asm/asm-405.h
diff options
context:
space:
mode:
authorChristophe Leroy <christophe.leroy@c-s.fr>2018-07-05 16:24:55 +0000
committerMichael Ellerman <mpe@ellerman.id.au>2018-07-30 22:48:13 +1000
commit36a7eeaff7d06cef253c8df6dfe363bfc4a553f8 (patch)
tree615de7235f2e4db04860bd3fed530d81a6ef3c5a /arch/powerpc/include/asm/asm-405.h
parent8c58259bba43084eb5876aeefa574e9344b85ae3 (diff)
powerpc/405: move PPC405_ERR77 in asm-405.h
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/include/asm/asm-405.h')
-rw-r--r--arch/powerpc/include/asm/asm-405.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/asm-405.h b/arch/powerpc/include/asm/asm-405.h
new file mode 100644
index 000000000000..7270d3ae7c8e
--- /dev/null
+++ b/arch/powerpc/include/asm/asm-405.h
@@ -0,0 +1,19 @@
+#ifndef _ASM_POWERPC_ASM_405_H
+#define _ASM_POWERPC_ASM_405_H
+
+#include <asm/asm-const.h>
+
+#ifdef __KERNEL__
+#ifdef CONFIG_IBM405_ERR77
+/* Erratum #77 on the 405 means we need a sync or dcbt before every
+ * stwcx. The old ATOMIC_SYNC_FIX covered some but not all of this.
+ */
+#define PPC405_ERR77(ra,rb) stringify_in_c(dcbt ra, rb;)
+#define PPC405_ERR77_SYNC stringify_in_c(sync;)
+#else
+#define PPC405_ERR77(ra,rb)
+#define PPC405_ERR77_SYNC
+#endif
+#endif
+
+#endif /* _ASM_POWERPC_ASM_405_H */