aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/head_44x.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/kernel/head_44x.S')
-rw-r--r--arch/powerpc/kernel/head_44x.S12
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/head_44x.S b/arch/powerpc/kernel/head_44x.S
index d7a1debda10b..0878bf5d8a68 100644
--- a/arch/powerpc/kernel/head_44x.S
+++ b/arch/powerpc/kernel/head_44x.S
@@ -804,12 +804,24 @@ skpinv: addi r4,r4,1 /* Increment */
804/* 804/*
805 * Configure and load pinned entry into TLB slot 63. 805 * Configure and load pinned entry into TLB slot 63.
806 */ 806 */
807#ifdef CONFIG_DYNAMIC_MEMSTART
808
809 /* Read the XLAT entry for our current mapping */
810 tlbre r25,r23,PPC44x_TLB_XLAT
811
812 lis r3,KERNELBASE@h
813 ori r3,r3,KERNELBASE@l
814
815 /* Use our current RPN entry */
816 mr r4,r25
817#else
807 818
808 lis r3,PAGE_OFFSET@h 819 lis r3,PAGE_OFFSET@h
809 ori r3,r3,PAGE_OFFSET@l 820 ori r3,r3,PAGE_OFFSET@l
810 821
811 /* Kernel is at the base of RAM */ 822 /* Kernel is at the base of RAM */
812 li r4, 0 /* Load the kernel physical address */ 823 li r4, 0 /* Load the kernel physical address */
824#endif
813 825
814 /* Load the kernel PID = 0 */ 826 /* Load the kernel PID = 0 */
815 li r0,0 827 li r0,0