From: George Chan <gchan9...@gmail.com> If target u-boot img do not support androidboot v3 or greater, abootimg might not be necessary.
aarch64-linux-gnu-ld.bfd: boot/bootmeth_android.o: in function `boot_android_normal': /home/user/sources/u-boot-next/boot/bootmeth_android.c:541:(.text.boot_android_normal+0xd0): undefined reference to `set_avendor_bootimg_addr' aarch64-linux-gnu-ld.bfd: /home/user/sources/u-boot-next/boot/bootmeth_android.c:543:(.text.boot_android_normal+0xd8): undefined reference to `set_abootimg_addr' Segmentation fault (core dumped) Reviewed-by: Mattijs Korpershoek <mkorpersh...@kernel.org> Acked-by: Mattijs Korpershoek <mkorpersh...@kernel.org> Signed-off-by: George Chan <gchan9...@gmail.com> --- boot/bootmeth_android.c | 2 +- include/image.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/boot/bootmeth_android.c b/boot/bootmeth_android.c index 8c2bde10e17..d7740b86d67 100644 --- a/boot/bootmeth_android.c +++ b/boot/bootmeth_android.c @@ -534,7 +534,7 @@ static int boot_android_normal(struct bootflow *bflow) if (ret < 0) return log_msg_ret("read boot", ret); - if (priv->header_version >= 3) { + if (IS_ENABLED(CONFIG_CMD_ABOOTIMG) && priv->header_version >= 3) { ret = read_slotted_partition(desc, "vendor_boot", priv->slot, priv->vendor_boot_img_size, vloadaddr); if (ret < 0) diff --git a/include/image.h b/include/image.h index 11d33ceeb39..82a861ba8bf 100644 --- a/include/image.h +++ b/include/image.h @@ -2050,6 +2050,7 @@ ulong get_abootimg_addr(void); * Return: no returned results */ void set_abootimg_addr(ulong addr); +void __weak set_abootimg_addr(ulong addr) {} /** * get_ainit_bootimg_addr() - Get Android init boot image address @@ -2071,6 +2072,7 @@ ulong get_avendor_bootimg_addr(void); * Return: no returned results */ void set_avendor_bootimg_addr(ulong addr); +void __weak set_avendor_bootimg_addr(ulong addr) {} /** * board_fit_config_name_match() - Check for a matching board name -- 2.43.0