blob: a0f43afbd87ea45b864ee78e2594ce12072e4a78 [file] [log] [blame]
Isaac Chen55e1d012018-06-11 12:52:22 +08001# BoardConfigGsiCommon.mk
2#
3# Common compile-time definitions for GSI
Anton Hansson40c47732018-11-22 15:39:10 +00004# Builds upon the mainline config.
Isaac Chen55e1d012018-06-11 12:52:22 +08005#
6
Anton Hansson40c47732018-11-22 15:39:10 +00007include build/make/target/board/BoardConfigMainlineCommon.mk
Anton Hansson284b81c2018-10-18 14:08:38 +01008
SzuWei Lin1457b3f2019-01-03 12:49:55 +08009# Enable system property split for Treble
10BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true
11
Anton Hansson40c47732018-11-22 15:39:10 +000012# This flag is set by mainline but isn't desired for GSI.
13BOARD_USES_SYSTEM_OTHER_ODEX :=
14
Isaac Chenb9b51b12018-08-03 18:34:55 +000015# GSIs are historically released in sparse format.
16# Some vendors' bootloaders don't work properly with raw format images. So
17# we explicit specify this need below (even though it's the current default).
18TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false
SzuWei Line592c962018-07-12 17:40:00 +080019
SzuWei Lin1457b3f2019-01-03 12:49:55 +080020# system.img is always ext4 with sparse option
21# GSI also includes make_f2fs to support userdata parition in f2fs
22# for some devices
23TARGET_USERIMAGES_USE_F2FS := true
24
Bowgo Tsai3ac95b52018-10-04 02:14:54 +000025# Enable dynamic system image size and reserved 64MB in it.
26BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 67108864
SzuWei Lin79bfba02018-07-18 18:06:25 +080027
Anton Hansson97915182018-12-06 18:25:32 +000028# GSI forces product packages to /system for now.
29TARGET_COPY_OUT_PRODUCT := system/product
Anton Hansson16831982019-03-22 14:10:19 +000030BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE :=
SzuWei Lin1457b3f2019-01-03 12:49:55 +080031
SzuWei Lina2d5ed12019-01-09 15:42:36 +080032# Creates metadata partition mount point under root for
33# the devices with metadata parition
34BOARD_USES_METADATA_PARTITION := true
35
Isaac Chen55e1d012018-06-11 12:52:22 +080036# Android Verified Boot (AVB):
Luca Stefani7c7b4b62019-02-10 19:47:41 +010037# Set AVB_VBMETA_IMAGE_FLAGS_VERIFICATION_DISABLED (--flags 2) in
Bowgo Tsaic1a8f1a2019-02-19 10:30:50 +080038# vbmeta.img to disable AVB verification. Also set the rollback index
39# to zero, to prevent the device bootloader from updating the last seen
40# rollback index in the tamper-evident storage.
Bowgo Tsai9d286382018-08-31 21:40:10 +080041#
42# To disable AVB for GSI, use the vbmeta.img and the GSI together.
43# To enable AVB for GSI, include the GSI public key into the device-specific
44# vbmeta.img.
Bowgo Tsaic1a8f1a2019-02-19 10:30:50 +080045BOARD_AVB_ROLLBACK_INDEX := 0
Luca Stefani7c7b4b62019-02-10 19:47:41 +010046BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 2
Bowgo Tsai9d286382018-08-31 21:40:10 +080047
48# Enable chain partition for system.
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
Isaac Chen55e1d012018-06-11 12:52:22 +080053
SzuWei Lina2d5ed12019-01-09 15:42:36 +080054# GSI specific System Properties
Isaac Chen55e1d012018-06-11 12:52:22 +080055ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
Isaac Chen55e1d012018-06-11 12:52:22 +080056TARGET_SYSTEM_PROP := build/make/target/board/gsi_system.prop
SzuWei Linfd6d2942019-02-15 14:18:35 +080057else
58TARGET_SYSTEM_PROP := build/make/target/board/gsi_system_user.prop
Isaac Chen55e1d012018-06-11 12:52:22 +080059endif
SzuWei Line592c962018-07-12 17:40:00 +080060
SzuWei Line592c962018-07-12 17:40:00 +080061# Set this to create /cache mount point for non-A/B devices that mounts /cache.
62# The partition size doesn't matter, just to make build pass.
63BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
64BOARD_CACHEIMAGE_PARTITION_SIZE := 16777216
Anton Hanssonac952ee2019-01-09 16:12:38 +000065
66# Disable 64 bit mediadrmserver
67TARGET_ENABLE_MEDIADRM_64 :=
Jiyong Parkc35a33e2019-02-11 21:42:57 +090068
69# Ordinary (non-flattened) APEX may require kernel changes. For maximum compatibility,
70# use flattened APEX for GSI
71TARGET_FLATTEN_APEX := true