blob: 1df981b073e0377f9db26b8bbb0f69eeec6a080a [file] [log] [blame]
Isaac Chen55e1d012018-06-11 12:52:22 +08001# BoardConfigGsiCommon.mk
2#
3# Common compile-time definitions for GSI
4#
5
Isaac Chenb9b51b12018-08-03 18:34:55 +00006# GSIs always use ext4.
SzuWei Line592c962018-07-12 17:40:00 +08007TARGET_USERIMAGES_USE_EXT4 := true
Isaac Chenb9b51b12018-08-03 18:34:55 +00008# GSIs are historically released in sparse format.
9# Some vendors' bootloaders don't work properly with raw format images. So
10# we explicit specify this need below (even though it's the current default).
11TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false
SzuWei Line592c962018-07-12 17:40:00 +080012
Bowgo Tsai6924b252018-09-11 19:19:05 +080013# Enable dynamic system image size and reserved 128MB in it.
14# Currently the reserve size includes verified boot metadata.
15# TODO: adjust to a smaller value if the reserved size is only for file system.
16BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 134217728
SzuWei Lin79bfba02018-07-18 18:06:25 +080017
Isaac Chen55e1d012018-06-11 12:52:22 +080018# Android Verified Boot (AVB):
Bowgo Tsai9d286382018-08-31 21:40:10 +080019# 1) Sets BOARD_AVB_ENABLE to sign the GSI image.
20# 2) Sets AVB_VBMETA_IMAGE_FLAGS_VERIFICATION_DISABLED (--flag 2) in
21# vbmeta.img to disable AVB verification.
22#
23# To disable AVB for GSI, use the vbmeta.img and the GSI together.
24# To enable AVB for GSI, include the GSI public key into the device-specific
25# vbmeta.img.
26BOARD_AVB_ENABLE := true
27BOARD_AVB_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
28BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flag 2
29
30# Enable chain partition for system.
31BOARD_AVB_SYSTEM_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem
32BOARD_AVB_SYSTEM_ALGORITHM := SHA256_RSA2048
33BOARD_AVB_SYSTEM_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
34BOARD_AVB_SYSTEM_ROLLBACK_INDEX_LOCATION := 1
Isaac Chen55e1d012018-06-11 12:52:22 +080035
36ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
37# GSI is always userdebug and needs a couple of properties taking precedence
38# over those set by the vendor.
39TARGET_SYSTEM_PROP := build/make/target/board/gsi_system.prop
40endif
41BOARD_VNDK_VERSION := current
42
SzuWei Line592c962018-07-12 17:40:00 +080043# system-as-root is mandatory from Android P
Isaac Chen55e1d012018-06-11 12:52:22 +080044TARGET_NO_RECOVERY := true
45BOARD_BUILD_SYSTEM_ROOT_IMAGE := true
SzuWei Linfa420b42018-07-02 18:41:07 +080046
SzuWei Line592c962018-07-12 17:40:00 +080047# 64 bits binder interface is mandatory from Android P
48TARGET_USES_64_BIT_BINDER := true
49
50# Android generic system image always create metadata partition
51BOARD_USES_METADATA_PARTITION := true
52
53# Set this to create /cache mount point for non-A/B devices that mounts /cache.
54# The partition size doesn't matter, just to make build pass.
55BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
56BOARD_CACHEIMAGE_PARTITION_SIZE := 16777216
57
SzuWei Linfa420b42018-07-02 18:41:07 +080058# Audio: must using XML format for Treblized devices
59USE_XML_AUDIO_POLICY_CONF := 1