Add build flags for spanning the super partition across multiple block devices.

This adds BOARD_SUPER_PARTITION_BLOCK_DEVICES, which must contain a list
of the (non-A/B suffixed) partitions that will comprise the super
partition. It is only intended for devices which cannot have a partition
named "super". For each entry, there must be a
BOARD_SUPER_PARTITION_x_DEVICE_SIZE variable defined with the exact size
of that partition (not its image size). The sum of these sizes must be
equal to BOARD_SUPER_PARTITION_SIZE.

Bug: 116802789
Test: device with BOARD_SUPER_PARTITION_BLOCK_DEVICES builds
Change-Id: I1a79c2e08ca99ce7e42207893ef3285caffecf44
This commit is contained in:
David Anderson
2018-10-30 18:47:59 -07:00
committed by Yifan Hong
parent c5c0124e7d
commit 619fe2da5a
5 changed files with 109 additions and 21 deletions

View File

@@ -514,10 +514,20 @@ PRODUCT_ACTIONABLE_COMPATIBLE_PROPERTY_DISABLE := \
$(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_ACTIONABLE_COMPATIBLE_PROPERTY_DISABLE))
# Dynamic partition feature flags.
# When this is true, dynamic partitions is retrofitted on a device that has
# already been launched without dynamic partitions. Otherwise, the device
# is launched with dynamic partitions.
# This flag implies PRODUCT_USE_DYNAMIC_PARTITIONS.
PRODUCT_RETROFIT_DYNAMIC_PARTITIONS := \
$(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_RETROFIT_DYNAMIC_PARTITIONS))
.KATI_READONLY := PRODUCT_RETROFIT_DYNAMIC_PARTITIONS
# TODO(b/119286600): remove PRODUCT_USE_LOGICAL_PARTITIONS
PRODUCT_USE_DYNAMIC_PARTITIONS := $(or \
$(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_USE_DYNAMIC_PARTITIONS)), \
$(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_USE_LOGICAL_PARTITIONS)))
$(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_USE_LOGICAL_PARTITIONS)), \
$(PRODUCT_RETROFIT_DYNAMIC_PARTITIONS))
.KATI_READONLY := PRODUCT_USE_DYNAMIC_PARTITIONS
# All requirements of PRODUCT_USE_DYNAMIC_PARTITIONS falls back to