Message ID | 20240902-sitaraupstream-v1-2-0c478c33c08b@baylibre.com |
---|---|
State | Changes Requested |
Delegated to: | Mattijs Korpershoek |
Headers | show |
Series | Add Android 14 bootflow support for AM62X and AM62P board | expand |
Hi Guillaume, Thank you for the patch. On lun., sept. 02, 2024 at 18:31, Guillaume La Roque <glaroque@baylibre.com> wrote: > From: Mattijs Korpershoek <mkorpershoek@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@baylibre.com> > Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> Reviewed-by: Mattijs Korpershoek <mkorpershoek@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
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