[PATCH v2 3/5] boot: bootmeth_android: Conditionally dependent on abootimg
Mattijs Korpershoek
mkorpershoek at kernel.org
Thu Jun 12 09:35:45 CEST 2025
Hi George,
Thank you for the patch.
On Sat, Jun 07, 2025 at 13:24, George Chan via B4 Relay <devnull+gchan9527.gmail.com at kernel.org> wrote:
> From: George Chan <gchan9527 at gmail.com>
>
> If target u-boot img do not support androidboot v3 or greater,
> abootimg might not be necessary.
Indeed, and this is already handled properly in ./boot/bootm.c and
./boot/image-board.c.
>
> 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)
>
> Signed-off-by: George Chan <gchan9527 at gmail.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek at kernel.org>
Acked-by: Mattijs Korpershoek <mkorpershoek at kernel.org>
Casey, feel free to pick this up through your tree.
> ---
> boot/bootmeth_android.c | 2 +-
> include/image.h | 3 ++-
> 2 files changed, 3 insertions(+), 2 deletions(-)
>
> 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 1e1bded690b..2c03dde768d 100644
> --- a/include/image.h
> +++ b/include/image.h
> @@ -2038,7 +2038,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
> *
> @@ -2059,6 +2059,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
More information about the U-Boot
mailing list