
On Thu, Nov 25, 2021 at 11:08:59AM +0800, Artem Lapkin wrote:
Problem
Wrong implementation logic: ramdisk cmdline image address always ignored! Next block { rd_addr = hextoul(select, NULL) } unusable for raw initrd.
We have unbootable raw initrd images because, select_ramdisk for raw initrd images ignore submited select addr and setup rd_datap value to 0
Signed-off-by: Artem Lapkin art@khadas.com Reviewed-by: Simon Glass sjg@chromium.org
V2 changes _ rebase to master _ from https://patchwork.ozlabs.org/project/uboot/patch/20211016051915.4157293-1-ar...
boot/image-board.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/boot/image-board.c b/boot/image-board.c index bf8817165c..87a8f07432 100644 --- a/boot/image-board.c +++ b/boot/image-board.c @@ -334,7 +334,7 @@ static int select_ramdisk(bootm_headers_t *images, const char *select, u8 arch,
if (select) { ulong default_addr;
bool done = true;
bool done = false;
if (CONFIG_IS_ENABLED(FIT)) { /*
@@ -352,13 +352,13 @@ static int select_ramdisk(bootm_headers_t *images, const char *select, u8 arch, &fit_uname_config)) { debug("* ramdisk: config '%s' from image at 0x%08lx\n", fit_uname_config, rd_addr);
done = true; } else if (fit_parse_subimage(select, default_addr, &rd_addr, &fit_uname_ramdisk)) { debug("* ramdisk: subimage '%s' from image at 0x%08lx\n", fit_uname_ramdisk, rd_addr);
} else {
done = false;
} if (!done) {done = true; }
I think we still need this? Can you please confirm and if so rebase to master again, sorry, thanks!