[PATCH v6 7/7] doc: Add a warning about using RELOC_ADDR_TOP
Ilias Apalodimas
ilias.apalodimas at linaro.org
Tue Jun 9 15:15:49 CEST 2026
Since devices that can't DMA above 4GiB will misbehave with this option
enabled add a warning on the documentation.
Reviewed-by: Simon Glass <sjg at chromium.org>
Signed-off-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>
---
doc/develop/memory.rst | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/doc/develop/memory.rst b/doc/develop/memory.rst
index 5177229630d1..3da39bb6c664 100644
--- a/doc/develop/memory.rst
+++ b/doc/develop/memory.rst
@@ -111,6 +111,15 @@ U-Boot Proper Flow
This follows the same as in SPL flow. In board_init_f(), a part of memory
is reserved at the end of RAM (see reserve_* functions in init_sequence_f)
+ #. Relocation address
+
+ By default U-Boot will try to relocate below the 4GiB boundary. If
+ RELOC_ADDR_TOP is enabled U-Boot will look into the dram bank config of
+ gd->dram[] and try to relocate to the highest available bank. Use this
+ with caution as devices that can only DMA below 4GiB will misbehave
+ since their buffers may be allocated above the 32-bit boundary.
+ Boards can override thre relocation address via board_get_usable_ram_top().
+
#. Code Relocation
relocate_code() is called which relocates U-Boot code from the current
--
2.43.0
More information about the U-Boot
mailing list