Commit 15ad838d authored by Thomas Bogendoerfer's avatar Thomas Bogendoerfer Committed by Ralf Baechle
Browse files

[MIPS] Always do the ARC64_TWIDDLE_PC thing.



Always jump to the place where the kernel is linked to. This helps where
the bootloaders/proms ignores the start address inside the ELF header.
Signed-off-by: default avatarThomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent d85714d8
...@@ -27,16 +27,6 @@ ...@@ -27,16 +27,6 @@
#include <kernel-entry-init.h> #include <kernel-entry-init.h>
.macro ARC64_TWIDDLE_PC
#if defined(CONFIG_ARC64) || defined(CONFIG_MAPPED_KERNEL)
/* We get launched at a XKPHYS address but the kernel is linked to
run at a KSEG0 address, so jump there. */
PTR_LA t0, \@f
jr t0
\@:
#endif
.endm
/* /*
* inputs are the text nasid in t1, data nasid in t2. * inputs are the text nasid in t1, data nasid in t2.
*/ */
...@@ -157,7 +147,11 @@ NESTED(kernel_entry, 16, sp) # kernel entry point ...@@ -157,7 +147,11 @@ NESTED(kernel_entry, 16, sp) # kernel entry point
setup_c0_status_pri setup_c0_status_pri
ARC64_TWIDDLE_PC /* We might not get launched at the address the kernel is linked to,
so we jump there. */
PTR_LA t0, 0f
jr t0
0:
#ifdef CONFIG_MIPS_MT_SMTC #ifdef CONFIG_MIPS_MT_SMTC
/* /*
......
...@@ -46,7 +46,14 @@ ...@@ -46,7 +46,14 @@
lh t1, KV_RO_NASID_OFFSET(t0) lh t1, KV_RO_NASID_OFFSET(t0)
lh t2, KV_RW_NASID_OFFSET(t0) lh t2, KV_RW_NASID_OFFSET(t0)
MAPPED_KERNEL_SETUP_TLB MAPPED_KERNEL_SETUP_TLB
ARC64_TWIDDLE_PC
/*
* We might not get launched at the address the kernel is linked to,
* so we jump there.
*/
PTR_LA t0, 0f
jr t0
0:
.endm .endm
#endif /* __ASM_MACH_IP27_KERNEL_ENTRY_H */ #endif /* __ASM_MACH_IP27_KERNEL_ENTRY_H */
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment