mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 15:14:43 +00:00
spl: spl_legacy: Fix spl_end address
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: 77aed22b48
("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
This commit is contained in:
parent
1758b64f6d
commit
1b8a1be1a1
1 changed files with 1 additions and 1 deletions
|
@ -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) ||
|
||||
|
|
Loading…
Reference in a new issue