mirror of
https://github.com/Evolution-X-Devices/device_xiaomi_sky
synced 2026-02-01 09:40:11 +00:00
187 lines
6.3 KiB
Makefile
187 lines
6.3 KiB
Makefile
#
|
|
# Copyright (C) 2023 The Android Open Source Project
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
# Inherit from the proprietary version
|
|
-include vendor/xiaomi/sky/BoardConfigVendor.mk
|
|
|
|
DEVICE_PATH := device/xiaomi/sky
|
|
|
|
# A/B
|
|
AB_OTA_UPDATER := true
|
|
|
|
AB_OTA_PARTITIONS += \
|
|
boot \
|
|
dtbo \
|
|
odm \
|
|
product \
|
|
system \
|
|
system_ext \
|
|
vbmeta \
|
|
vbmeta_system \
|
|
vendor \
|
|
vendor_boot \
|
|
vendor_dlkm
|
|
|
|
# Architecture
|
|
TARGET_ARCH := arm64
|
|
TARGET_ARCH_VARIANT := armv8-a
|
|
TARGET_CPU_ABI := arm64-v8a
|
|
TARGET_CPU_ABI2 :=
|
|
TARGET_CPU_VARIANT := generic
|
|
|
|
TARGET_2ND_ARCH := arm
|
|
TARGET_2ND_ARCH_VARIANT := armv7-a-neon
|
|
TARGET_2ND_CPU_ABI := armeabi-v7a
|
|
TARGET_2ND_CPU_ABI2 := armeabi
|
|
TARGET_2ND_CPU_VARIANT := generic
|
|
|
|
# Boot control
|
|
SOONG_CONFIG_NAMESPACES += ufsbsg
|
|
SOONG_CONFIG_ufsbsg += ufsframework
|
|
SOONG_CONFIG_ufsbsg_ufsframework := bsg
|
|
|
|
# Bootloader
|
|
PRODUCT_PLATFORM := parrot
|
|
TARGET_BOOTLOADER_BOARD_NAME := sky
|
|
TARGET_NO_BOOTLOADER := false
|
|
TARGET_USES_REMOTEPROC := true
|
|
TARGET_NO_KERNEL := false
|
|
TARGET_USES_UEFI := true
|
|
TARGET_BOARD_INFO_FILE := $(DEVICE_PATH)/board-info.txt
|
|
|
|
# Build
|
|
BUILD_BROKEN_DUP_RULES := true
|
|
BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
|
|
|
|
# Display
|
|
TARGET_SCREEN_DENSITY := 396
|
|
|
|
# Fstab
|
|
PRODUCT_COPY_FILES += \
|
|
$(DEVICE_PATH)/rootdir/etc/fstab.default:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/first_stage_ramdisk/fstab.default
|
|
|
|
# Kernel
|
|
TARGET_KERNEL_ARCH := arm64
|
|
TARGET_KERNEL_HEADER_ARCH := arm64
|
|
|
|
BOARD_BOOT_HEADER_VERSION := 4
|
|
BOARD_MKBOOTIMG_ARGS := --header_version $(BOARD_BOOT_HEADER_VERSION)
|
|
|
|
TARGET_COMPILE_WITH_MSM_KERNEL := false
|
|
TARGET_FORCE_PREBUILT_KERNEL := true
|
|
BOARD_EXCLUDE_KERNEL_FROM_RECOVERY_IMAGE := true
|
|
BOARD_KERNEL_IMAGE_NAME := Image
|
|
BOARD_KERNEL_BASE := 0x00000000
|
|
BOARD_KERNEL_PAGESIZE := 4096
|
|
BOARD_KERNEL_TAGS_OFFSET := 0x01E00000
|
|
BOARD_RAMDISK_OFFSET := 0x02000000
|
|
|
|
BOARD_KERNEL_CMDLINE += androidboot.selinux=permissive
|
|
BOARD_KERNEL_CMDLINE := video=vfb:640x400,bpp=32,memsize=3072000 bootinfo.fingerprint=$(LINEAGE_VERSION) mtdoops.fingerprint=$(LINEAGE_VERSION)
|
|
BOARD_KERNEL_CMDLINE += firmware_class.path=/vendor/firmware
|
|
BOARD_KERNEL_CMDLINE += console=ttyMSM0,115200n8 earlycon msm_geni_serial.con_enabled=1 androidboot.selinux=permissive audit=0
|
|
BOARD_BOOTCONFIG := androidboot.hardware=qcom androidboot.memcg=1 androidboot.usbcontroller=a600000.dwc3
|
|
BOARD_BOOTCONFIG += androidboot.console=ttyMSM0
|
|
|
|
TARGET_PREBUILT_KERNEL := $(DEVICE_PATH)/prebuilts/kernel
|
|
BOARD_PREBUILT_DTBOIMAGE := $(DEVICE_PATH)/prebuilts/dtbo.img
|
|
|
|
# Metadata
|
|
BOARD_USES_METADATA_PARTITION := true
|
|
|
|
# Partitions
|
|
BOARD_FLASH_BLOCK_SIZE := 131072 # (BOARD_KERNEL_PAGESIZE * 64)
|
|
|
|
BOARD_DTBOIMG_PARTITION_SIZE := 24117248
|
|
BOARD_BOOTIMAGE_PARTITION_SIZE := 100663296
|
|
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 104857600
|
|
BOARD_VENDOR_BOOTIMAGE_PARTITION_SIZE := 100663296
|
|
|
|
BOARD_SUPER_PARTITION_SIZE := 9126805504
|
|
BOARD_SUPER_PARTITION_GROUPS := qti_dynamic_partitions
|
|
BOARD_QTI_DYNAMIC_PARTITIONS_PARTITION_LIST := odm product system system_ext vendor vendor_dlkm
|
|
BOARD_QTI_DYNAMIC_PARTITIONS_SIZE := 9122611200
|
|
|
|
BOARD_PARTITION_LIST := $(call to-upper, $(BOARD_QTI_DYNAMIC_PARTITIONS_PARTITION_LIST))
|
|
$(foreach p, $(BOARD_PARTITION_LIST), $(eval BOARD_$(p)IMAGE_FILE_SYSTEM_TYPE := ext4))
|
|
$(foreach p, $(BOARD_PARTITION_LIST), $(eval TARGET_COPY_OUT_$(p) := $(call to-lower, $(p))))
|
|
|
|
BOARD_PREBUILT_ODMIMAGE := $(DEVICE_PATH)/prebuilts/odm.img
|
|
BOARD_PREBUILT_VENDORIMAGE := $(DEVICE_PATH)/prebuilts/vendor.img
|
|
|
|
TARGET_COPY_OUT_ODM := odm
|
|
TARGET_COPY_OUT_PRODUCT := product
|
|
TARGET_COPY_OUT_SYSTEM_EXT := system_ext
|
|
TARGET_COPY_OUT_VENDOR := vendor
|
|
TARGET_COPY_OUT_VENDOR_DLKM := vendor_dlkm
|
|
|
|
TARGET_USERIMAGES_USE_F2FS := true
|
|
BOARD_USES_VENDOR_DLKMIMAGE := true
|
|
BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
|
|
|
|
# Platform
|
|
TARGET_BOARD_PLATFORM := parrot
|
|
TARGET_BOARD_PLATFORM_GPU := qcom-adreno613
|
|
QCOM_BOARD_PLATFORMS += parrot
|
|
BOARD_USES_QCOM_HARDWARE := true
|
|
|
|
# Properties
|
|
TARGET_PRODUCT_PROP += $(DEVICE_PATH)/configs/properties/product.prop
|
|
TARGET_SYSTEM_PROP += $(DEVICE_PATH)/configs/properties/system.prop
|
|
TARGET_SYSTEM_EXT_PROP += $(DEVICE_PATH)/configs/properties/system_ext.prop
|
|
|
|
# Recovery
|
|
TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888"
|
|
TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/rootdir/etc/fstab.default
|
|
BOARD_HAS_LARGE_FILESYSTEM := true
|
|
BOARD_USES_RECOVERY_AS_BOOT := false
|
|
BOARD_EXCLUDE_KERNEL_FROM_RECOVERY_IMAGE := true
|
|
BOARD_MOVE_RECOVERY_RESOURCES_TO_VENDOR_BOOT := false
|
|
|
|
# RIL
|
|
ENABLE_VENDOR_RIL_SERVICE := true
|
|
|
|
# Vendor boot
|
|
BOARD_VENDOR_RAMDISK_FRAGMENTS := dlkm
|
|
BOARD_VENDOR_RAMDISK_FRAGMENT.dlkm.KERNEL_MODULE_DIRS := top
|
|
BOARD_VENDOR_RAMDISK_KERNEL_MODULES := $(wildcard $(DEVICE_PATH)/prebuilts/modules/ramdisk/*.ko)
|
|
BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/prebuilts/modules/ramdisk/modules.load))
|
|
BOARD_VENDOR_RAMDISK_KERNEL_MODULES_BLOCKLIST_FILE := $(DEVICE_PATH)/prebuilts/modules/ramdisk/modules.blocklist
|
|
BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/prebuilts/modules/ramdisk/modules.load.recovery))
|
|
|
|
# Vendor_dlkm
|
|
BOARD_VENDOR_KERNEL_MODULES := $(wildcard $(DEVICE_PATH)/prebuilts/modules/vendor/*.ko)
|
|
BOARD_VENDOR_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/prebuilts/modules/vendor/modules.load))
|
|
BOARD_VENDOR_KERNEL_MODULES_BLOCKLIST_FILE := $(DEVICE_PATH)/prebuilts/modules/vendor/modules.blocklist
|
|
|
|
# Sepolicy
|
|
include device/qcom/sepolicy/SEPolicy.mk
|
|
|
|
SYSTEM_EXT_PRIVATE_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/private
|
|
SELINUX_IGNORE_NEVERALLOWS := true
|
|
|
|
# Verified Boot
|
|
BOARD_AVB_ENABLE := true
|
|
BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3
|
|
BOARD_MOVE_GSI_AVB_KEYS_TO_VENDOR_BOOT := true
|
|
|
|
BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem
|
|
BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA2048
|
|
BOARD_AVB_RECOVERY_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1
|
|
|
|
BOARD_AVB_VBMETA_SYSTEM := system system_ext product
|
|
BOARD_AVB_VBMETA_SYSTEM_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem
|
|
BOARD_AVB_VBMETA_SYSTEM_ALGORITHM := SHA256_RSA2048
|
|
BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX_LOCATION := 2
|
|
|
|
# VINTF
|
|
DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := $(DEVICE_PATH)/configs/vintf/compatibility_matrix.device.xml
|
|
|
|
# VNDK
|
|
BOARD_VNDK_VERSION := current
|