diff options
author | Steve Muckle <smuckle@google.com> | 2020-02-12 13:38:28 -0800 |
---|---|---|
committer | Steve Muckle <smuckle@google.com> | 2020-03-04 10:54:56 -0800 |
commit | 3363a0b8d66e52f1e8eacd983f661ac385a72e1a (patch) | |
tree | 81bfdb79104ed0b927bab12dfb50bf6a28706258 | |
parent | 6bf4a7d0be45b720dae92249aab72c58247e3e72 (diff) | |
download | build-3363a0b8d66e52f1e8eacd983f661ac385a72e1a.tar.gz |
initial GKI boot.img support
The GKI boot.img should be generated alongside the GSI. To make this
possible, define a flag (TARGET_NO_VENDOR_BOOT) that can be used to
disable the generation of the vendor_boot image.
Bug: 138323550
Change-Id: I91181853b26815e68a2fa2216b68579780d034dc
-rw-r--r-- | core/board_config.mk | 4 | ||||
-rw-r--r-- | target/board/generic_arm64/BoardConfig.mk | 8 | ||||
-rw-r--r-- | target/board/generic_arm64/device.mk | 10 | ||||
-rw-r--r-- | target/product/aosp_arm64.mk | 1 | ||||
-rw-r--r-- | target/product/sdk_phone_arm64.mk | 1 |
5 files changed, 22 insertions, 2 deletions
diff --git a/core/board_config.mk b/core/board_config.mk index 5d658dc1f4..4efe10a7fa 100644 --- a/core/board_config.mk +++ b/core/board_config.mk @@ -361,7 +361,9 @@ endif BUILDING_VENDOR_BOOT_IMAGE := ifdef BOARD_BOOT_HEADER_VERSION ifneq ($(call math_gt_or_eq,$(BOARD_BOOT_HEADER_VERSION),3),) - BUILDING_VENDOR_BOOT_IMAGE := true + ifneq ($(TARGET_NO_VENDOR_BOOT),true) + BUILDING_VENDOR_BOOT_IMAGE := true + endif ifdef BUILDING_RECOVERY_IMAGE ifneq ($(BOARD_USES_RECOVERY_AS_BOOT),true) $(error Boot header version >=3 requires recovery as boot) diff --git a/target/board/generic_arm64/BoardConfig.mk b/target/board/generic_arm64/BoardConfig.mk index f5caf7015e..8f30e6d4e2 100644 --- a/target/board/generic_arm64/BoardConfig.mk +++ b/target/board/generic_arm64/BoardConfig.mk @@ -55,8 +55,16 @@ endif include build/make/target/board/BoardConfigGsiCommon.mk include build/make/target/board/BoardConfigEmuCommon.mk +TARGET_NO_KERNEL := false +TARGET_NO_VENDOR_BOOT := true +BOARD_USES_RECOVERY_AS_BOOT := true + +BOARD_BOOTIMAGE_PARTITION_SIZE := 0x02000000 BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800 +BOARD_BOOT_HEADER_VERSION := 3 +BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION) + # Emulator system image is going to be used as GSI and some vendor still hasn't # cleaned up all device specific directories under root! diff --git a/target/board/generic_arm64/device.mk b/target/board/generic_arm64/device.mk index e5d8e61d02..4fcae46285 100644 --- a/target/board/generic_arm64/device.mk +++ b/target/board/generic_arm64/device.mk @@ -14,6 +14,16 @@ # limitations under the License. # +# Cuttlefish has GKI kernel prebuilts, so use those for the GKI boot.img. +ifeq ($(TARGET_PREBUILT_KERNEL),) + LOCAL_KERNEL := device/google/cuttlefish_kernel/5.4-arm64/kernel +else + LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL) +endif + +PRODUCT_COPY_FILES += \ + $(LOCAL_KERNEL):kernel + # Adjust the Dalvik heap to be appropriate for a tablet. $(call inherit-product-if-exists, frameworks/base/build/tablet-dalvik-heap.mk) $(call inherit-product-if-exists, frameworks/native/build/tablet-dalvik-heap.mk) diff --git a/target/product/aosp_arm64.mk b/target/product/aosp_arm64.mk index e133db4dbd..491397f2d4 100644 --- a/target/product/aosp_arm64.mk +++ b/target/product/aosp_arm64.mk @@ -53,7 +53,6 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_product.mk) # # All components inherited here go to vendor image # -$(call inherit-product-if-exists, device/generic/goldfish/arm64-vendor.mk) $(call inherit-product, $(SRC_TARGET_DIR)/product/emulator_vendor.mk) $(call inherit-product, $(SRC_TARGET_DIR)/board/generic_arm64/device.mk) diff --git a/target/product/sdk_phone_arm64.mk b/target/product/sdk_phone_arm64.mk index ad726333a7..9024890d2c 100644 --- a/target/product/sdk_phone_arm64.mk +++ b/target/product/sdk_phone_arm64.mk @@ -16,6 +16,7 @@ QEMU_USE_SYSTEM_EXT_PARTITIONS := true $(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_arm64.mk) +$(call inherit-product-if-exists, device/generic/goldfish/arm64-vendor.mk) # Define the host tools and libs that are parts of the SDK. $(call inherit-product, sdk/build/product_sdk.mk) |