aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabio Estevam <festevam@denx.de>2023-06-30 23:30:53 -0300
committerTom Rini <trini@konsulko.com>2023-07-03 10:20:13 -0400
commit1b8a1be1a1f143ce6294e2dcd5244d995cdba8cf (patch)
tree5f214ce4d0d35db9fbc8090327da36a23fc35385
parent1758b64f6df259542c6f662d18e3f13f79597585 (diff)
downloadu-boot-WIP/03Jul2023.zip
u-boot-WIP/03Jul2023.tar.gz
u-boot-WIP/03Jul2023.tar.bz2
spl: spl_legacy: Fix spl_end addressWIP/03Jul2023
Currently, spl_end points to the __bss_end address, which is an external RAM address instead of the end of the SPL text section in the internal RAM. This causes boot failures on imx6-colibri, for example: ``` Trying to boot from MMC1 SPL: Image overlaps SPL resetting ... ``` Fix this problem by assigning spl_end to _image_binary_end, as this symbol properly represents the end of the SPL text section. From u-boot-spl.map: .end *(.__end) 0x00000000009121a4 _image_binary_end = . Fixes: 77aed22b48ab ("spl: spl_legacy: Add extra address checks") Reported-by: Francesco Dolcini <francesco.dolcini@toradex.com> Signed-off-by: Fabio Estevam <festevam@denx.de> Tested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Marek Vasut <marex@denx.de> Tested-by: Marek Vasut <marex@denx.de> # DH i.MX6Q DHCOM PDK2
-rw-r--r--common/spl/spl_legacy.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/common/spl/spl_legacy.c b/common/spl/spl_legacy.c
index d34bc54..095443c 100644
--- a/common/spl/spl_legacy.c
+++ b/common/spl/spl_legacy.c
@@ -19,7 +19,7 @@
static void spl_parse_legacy_validate(uintptr_t start, uintptr_t size)
{
uintptr_t spl_start = (uintptr_t)_start;
- uintptr_t spl_end = (uintptr_t)__bss_end;
+ uintptr_t spl_end = (uintptr_t)_image_binary_end;
uintptr_t end = start + size;
if ((start >= spl_start && start < spl_end) ||