aboutsummaryrefslogtreecommitdiff
path: root/common/board_r.c
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2019-10-21 17:26:50 -0600
committerSimon Glass <sjg@chromium.org>2019-10-27 10:56:51 -0600
commitac9cd4805c8b11f529b508921c2275b889265313 (patch)
tree9e5e40ea153b77ad4c2977d5694c88d0ee76b851 /common/board_r.c
parent65b2d96f4c5e3f9084bc04cf5a5d7fc7a2285a72 (diff)
downloadu-boot-ac9cd4805c8b11f529b508921c2275b889265313.zip
u-boot-ac9cd4805c8b11f529b508921c2275b889265313.tar.gz
u-boot-ac9cd4805c8b11f529b508921c2275b889265313.tar.bz2
bootstage: Correct relocation algorithm
At present bootstage relocation assumes that it is possible to point back to memory available before relocation, so it does not relocate the strings. However this is not the case on some platforms, such as x86 which uses the cache as RAM and loses access to this when the cache is enabled. Move the relocation step to before U-Boot relocates, expand the allocated region to include space for the strings and relocate the strings at the same time as the bootstage records. This ensures that bootstage data can remain accessible from TPL through SPL to U-Boot before/after relocation. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'common/board_r.c')
-rw-r--r--common/board_r.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/common/board_r.c b/common/board_r.c
index d6fb504..c1ecb06 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -670,7 +670,6 @@ static init_fnc_t init_sequence_r[] = {
#ifdef CONFIG_SYS_NONCACHED_MEMORY
initr_noncached,
#endif
- bootstage_relocate,
#ifdef CONFIG_OF_LIVE
initr_of_live,
#endif