[PATCH 2/2] riscv: Provide __image_copy_{start_end} symbols in linkerscript

Simon Glass sjg at chromium.org
Wed Apr 9 15:22:54 CEST 2025


Hi Yao,

On Tue, 8 Apr 2025 at 03:32, Yao Zi <ziyao at disroot.org> wrote:
>
> On Mon, Apr 07, 2025 at 01:10:32PM +0200, Jonas Karlman wrote:
> > Hi,
> >
> > On 2025-04-07 05:37, Yao Zi wrote:
> > > 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 at disroot.org>
> > > ---
> > >  arch/riscv/cpu/u-boot-spl.lds | 2 ++
> > >  arch/riscv/cpu/u-boot.lds     | 3 +++
> > >  2 files changed, 5 insertions(+)
> > >
> > > diff --git a/arch/riscv/cpu/u-boot-spl.lds b/arch/riscv/cpu/u-boot-spl.lds
> > > index 907094620bd..18eb62c01c6 100644
> > > --- a/arch/riscv/cpu/u-boot-spl.lds
> > > +++ b/arch/riscv/cpu/u-boot-spl.lds
> > > @@ -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 = .;
> >
> > This looks like a typo, should probably be with two _ ?
>
> Yes, thanks for catching this. I'll correct it and apply Simon's tag in
> v2. Simon, is it okay for you?

Yes.

Regards,
Simon


More information about the U-Boot mailing list