board: beagle: beagleplay: Add android bootflow support

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@baylibre.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
This commit is contained in:
Mattijs Korpershoek 2024-09-12 09:29:58 +02:00 committed by Tom Rini
parent 0be5309ee4
commit 07a8ffc56d

View file

@ -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