
On 6/20/22 16:31, Tom Rini wrote:
- Explain why fdt_addr and initrd_addr should not be set to disable relocation normally.
- Provide some advice on the typical loadaddr default value.
Signed-off-by: Tom Rini trini@konsulko.com
doc/usage/environment.rst | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/doc/usage/environment.rst b/doc/usage/environment.rst index a3f23d4e4e22..a9a4702632d2 100644 --- a/doc/usage/environment.rst +++ b/doc/usage/environment.rst @@ -204,7 +204,9 @@ fdt_high to work it must reside in writable memory, have sufficient padding on the end of it for u-boot to add the information it needs into it, and the memory
- must be accessible by the kernel.
- must be accessible by the kernel. This usage is strongly discouraged
- however as it also stops U-Boot from ensuring the device tree starting
- address is properly aligned and a misaligned tree will cause OS failures.
fdt_addr_r is typically 4 byte aligned. Is there a bug in some part of the code?
fdtcontroladdr if set this is the address of the control flattened @@ -240,14 +242,21 @@ initrd_high memory. In this case U-Boot will NOT COPY the ramdisk at all. This may be useful to reduce the boot time on your system, but requires that this
- feature is supported by your Linux kernel.
- feature is supported by your Linux kernel. This usage however requires
- that the user ensure that there will be no overlap with other parts of the
It is not the user but the developer who define $kernel_addr_r, $initr_addr_r, and $fdt_addr_r.
Relocating initrd does not stop the user from loading the kernel to initrd_high. The user is always responsible for avoiding overlap. In this regard there is nothing special about initrd_high=~0UL.
- iamge such as the Linux kernel BSS. It should not be enabled by default
%s/iamge/image
- and only done as part of optimizing a deployment.
Relocating initrd and fdt is using boot time. On many boards it is simply superfluous. On these boards I cannot see any reason not to disable it by default.
Best regards
Heinrich
ipaddr IP address; needed for tftpboot command
loadaddr Default load address for commands like "bootp",
- "rarpboot", "tftpboot", "loadb" or "diskboot"
"rarpboot", "tftpboot", "loadb" or "diskboot". Note that the optimal
default values here will vary between architectures. On 32bit ARM for
example, some offset from start of memory is used as the Linux kernel
zImage has a self decompressor and it's best if we stay out of where that
will be working.
loads_echo see CONFIG_LOADS_ECHO