aboutsummaryrefslogtreecommitdiff
path: root/arch/powerpc/include/asm/reg.h
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2013-11-25 10:04:27 +1100
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2013-11-25 10:04:27 +1100
commit02ce6e879eb6f260ee48e822f20b94c360fdd4d3 (patch)
tree51b626c0dc20c3c2992987929860a6d8c19a3003 /arch/powerpc/include/asm/reg.h
parent6ce4eac1f600b34f2f7f58f9cd8f0503d79e42ae (diff)
parentd742aa152f27448d39ce65fb829e396d10cd63a9 (diff)
Merge remote-tracking branch 'scott/master' into merge
Scott wrote: << The corenet64 patch fixes a regression introduced in 3.13-rc1 (commit ef1313deafb7baa6d3382044e962d5ad5e8c8dd6, "powerpc: Add VMX optimised xor for RAID5"). The 8xx patch fixes a regression introduced in 3.12 (commit beb2dc0a7a84be003ce54e98b95d65cc66e6e536, "powerpc: Convert some mftb/mftbu into mfspr"). The other two patches are fixes for minor, long standing bugs. >>
Diffstat (limited to 'arch/powerpc/include/asm/reg.h')
-rw-r--r--arch/powerpc/include/asm/reg.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h
index 5c45787d551..fa8388ed94c 100644
--- a/arch/powerpc/include/asm/reg.h
+++ b/arch/powerpc/include/asm/reg.h
@@ -1174,12 +1174,19 @@
#else /* __powerpc64__ */
+#if defined(CONFIG_8xx)
+#define mftbl() ({unsigned long rval; \
+ asm volatile("mftbl %0" : "=r" (rval)); rval;})
+#define mftbu() ({unsigned long rval; \
+ asm volatile("mftbu %0" : "=r" (rval)); rval;})
+#else
#define mftbl() ({unsigned long rval; \
asm volatile("mfspr %0, %1" : "=r" (rval) : \
"i" (SPRN_TBRL)); rval;})
#define mftbu() ({unsigned long rval; \
asm volatile("mfspr %0, %1" : "=r" (rval) : \
"i" (SPRN_TBRU)); rval;})
+#endif
#endif /* !__powerpc64__ */
#define mttbl(v) asm volatile("mttbl %0":: "r"(v))