board: ti: am62x_evm: Add android bootflow
Add Android bootflow support for AM62X SK EVM board with new android boot method. To build for AM62x for Android, we use the am62x_a53_android.config fragment when building A53 bootloaders: $ make am62x_evm_a53_defconfig $ make am62x_a53_android.config $ make Co-developed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Bryan Brattlof <bb@ti.com>
This commit is contained in:
committed by
Tom Rini
parent
57949a99b7
commit
0be5309ee4
@@ -19,3 +19,8 @@ splashfile=ti_logo_414x97_32bpp.bmp.gz
|
||||
splashimage=0x80200000
|
||||
splashpos=m,m
|
||||
splashsource=sf
|
||||
|
||||
#if CONFIG_BOOTMETH_ANDROID
|
||||
#include <env/ti/android.env>
|
||||
adtb_idx=0
|
||||
#endif
|
||||
21
configs/am62x_a53_android.config
Normal file
21
configs/am62x_a53_android.config
Normal file
@@ -0,0 +1,21 @@
|
||||
# Defconfig fragment for enabling Android boot flow
|
||||
# to apply on top of am62x_evm_a53_defconfig or am62x_lpsk_a53_defconfig
|
||||
# Enable fastboot
|
||||
CONFIG_USB_FUNCTION_FASTBOOT=y
|
||||
CONFIG_FASTBOOT_BUF_ADDR=0xC0000000
|
||||
CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
|
||||
CONFIG_FASTBOOT_FLASH=y
|
||||
CONFIG_FASTBOOT_FLASH_MMC_DEV=0
|
||||
CONFIG_CMD_GPT=y # Needed for FASTBOOT_CMD_OEM_FORMAT
|
||||
CONFIG_RANDOM_UUID=y # Needed for FASTBOOT_CMD_OEM_FORMAT
|
||||
CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
|
||||
# Enable Android boot flow
|
||||
CONFIG_BOOTMETH_ANDROID=y
|
||||
CONFIG_SYS_BOOTM_LEN=0x4000000
|
||||
CONFIG_SYS_MALLOC_LEN=0x08000000
|
||||
CONFIG_AVB_VERIFY=y
|
||||
CONFIG_LIBAVB=y
|
||||
CONFIG_CMD_ADTIMG=y
|
||||
CONFIG_CMD_ABOOTIMG=y
|
||||
CONFIG_CMD_AB_SELECT=y
|
||||
CONFIG_CMD_AVB=y
|
||||
@@ -132,6 +132,20 @@ DFU support (and disable storage support)
|
||||
.. include:: ../ti/k3.rst
|
||||
:start-after: .. k3_rst_include_start_build_steps_uboot
|
||||
:end-before: .. k3_rst_include_end_build_steps_uboot
|
||||
|
||||
* 3.2.1 Alternative build of A53 for Android bootflow:
|
||||
|
||||
Since the Android requires many more dependencies, it is disabled by default.
|
||||
An extra config fragment should be used to enable Android bootflow support.
|
||||
|
||||
.. prompt:: bash $
|
||||
|
||||
export UBOOT_CFG_CORTEXR="${UBOOT_CFG_CORTEXA} am62x_a53_android.config"
|
||||
|
||||
.. include:: ../ti/k3.rst
|
||||
:start-after: .. k3_rst_include_start_build_steps_uboot
|
||||
:end-before: .. k3_rst_include_end_build_steps_uboot
|
||||
|
||||
.. am62x_evm_rst_include_end_build_steps
|
||||
|
||||
Target Images
|
||||
|
||||
31
include/env/ti/android.env
vendored
Normal file
31
include/env/ti/android.env
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
/* Android partitions
|
||||
* += is needed because \n is converted by space in .env files */
|
||||
partitions=name=bootloader,start=5M,size=8M,uuid=${uuid_gpt_bootloader};
|
||||
partitions+=name=tiboot3,start=4M,size=1M,uuid=${uuid_gpt_tiboot3};
|
||||
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_bootenv=0x800 0x400 mmcpart 1
|
||||
fastboot.partition-type:metadata=f2fs
|
||||
|
||||
boot_targets=mmc0
|
||||
mmcdev=0
|
||||
bootmeths=android
|
||||
vendor_boot_comp_addr_r=0xd0000000
|
||||
bootcmd=bootflow scan -lb
|
||||
Reference in New Issue
Block a user