diff options
Diffstat (limited to 'arch/powerpc/kernel/misc_64.S')
-rw-r--r-- | arch/powerpc/kernel/misc_64.S | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/arch/powerpc/kernel/misc_64.S b/arch/powerpc/kernel/misc_64.S index 519861da0423..bbb3ba54c51c 100644 --- a/arch/powerpc/kernel/misc_64.S +++ b/arch/powerpc/kernel/misc_64.S | |||
@@ -646,6 +646,19 @@ _GLOBAL(kexec_sequence) | |||
646 | /* turn off mmu */ | 646 | /* turn off mmu */ |
647 | bl real_mode | 647 | bl real_mode |
648 | 648 | ||
649 | /* copy 0x100 bytes starting at start to 0 */ | ||
650 | li r3,0 | ||
651 | mr r4,r30 /* start, aka phys mem offset */ | ||
652 | li r5,0x100 | ||
653 | li r6,0 | ||
654 | bl .copy_and_flush /* (dest, src, copy limit, start offset) */ | ||
655 | 1: /* assume normal blr return */ | ||
656 | |||
657 | /* release other cpus to the new kernel secondary start at 0x60 */ | ||
658 | mflr r5 | ||
659 | li r6,1 | ||
660 | stw r6,kexec_flag-1b(5) | ||
661 | |||
649 | /* clear out hardware hash page table and tlb */ | 662 | /* clear out hardware hash page table and tlb */ |
650 | ld r5,0(r27) /* deref function descriptor */ | 663 | ld r5,0(r27) /* deref function descriptor */ |
651 | mtctr r5 | 664 | mtctr r5 |
@@ -676,19 +689,6 @@ _GLOBAL(kexec_sequence) | |||
676 | * are the boot cpu ????? | 689 | * are the boot cpu ????? |
677 | * other device tree differences (prop sizes, va vs pa, etc)... | 690 | * other device tree differences (prop sizes, va vs pa, etc)... |
678 | */ | 691 | */ |
679 | |||
680 | /* copy 0x100 bytes starting at start to 0 */ | ||
681 | li r3,0 | ||
682 | mr r4,r30 | ||
683 | li r5,0x100 | ||
684 | li r6,0 | ||
685 | bl .copy_and_flush /* (dest, src, copy limit, start offset) */ | ||
686 | 1: /* assume normal blr return */ | ||
687 | |||
688 | /* release other cpus to the new kernel secondary start at 0x60 */ | ||
689 | mflr r5 | ||
690 | li r6,1 | ||
691 | stw r6,kexec_flag-1b(5) | ||
692 | mr r3,r25 # my phys cpu | 692 | mr r3,r25 # my phys cpu |
693 | mr r4,r30 # start, aka phys mem offset | 693 | mr r4,r30 # start, aka phys mem offset |
694 | mtlr 4 | 694 | mtlr 4 |