bootm: Simplify Android ramdisk addr in bootm_find_images()

The Android mechanism uses the loadaddr envrionment-variable to get the
load address, if none is provided. This is equivalent to
image_load_addr so use that instead, converting it to a string as
needed.

This change will permit passing img_addr to this function, in a future
change.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Simon Glass 2023-11-18 14:05:13 -07:00 committed by Tom Rini
parent 96456285c2
commit 46aee252af

View File

@ -490,15 +490,20 @@ int bootm_find_images(int flag, int argc, char *const argv[], ulong start,
ulong size)
{
const char *select = NULL;
char addr_str[17];
ulong img_addr;
void *buf;
int ret;
img_addr = argc ? hextoul(argv[0], NULL) : image_load_addr;
if (IS_ENABLED(CONFIG_ANDROID_BOOT_IMAGE)) {
/* Look for an Android boot image */
buf = map_sysmem(images.os.start, 0);
if (buf && genimg_get_format(buf) == IMAGE_FORMAT_ANDROID)
select = argc ? argv[0] : env_get("loadaddr");
if (buf && genimg_get_format(buf) == IMAGE_FORMAT_ANDROID) {
strcpy(addr_str, simple_xtoa(img_addr));
select = addr_str;
}
}
if (argc >= 2)
@ -525,7 +530,6 @@ int bootm_find_images(int flag, int argc, char *const argv[], ulong start,
}
if (CONFIG_IS_ENABLED(OF_LIBFDT)) {
img_addr = argc ? hextoul(argv[0], NULL) : image_load_addr;
buf = map_sysmem(img_addr, 0);
/* find flattened device tree */