
The comment for initrd_high in the coding and in README were contradicting and neither fully described what the coding does.
Clarify the usage of the special value ~0UL for the environment variable initrd_high.
Signed-off-by: Heinrich Schuchardt xypron.glpk@gmx.de --- README | 3 ++- common/image.c | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/README b/README index 7b73a1c973..fe58f1ab98 100644 --- a/README +++ b/README @@ -3310,7 +3310,8 @@ List of environment variables (most likely not complete):
setenv initrd_high 00c00000
- If you set initrd_high to 0xFFFFFFFF, this is an + If you set initrd_high to 0xFFFFFFFF on a 32-bit systems + or 0xFFFFFFFFFFFFFFFF on a 64-bit systems, this is an indication to U-Boot that all addresses are legal for the Linux kernel, including addresses in flash memory. In this case U-Boot will NOT COPY the diff --git a/common/image.c b/common/image.c index 451fc689a8..007e4e987a 100644 --- a/common/image.c +++ b/common/image.c @@ -1362,8 +1362,10 @@ int boot_ramdisk_high(struct lmb *lmb, ulong rd_data, ulong rd_len,
s = env_get("initrd_high"); if (s) { - /* a value of "no" or a similar string will act like 0, - * turning the "load high" feature off. This is intentional. + /* + * A value of 0xffffffffffffffff on 64-bit or 0xffffffff + * on 32-bit systems will disable the copying of the initial + * RAM disk to high memory. */ initrd_high = simple_strtoul(s, NULL, 16); if (initrd_high == ~0) -- 2.29.2