riscv: Provide __image_copy_{start_end} symbols in linkerscript
Binman looks for __image_copy_start to determine the base address of an entry if elf-base-sym isn't specified, which is missing in RISC-V port. This causes binman skips RISC-V SPL entries without filling addresses into its .binman_sym_table section. This patch defines __image_copy_start in linkerscript of both SPL and proper U-Boot to ensure binman_sym functions correctly with the default binman.dtsi. The paired symbol, __image_copy_end, is introduced as well for completeness. Signed-off-by: Yao Zi <ziyao@disroot.org> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
@@ -16,6 +16,7 @@ ENTRY(_start)
|
||||
SECTIONS
|
||||
{
|
||||
. = ALIGN(4);
|
||||
__image_copy_start = ADDR(.text);
|
||||
.text : {
|
||||
arch/riscv/cpu/start.o (.text)
|
||||
*(.text*)
|
||||
@@ -46,6 +47,7 @@ SECTIONS
|
||||
|
||||
_end = .;
|
||||
_image_binary_end = .;
|
||||
__image_copy_end = .;
|
||||
|
||||
.bss : {
|
||||
__bss_start = .;
|
||||
|
||||
@@ -10,6 +10,7 @@ ENTRY(_start)
|
||||
SECTIONS
|
||||
{
|
||||
. = ALIGN(4);
|
||||
__image_copy_start = ADDR(.text);
|
||||
.text : {
|
||||
arch/riscv/cpu/start.o (.text)
|
||||
}
|
||||
@@ -57,6 +58,8 @@ SECTIONS
|
||||
__efi_runtime_rel_stop = .;
|
||||
}
|
||||
|
||||
__image_copy_end = .;
|
||||
|
||||
/DISCARD/ : { *(.rela.plt*) }
|
||||
.rela.dyn : {
|
||||
__rel_dyn_start = .;
|
||||
|
||||
Reference in New Issue
Block a user