aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/head_8xx.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/kernel/head_8xx.S')
-rw-r--r--arch/powerpc/kernel/head_8xx.S7
1 files changed, 3 insertions, 4 deletions
diff --git a/arch/powerpc/kernel/head_8xx.S b/arch/powerpc/kernel/head_8xx.S
index 17158089833b..0bed748bbb85 100644
--- a/arch/powerpc/kernel/head_8xx.S
+++ b/arch/powerpc/kernel/head_8xx.S
@@ -498,7 +498,7 @@ DataTLBError:
498 mfspr r10, SPRN_DAR 498 mfspr r10, SPRN_DAR
499 cmpwi cr0, r10, 0x00f0 499 cmpwi cr0, r10, 0x00f0
500 beq- FixupDAR /* must be a buggy dcbX, icbi insn. */ 500 beq- FixupDAR /* must be a buggy dcbX, icbi insn. */
501DARFixed:/* Return from dcbx instruction bug workaround, r10 holds value of DAR */ 501DARFixed:/* Return from dcbx instruction bug workaround */
502#ifdef CONFIG_8xx_CPU6 502#ifdef CONFIG_8xx_CPU6
503 lwz r3, 8(r0) 503 lwz r3, 8(r0)
504#endif 504#endif
@@ -527,7 +527,7 @@ DARFixed:/* Return from dcbx instruction bug workaround, r10 holds value of DAR
527 527
528/* This is the procedure to calculate the data EA for buggy dcbx,dcbi instructions 528/* This is the procedure to calculate the data EA for buggy dcbx,dcbi instructions
529 * by decoding the registers used by the dcbx instruction and adding them. 529 * by decoding the registers used by the dcbx instruction and adding them.
530 * DAR is set to the calculated address and r10 also holds the EA on exit. 530 * DAR is set to the calculated address.
531 */ 531 */
532 /* define if you don't want to use self modifying code */ 532 /* define if you don't want to use self modifying code */
533#define NO_SELF_MODIFYING_CODE 533#define NO_SELF_MODIFYING_CODE
@@ -567,8 +567,7 @@ FixupDAR:/* Entry point for dcbx workaround. */
567 beq+ 142f 567 beq+ 142f
568 cmpwi cr0, r10, 1964 /* Is icbi? */ 568 cmpwi cr0, r10, 1964 /* Is icbi? */
569 beq+ 142f 569 beq+ 142f
570141: mfspr r10, SPRN_DAR /* r10 must hold DAR at exit */ 570141: b DARFixed /* Nope, go back to normal TLB processing */
571 b DARFixed /* Nope, go back to normal TLB processing */
572 571
573144: mfspr r10, SPRN_DSISR 572144: mfspr r10, SPRN_DSISR
574 rlwinm r10, r10,0,7,5 /* Clear store bit for buggy dcbst insn */ 573 rlwinm r10, r10,0,7,5 /* Clear store bit for buggy dcbst insn */