[PATCH 2/3] board: beagle: beagleplay: Add android bootflow support

Mattijs Korpershoek mkorpershoek at baylibre.com
Tue Sep 3 09:27:15 CEST 2024


Hi Guillaume,

Thank you for the patch.

On lun., sept. 02, 2024 at 18:31, Guillaume La Roque <glaroque at baylibre.com> wrote:

> From: Mattijs Korpershoek <mkorpershoek at baylibre.com>
>
> Beagle Play has a different boot flow than the AM62x SK EVM.
>
> AM62x SK EVM:
> 1. Boot rom reads UDA (User Data Area), looking for tiboot3
> 2. Boot rom finds tiboot3 and loads it
>
> Beagle Play:
> 1. Boot rom looks for tiboot3 in mmc0boot0
> 2. Boot rom finds tiboot3 and loads it
>
> Because of this difference, we need to have a different
> partitioning table than the generic TI one.
>
> Include generic TI android support and override the partitioning table
> to boot Android.
>
> Signed-off-by: Mattijs Korpershoek <mkorpershoek at baylibre.com>
> Signed-off-by: Guillaume La Roque <glaroque at baylibre.com>

Reviewed-by: Mattijs Korpershoek <mkorpershoek at baylibre.com>

> ---
>  board/beagle/beagleplay/beagleplay.env | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/board/beagle/beagleplay/beagleplay.env b/board/beagle/beagleplay/beagleplay.env
> index 354bc987d12b..fc29d49712db 100644
> --- a/board/beagle/beagleplay/beagleplay.env
> +++ b/board/beagle/beagleplay/beagleplay.env
> @@ -17,3 +17,33 @@ bootdir=/boot
>  boot_targets=mmc1 mmc0
>  bootmeths=script extlinux efi pxe
>  rd_spec=-
> +
> +#if CONFIG_BOOTMETH_ANDROID
> +#include <env/ti/android.env>
> +/* Override Android partitions
> + * Required because tiboot3 is in mmc0boot0, not in UDA
> + * note that += is needed because \n is converted by space in .env files */
> +partitions=
> +       name=bootloader,start=5M,size=8M,uuid=${uuid_gpt_bootloader};
> +partitions+=name=misc,start=13824K,size=512K,uuid=${uuid_gpt_misc};
> +partitions+=name=frp,size=512K,uuid=${uuid_gpt_frp};
> +partitions+=name=boot_a,size=40M,uuid=${uuid_gpt_boot_a};
> +partitions+=name=boot_b,size=40M,uuid=${uuid_gpt_boot_b};
> +partitions+=name=vendor_boot_a,size=32M,uuid=${uuid_gpt_vendor_boot_a};
> +partitions+=name=vendor_boot_b,size=32M,uuid=${uuid_gpt_vendor_boot_b};
> +partitions+=name=init_boot_a,size=8M,uuid=${uuid_gpt_init_boot_a};
> +partitions+=name=init_boot_b,size=8M,uuid=${uuid_gpt_init_boot_b};
> +partitions+=name=dtbo_a,size=8M,uuid=${uuid_gpt_dtbo_a};
> +partitions+=name=dtbo_b,size=8M,uuid=${uuid_gpt_dtbo_b};
> +partitions+=name=vbmeta_a,size=64K,uuid=${uuid_gpt_vbmeta_a};
> +partitions+=name=vbmeta_b,size=64K,uuid=${uuid_gpt_vbmeta_b};
> +partitions+=name=vbmeta_vendor_dlkm_a,size=64K,uuid=${uuid_gpt_vbmeta_vendor_dlkm_a};
> +partitions+=name=vbmeta_vendor_dlkm_b,size=64K,uuid=${uuid_gpt_vbmeta_vendor_dlkm_b};
> +partitions+=name=super,size=4608M,uuid=${uuid_gpt_super};
> +partitions+=name=metadata,size=64M,uuid=${uuid_gpt_metadata};
> +partitions+=name=persist,size=32M,uuid=${uuid_gpt_persist};
> +partitions+=name=userdata,size=-,uuid=${uuid_gpt_userdata}
> +fastboot_raw_partition_tiboot3="0x0 0x800 mmcpart 1"
> +
> +adtb_idx=2
> +#endif
>
> -- 
> 2.34.1


More information about the U-Boot mailing list