Merge changes from topic "resizable_ota"

* changes:
  Add _b to super.
  Create build-superimage-target.
This commit is contained in:
Yifan Hong
2018-08-24 23:03:22 +00:00
committed by Gerrit Code Review

View File

@@ -2829,32 +2829,36 @@ $(INSTALLED_SUPERIMAGE_TARGET): $(call images-for-partitions,$(BOARD_SUPER_PARTI
# bootloader fastboot should always mark _a slot as bootable. # bootloader fastboot should always mark _a slot as bootable.
ifeq ($(AB_OTA_UPDATER),true) ifeq ($(AB_OTA_UPDATER),true)
$(INSTALLED_SUPERIMAGE_TARGET) $(INSTALLED_SUPERIMAGE_EMPTY_TARGET): PRIVATE_PARTITION_SUFFIX=_a $(INSTALLED_SUPERIMAGE_TARGET) $(INSTALLED_SUPERIMAGE_EMPTY_TARGET): PRIVATE_PARTITION_SUFFIX=_a
$(INSTALLED_SUPERIMAGE_TARGET) $(INSTALLED_SUPERIMAGE_EMPTY_TARGET): PRIVATE_METADATA_SLOTS=2
else
$(INSTALLED_SUPERIMAGE_TARGET) $(INSTALLED_SUPERIMAGE_EMPTY_TARGET): PRIVATE_METADATA_SLOTS=1
endif # AB_OTA_UPDATER endif # AB_OTA_UPDATER
$(INSTALLED_SUPERIMAGE_TARGET): $(HOST_OUT_EXECUTABLES)/lpmake $(INSTALLED_SUPERIMAGE_TARGET) $(INSTALLED_SUPERIMAGE_EMPTY_TARGET): $(HOST_OUT_EXECUTABLES)/lpmake
$< \
--sparse \ # $(1): output image path
# $(2): slot A suffix (_a or empty)
# $(3): include images or not (true or empty)
define build-superimage-target
$(HOST_OUT_EXECUTABLES)/lpmake \
$(if $(3), --sparse) \
--metadata-size 65536 \ --metadata-size 65536 \
--metadata-slots $(PRIVATE_METADATA_SLOTS) \ --metadata-slots $(if $(2),2,1) \
--device-size $(BOARD_SUPER_PARTITION_SIZE) \ --device-size $(BOARD_SUPER_PARTITION_SIZE) \
--output $@ \ --output $(1) \
$(foreach name,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \ $(foreach name,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \
--partition $(name)$(PRIVATE_PARTITION_SUFFIX):$$($(UUIDGEN) $(name)$(PRIVATE_PARTITION_SUFFIX)):readonly:$(call read-size-of-partitions,$(name)) \ --partition $(name)$(2):$$($(UUIDGEN) $(name)$(2)):readonly:$(if $(3),$(call read-size-of-partitions,$(name)),0) \
--image $(name)$(PRIVATE_PARTITION_SUFFIX)=$(call images-for-partitions,$(name))) $(if $(3), --image $(name)$(2)=$(call images-for-partitions,$(name))) \
$(if $(2), --partition $(name)_b:$$($(UUIDGEN) $(name)_b):readonly:0) \
)
endef
$(INSTALLED_SUPERIMAGE_TARGET):
$(call pretty,"Target super fs image: $@")
$(call build-superimage-target,$@,$(PRIVATE_PARTITION_SUFFIX),true)
$(call dist-for-goals,dist_files,$(INSTALLED_SUPERIMAGE_TARGET)) $(call dist-for-goals,dist_files,$(INSTALLED_SUPERIMAGE_TARGET))
$(INSTALLED_SUPERIMAGE_EMPTY_TARGET): $(HOST_OUT_EXECUTABLES)/lpmake $(INSTALLED_SUPERIMAGE_EMPTY_TARGET):
$< \ $(call pretty,"Target empty super fs image: $@")
--metadata-size 65536 \ $(call build-superimage-target,$@,$(PRIVATE_PARTITION_SUFFIX))
--metadata-slots $(PRIVATE_METADATA_SLOTS) \
--device-size $(BOARD_SUPER_PARTITION_SIZE) \
--output $@ \
$(foreach name,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \
--partition $(name)$(PRIVATE_PARTITION_SUFFIX):$$($(UUIDGEN) $(name)$(PRIVATE_SUPER_PARTITION_SUFFIX)):readonly:0)
$(call dist-for-goals,dist_files,$(INSTALLED_SUPERIMAGE_EMPTY_TARGET)) $(call dist-for-goals,dist_files,$(INSTALLED_SUPERIMAGE_EMPTY_TARGET))