diff options
author | Tom Rini <trini@konsulko.com> | 2021-07-21 22:46:18 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2021-07-21 22:46:18 -0400 |
commit | f31f5367f4cc985d1c1174da5655980c383950cc (patch) | |
tree | 7e7ffa7262976199007ddef4ab1b403747bc0d26 /arch/riscv/lib/image.c | |
parent | c9204859bbdb924cda811813c545032971656480 (diff) | |
parent | 219cb173114c9cfaf1dc7fed21281f2c43c88c9f (diff) |
Merge https://gitlab.denx.de/u-boot/custodians/u-boot-riscv
Diffstat (limited to 'arch/riscv/lib/image.c')
-rw-r--r-- | arch/riscv/lib/image.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/riscv/lib/image.c b/arch/riscv/lib/image.c index 47f2edcf7f..a65a5b8d17 100644 --- a/arch/riscv/lib/image.c +++ b/arch/riscv/lib/image.c @@ -50,7 +50,12 @@ int booti_setup(ulong image, ulong *relocated_addr, ulong *size, return -EINVAL; } *size = lhdr->image_size; - *relocated_addr = gd->ram_base + lhdr->text_offset; + if (force_reloc || + (gd->ram_base <= image && image < gd->ram_base + gd->ram_size)) { + *relocated_addr = gd->ram_base + lhdr->text_offset; + } else { + *relocated_addr = image; + } unmap_sysmem(lhdr); |