1# BoardConfigGsiCommon.mk 2# 3# Common compile-time definitions for GSI 4# Builds upon the mainline config. 5# 6 7include build/make/target/board/BoardConfigMainlineCommon.mk 8 9TARGET_NO_KERNEL := true 10 11# This flag is set by mainline but isn't desired for GSI. 12BOARD_USES_SYSTEM_OTHER_ODEX := 13 14# system.img is ext4/erofs and non-sparsed. 15GSI_FILE_SYSTEM_TYPE ?= ext4 16BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE := $(GSI_FILE_SYSTEM_TYPE) 17TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true 18TARGET_USERIMAGES_SPARSE_EROFS_DISABLED := true 19 20# GSI also includes make_f2fs to support userdata parition in f2fs 21# for some devices 22TARGET_USERIMAGES_USE_F2FS := true 23 24# Enable dynamic system image size and reserved 64MB in it. 25BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 67108864 26 27# GSI forces product and system_ext packages to /system for now. 28TARGET_COPY_OUT_PRODUCT := system/product 29TARGET_COPY_OUT_SYSTEM_EXT := system/system_ext 30BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := 31 32# Creates metadata partition mount point under root for 33# the devices with metadata parition 34BOARD_USES_METADATA_PARTITION := true 35 36# Android Verified Boot (AVB): 37# Set the rollback index to zero, to prevent the device bootloader from 38# updating the last seen rollback index in the tamper-evident storage. 39BOARD_AVB_ROLLBACK_INDEX := 0 40 41# The chained vbmeta settings for boot images. 42BOARD_AVB_BOOT_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem 43BOARD_AVB_BOOT_ALGORITHM := SHA256_RSA4096 44BOARD_AVB_BOOT_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP) 45BOARD_AVB_BOOT_ROLLBACK_INDEX_LOCATION := 2 46 47# Enable AVB chained partition for system. 48# https://android.googlesource.com/platform/external/avb/+/master/README.md 49BOARD_AVB_SYSTEM_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem 50BOARD_AVB_SYSTEM_ALGORITHM := SHA256_RSA2048 51BOARD_AVB_SYSTEM_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP) 52BOARD_AVB_SYSTEM_ROLLBACK_INDEX_LOCATION := 1 53 54# Using sha256 for dm-verity partitions. b/156162446 55BOARD_AVB_SYSTEM_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256 56 57ifdef BUILDING_GSI 58# super.img spec for GSI targets 59BOARD_SUPER_PARTITION_SIZE := 3229614080 60BOARD_SUPER_PARTITION_GROUPS := gsi_dynamic_partitions 61BOARD_GSI_DYNAMIC_PARTITIONS_PARTITION_LIST := system 62BOARD_GSI_DYNAMIC_PARTITIONS_SIZE := 3221225472 63endif 64 65# TODO(b/123695868, b/146149698): 66# This flag is set by mainline but isn't desired for GSI 67BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := 68 69# GSI specific System Properties 70ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT))) 71TARGET_SYSTEM_EXT_PROP := build/make/target/board/gsi_system_ext.prop 72else 73TARGET_SYSTEM_EXT_PROP := build/make/target/board/gsi_system_ext_user.prop 74endif 75 76# Set this to create /cache mount point for non-A/B devices that mounts /cache. 77# The partition size doesn't matter, just to make build pass. 78BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4 79BOARD_CACHEIMAGE_PARTITION_SIZE := 16777216 80 81# Setup a vendor image to let PRODUCT_VENDOR_PROPERTIES does not affect GSI 82BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4 83 84# Disable 64 bit mediadrmserver 85TARGET_ENABLE_MEDIADRM_64 := 86