mirror of
https://github.com/u-boot/u-boot.git
synced 2025-01-23 11:13:57 +08:00
arm926ejs, tx25: add support for ELF relocations
Signed-off-by: Heiko Schocher <hs@denx.de>
This commit is contained in:
parent
4a8fd13af8
commit
9710504d20
@ -70,5 +70,7 @@ LDSCRIPT := $(SRCTREE)/$(CPUDIR)/u-boot.lds
|
||||
|
||||
ifndef CONFIG_SYS_ARM_WITHOUT_RELOC
|
||||
# needed for relocation
|
||||
ifndef CONFIG_NAND_SPL
|
||||
PLATFORM_LDFLAGS += -pie
|
||||
endif
|
||||
endif
|
||||
|
@ -279,10 +279,10 @@ clbss_l:str r2, [r0] /* clear loop... */
|
||||
*/
|
||||
#ifdef CONFIG_NAND_SPL
|
||||
ldr r0, _nand_boot_ofs
|
||||
adr r1, _start
|
||||
add pc, r0, r1
|
||||
_nand_boot_ofs
|
||||
: .word nand_boot - _start
|
||||
mov pc, r0
|
||||
|
||||
_nand_boot_ofs:
|
||||
.word nand_boot
|
||||
#else
|
||||
ldr r0, _board_init_r_ofs
|
||||
adr r1, _start
|
||||
|
@ -1,5 +1,5 @@
|
||||
ifdef CONFIG_NAND_SPL
|
||||
TEXT_BASE = 0x810c0000
|
||||
else
|
||||
TEXT_BASE = 0x81fc0000
|
||||
TEXT_BASE = 0x81200000
|
||||
endif
|
||||
|
@ -41,7 +41,7 @@
|
||||
#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x800
|
||||
#define CONFIG_SYS_NAND_U_BOOT_SIZE 0x30000
|
||||
|
||||
#define CONFIG_SYS_NAND_U_BOOT_DST (0x81fc0000)
|
||||
#define CONFIG_SYS_NAND_U_BOOT_DST (0x81200000)
|
||||
#define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_NAND_U_BOOT_DST
|
||||
|
||||
#define CONFIG_SYS_NAND_PAGE_SIZE 2048
|
||||
|
@ -53,6 +53,11 @@ SECTIONS
|
||||
*(.data.rel.ro)
|
||||
}
|
||||
|
||||
. = ALIGN(4);
|
||||
__rel_dyn_start = .;
|
||||
__rel_dyn_end = .;
|
||||
__dynsym_start = .;
|
||||
|
||||
__got_start = .;
|
||||
. = ALIGN(4);
|
||||
.got : { *(.got) }
|
||||
@ -67,4 +72,12 @@ SECTIONS
|
||||
__bss_start = .;
|
||||
.bss : { *(.bss) }
|
||||
_end = .;
|
||||
/DISCARD/ : { *(.bss*) }
|
||||
/DISCARD/ : { *(.dynstr*) }
|
||||
/DISCARD/ : { *(.dynsym*) }
|
||||
/DISCARD/ : { *(.dynamic*) }
|
||||
/DISCARD/ : { *(.hash*) }
|
||||
/DISCARD/ : { *(.plt*) }
|
||||
/DISCARD/ : { *(.interp*) }
|
||||
/DISCARD/ : { *(.gnu*) }
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user