mirror of https://gitee.com/openkylin/linux.git
xtensa: nommu: fix Image.elf reset code and ld script
Don't hardcode kernel entry address as 0x3000 or 0xd0003000, use LOAD_MEMORY_ADDRESS macro. Don't compile MMU remapping code and don't try to link it when building noMMU configuration. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
This commit is contained in:
parent
be603092cc
commit
ccd0ef38be
|
@ -41,6 +41,7 @@ SECTIONS
|
|||
__bss_end = .;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_MMU
|
||||
/*
|
||||
* This is a remapped copy of the Reset Vector Code.
|
||||
* It keeps gdb in sync with the PC after switching
|
||||
|
@ -51,4 +52,5 @@ SECTIONS
|
|||
{
|
||||
*(.ResetVector.remapped_text)
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#include <asm/page.h>
|
||||
#include <asm/cacheasm.h>
|
||||
#include <asm/initialize_mmu.h>
|
||||
#include <asm/vectors.h>
|
||||
#include <linux/linkage.h>
|
||||
|
||||
.section .ResetVector.text, "ax"
|
||||
|
@ -34,12 +35,7 @@ _ResetVector:
|
|||
|
||||
.align 4
|
||||
RomInitAddr:
|
||||
#if defined(CONFIG_INITIALIZE_XTENSA_MMU_INSIDE_VMLINUX) && \
|
||||
XCHAL_HAVE_PTP_MMU && XCHAL_HAVE_SPANNING_WAY
|
||||
.word 0x00003000
|
||||
#else
|
||||
.word 0xd0003000
|
||||
#endif
|
||||
.word LOAD_MEMORY_ADDRESS
|
||||
RomBootParam:
|
||||
.word _bootparam
|
||||
_bootparam:
|
||||
|
@ -79,6 +75,7 @@ reset:
|
|||
movi a4, 0
|
||||
jx a0
|
||||
|
||||
#ifdef CONFIG_MMU
|
||||
.align 4
|
||||
|
||||
.section .ResetVector.remapped_text, "x"
|
||||
|
@ -102,3 +99,4 @@ _RemappedSetupMMU:
|
|||
#endif
|
||||
|
||||
.end no-absolute-literals
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue