284 lines
10 KiB
Makefile
284 lines
10 KiB
Makefile
#
|
|
# Copyright (C) 2021-2025 The LineageOS Project
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
COMMON_PATH := device/oneplus/sm8750-common
|
|
|
|
# A/B
|
|
AB_OTA_UPDATER := true
|
|
|
|
AB_OTA_PARTITIONS += \
|
|
boot \
|
|
dtbo \
|
|
init_boot \
|
|
odm \
|
|
product \
|
|
recovery \
|
|
system \
|
|
system_dlkm \
|
|
system_ext \
|
|
vbmeta \
|
|
vbmeta_system \
|
|
vbmeta_vendor \
|
|
vendor \
|
|
vendor_boot \
|
|
vendor_dlkm
|
|
|
|
# Architecture
|
|
TARGET_ARCH := arm64
|
|
TARGET_ARCH_VARIANT := armv8-2a-dotprod
|
|
TARGET_CPU_ABI := arm64-v8a
|
|
TARGET_CPU_VARIANT := generic
|
|
TARGET_CPU_VARIANT_RUNTIME := oryon
|
|
|
|
# Audio
|
|
AUDIO_FEATURE_ENABLED_DLKM := true
|
|
AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
|
|
AUDIO_FEATURE_ENABLED_GKI := true
|
|
AUDIO_FEATURE_ENABLED_INSTANCE_ID := true
|
|
AUDIO_FEATURE_ENABLED_MCS := true
|
|
AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true
|
|
BOARD_SUPPORTS_OPENSOURCE_STHAL := true
|
|
BOARD_SUPPORTS_SOUND_TRIGGER := true
|
|
BOARD_USES_ALSA_AUDIO := true
|
|
TARGET_PROVIDES_AUDIO_HAL := true
|
|
TARGET_PROVIDES_LIBAR_PAL := true
|
|
|
|
# Bootloader
|
|
TARGET_BOOTLOADER_BOARD_NAME := sun
|
|
|
|
# Boot
|
|
BOARD_BOOT_HEADER_VERSION := 4
|
|
BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION)
|
|
BOARD_RAMDISK_USE_LZ4 := true
|
|
|
|
# DTB / DTBO
|
|
BOARD_INCLUDE_DTB_IN_BOOTIMG := true
|
|
BOARD_USES_QCOM_MERGE_DTBS_SCRIPT := true
|
|
TARGET_NEEDS_DTBOIMAGE := true
|
|
|
|
# Properties
|
|
TARGET_ODM_PROP += $(COMMON_PATH)/odm.prop
|
|
TARGET_PRODUCT_PROP += $(COMMON_PATH)/product.prop
|
|
TARGET_SYSTEM_EXT_PROP += $(COMMON_PATH)/system_ext.prop
|
|
TARGET_VENDOR_PROP += $(COMMON_PATH)/vendor.prop
|
|
|
|
# Filesystem
|
|
TARGET_FS_CONFIG_GEN := $(COMMON_PATH)/config.fs
|
|
|
|
# Init Boot
|
|
BOARD_INIT_BOOT_HEADER_VERSION := 4
|
|
BOARD_MKBOOTIMG_INIT_ARGS += --header_version $(BOARD_INIT_BOOT_HEADER_VERSION)
|
|
|
|
# Kernel
|
|
BOARD_BOOTCONFIG := \
|
|
androidboot.hardware=qcom \
|
|
androidboot.hypervisor.protected_vm.supported=true \
|
|
androidboot.load_modules_parallel=true \
|
|
androidboot.memcg=1 \
|
|
androidboot.serialconsole=0 \
|
|
androidboot.usbcontroller=a600000.dwc3 \
|
|
androidboot.vendor.qspa=true
|
|
|
|
BOARD_KERNEL_CMDLINE := \
|
|
console=ttynull \
|
|
log_buf_len=2M \
|
|
nohugevmalloc \
|
|
nosoftlockup \
|
|
qcom_geni_serial.con_enabled=0 \
|
|
sysctl.kernel.firmware_config.force_sysfs_fallback=1
|
|
|
|
BOARD_USES_GENERIC_KERNEL_IMAGE := true
|
|
BOARD_KERNEL_BASE := 0x00000000
|
|
BOARD_KERNEL_PAGESIZE := 4096
|
|
BOARD_KERNEL_IMAGE_NAME := Image
|
|
|
|
TARGET_KERNEL_SOURCE := kernel/oneplus/sm8750
|
|
|
|
TARGET_KERNEL_ADDITIONAL_FLAGS := CONFIG_OPLUS_DEVICE_DTBS=y
|
|
TARGET_KERNEL_CONFIG := \
|
|
gki_defconfig \
|
|
vendor/sun_perf.config \
|
|
vendor/oplus/sun_perf.config
|
|
|
|
# Kernel modules
|
|
BOARD_SYSTEM_KERNEL_MODULES_LOAD := $(strip $(shell sed 's/#.*$$//;/^$$/d' $(COMMON_PATH)/modules.load.system_dlkm))
|
|
BOARD_VENDOR_KERNEL_MODULES_BLOCKLIST_FILE := $(TARGET_KERNEL_SOURCE)/modules.vendor_blocklist.msm.sun
|
|
BOARD_VENDOR_KERNEL_MODULES_LOAD := $(strip $(shell cat $(COMMON_PATH)/modules.load))
|
|
BOARD_VENDOR_RAMDISK_KERNEL_MODULES_BLOCKLIST_FILE := $(BOARD_VENDOR_KERNEL_MODULES_BLOCKLIST_FILE)
|
|
# qrtr-gunyah.ko is detected by depmod of build_utils.sh in kleaf
|
|
BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := \
|
|
$(strip $(shell sed 's/#.*$$//;/^$$/d' $(COMMON_PATH)/modules.list.msm.sun)) \
|
|
qrtr-gunyah.ko
|
|
BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD := $(strip $(shell cat $(COMMON_PATH)/modules.load.recovery))
|
|
BOOT_KERNEL_MODULES := $(BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD)
|
|
SYSTEM_KERNEL_MODULES := \
|
|
$(BOARD_SYSTEM_KERNEL_MODULES_LOAD) \
|
|
$(strip $(shell sed 's/#.*$$//;/^$$/d' $(COMMON_PATH)/modules.kunit))
|
|
|
|
TARGET_KERNEL_EXT_MODULE_ROOT := kernel/oneplus/sm8750-modules
|
|
TARGET_KERNEL_EXT_MODULES := \
|
|
oplus/kernel/device_info/oplus_fpga/fpga_monitor:kbuild \
|
|
qcom/opensource/mmrm-driver \
|
|
qcom/opensource/mm-drivers/hw_fence \
|
|
qcom/opensource/mm-drivers/msm_ext_display \
|
|
qcom/opensource/mm-drivers/sync_fence \
|
|
qcom/opensource/audio-kernel \
|
|
qcom/opensource/securemsm-kernel \
|
|
qcom/opensource/synx-kernel \
|
|
qcom/opensource/camera-kernel \
|
|
qcom/opensource/data-kernel/drivers/smem-mailbox \
|
|
qcom/opensource/datarmnet-ext/mem \
|
|
qcom/opensource/dataipa/drivers/platform/msm \
|
|
qcom/opensource/datarmnet/core \
|
|
qcom/opensource/datarmnet-ext/aps \
|
|
qcom/opensource/datarmnet-ext/offload \
|
|
qcom/opensource/datarmnet-ext/perf \
|
|
qcom/opensource/datarmnet-ext/perf_tether \
|
|
qcom/opensource/datarmnet-ext/sch \
|
|
qcom/opensource/datarmnet-ext/shs \
|
|
qcom/opensource/datarmnet-ext/wlan \
|
|
qcom/opensource/display-drivers/msm \
|
|
qcom/opensource/dsp-kernel \
|
|
qcom/opensource/eva-kernel \
|
|
qcom/opensource/graphics-kernel \
|
|
qcom/opensource/spu-kernel \
|
|
qcom/opensource/video-driver \
|
|
qcom/opensource/wlan/platform \
|
|
qcom/opensource/wlan/qcacld-3.0 \
|
|
qcom/opensource/bt-kernel \
|
|
nxp/opensource/driver
|
|
|
|
TARGET_KERNEL_EXT_MODULES += \
|
|
oplus/hardware/radio/kernel/mdmfeature:kbuild \
|
|
oplus/kernel/camera:kbuild \
|
|
oplus/kernel/cpu/thermal:kbuild \
|
|
oplus/kernel/device_info/cs_press:kbuild \
|
|
oplus/kernel/device_info/magnetic_cover:kbuild \
|
|
oplus/kernel/device_info/pogo_keyboard:kbuild \
|
|
oplus/kernel/device_info/tri_state_key:kbuild \
|
|
oplus/kernel/dfr:kbuild \
|
|
oplus/kernel/graphics:kbuild \
|
|
oplus/kernel/network/oplus_network_oem_qmi:kbuild \
|
|
oplus/kernel/network/oplus_network_esim:kbuild \
|
|
oplus/kernel/network/oplus_network_sim_detect:kbuild \
|
|
oplus/kernel/network/oplus_rf_cable_monitor:kbuild \
|
|
oplus/kernel/touchpanel/oplus_touchscreen_v2/touch_custom:kbuild \
|
|
oplus/kernel/touchpanel/oplus_touchscreen_v2:kbuild \
|
|
oplus/kernel/touchpanel/synaptics_hbp:kbuild \
|
|
oplus/kernel/tp/hbp/hbp:kbuild \
|
|
oplus/secure/biometrics/fingerprints/bsp/uff/driver:kbuild \
|
|
oplus/secure/common/bsp/drivers/oplus_secure_common \
|
|
oplus/sensor/kernel/oplus_consumer_ir:kbuild \
|
|
oplus/sensor/kernel/qcom/sensor:kbuild
|
|
|
|
# Platform
|
|
BOARD_USES_QCOM_HARDWARE := true
|
|
TARGET_BOARD_PLATFORM := sun
|
|
|
|
# Metadata
|
|
BOARD_USES_METADATA_PARTITION := true
|
|
|
|
# Partitions
|
|
BOARD_PRODUCTIMAGE_MINIMAL_PARTITION_RESERVED_SIZE := false
|
|
-include vendor/lineage/config/BoardConfigReservedSize.mk
|
|
BOARD_BOOTIMAGE_PARTITION_SIZE := 100663296
|
|
BOARD_DTBOIMG_PARTITION_SIZE := 25165824
|
|
BOARD_INIT_BOOT_IMAGE_PARTITION_SIZE := 8388608
|
|
BOARD_USERDATAIMAGE_PARTITION_SIZE := 233871900672
|
|
BOARD_VENDOR_BOOTIMAGE_PARTITION_SIZE := 100663296
|
|
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 104857600
|
|
BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_SYSTEM_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_ONEPLUS_DYNAMIC_PARTITIONS_PARTITION_LIST := odm product system system_dlkm system_ext vendor vendor_dlkm
|
|
BOARD_ONEPLUS_DYNAMIC_PARTITIONS_SIZE := $(shell echo $$(($(BOARD_SUPER_PARTITION_SIZE) - 4194304))) # (BOARD_SUPER_PARTITION_SIZE - "reasonable overhead of 4 MiB")
|
|
BOARD_SUPER_PARTITION_GROUPS := oneplus_dynamic_partitions
|
|
BOARD_FLASH_BLOCK_SIZE := 262144 # (BOARD_KERNEL_PAGESIZE * 64)
|
|
TARGET_COPY_OUT_ODM := odm
|
|
TARGET_COPY_OUT_PRODUCT := product
|
|
TARGET_COPY_OUT_SYSTEM_DLKM := system_dlkm
|
|
TARGET_COPY_OUT_SYSTEM_EXT := system_ext
|
|
TARGET_COPY_OUT_VENDOR := vendor
|
|
TARGET_COPY_OUT_VENDOR_DLKM := vendor_dlkm
|
|
|
|
# Recovery
|
|
BOARD_EXCLUDE_KERNEL_FROM_RECOVERY_IMAGE := true
|
|
TARGET_RECOVERY_FSTAB := $(COMMON_PATH)/init/fstab.default
|
|
TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888
|
|
TARGET_USERIMAGES_USE_EXT4 := true
|
|
TARGET_USERIMAGES_USE_F2FS := true
|
|
|
|
# RIL
|
|
ENABLE_VENDOR_RIL_SERVICE := true
|
|
|
|
# Security
|
|
BOOT_SECURITY_PATCH := 2025-10-01
|
|
VENDOR_SECURITY_PATCH := $(BOOT_SECURITY_PATCH)
|
|
|
|
# SEPolicy
|
|
include device/qcom/sepolicy_vndr/SEPolicy.mk
|
|
include hardware/oplus/sepolicy/qti/SEPolicy.mk
|
|
|
|
# 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_BOOT_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
|
|
BOARD_AVB_BOOT_ALGORITHM := SHA256_RSA4096
|
|
BOARD_AVB_BOOT_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_BOOT_ROLLBACK_INDEX_LOCATION := 4
|
|
|
|
BOARD_AVB_DTBO_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
|
|
BOARD_AVB_DTBO_ALGORITHM := SHA256_RSA4096
|
|
BOARD_AVB_DTBO_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_DTBO_ROLLBACK_INDEX_LOCATION := 3
|
|
|
|
BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
|
|
BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA4096
|
|
BOARD_AVB_RECOVERY_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1
|
|
|
|
BOARD_AVB_VBMETA_SYSTEM := system system_dlkm system_ext product
|
|
BOARD_AVB_VBMETA_SYSTEM_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
|
|
BOARD_AVB_VBMETA_SYSTEM_ALGORITHM := SHA256_RSA4096
|
|
BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX_LOCATION := 2
|
|
|
|
BOARD_AVB_VBMETA_VENDOR := odm vendor vendor_dlkm
|
|
BOARD_AVB_VBMETA_VENDOR_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
|
|
BOARD_AVB_VBMETA_VENDOR_ALGORITHM := SHA256_RSA4096
|
|
BOARD_AVB_VBMETA_VENDOR_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_VBMETA_VENDOR_ROLLBACK_INDEX_LOCATION := 5
|
|
|
|
BOARD_AVB_VENDOR_BOOT_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
|
|
BOARD_AVB_VENDOR_BOOT_ALGORITHM := SHA256_RSA4096
|
|
BOARD_AVB_VENDOR_BOOT_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_VENDOR_BOOT_ROLLBACK_INDEX_LOCATION := 6
|
|
|
|
# WiFi
|
|
BOARD_WLAN_DEVICE := qcwcn
|
|
BOARD_HOSTAPD_DRIVER := NL80211
|
|
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE)
|
|
BOARD_WPA_SUPPLICANT_DRIVER := $(BOARD_HOSTAPD_DRIVER)
|
|
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := $(BOARD_HOSTAPD_PRIVATE_LIB)
|
|
BOARD_WPA_SUPPLICANT_PRIVATE_LIB_EVENT := "ON"
|
|
WIFI_DRIVER_STATE_CTRL_PARAM := "/dev/wlan"
|
|
WIFI_DRIVER_STATE_OFF := "OFF"
|
|
WIFI_DRIVER_STATE_ON := "ON"
|
|
WIFI_FEATURE_HOSTAPD_11AX := true
|
|
WIFI_HIDL_FEATURE_AWARE := true
|
|
WIFI_HIDL_FEATURE_DUAL_INTERFACE := true
|
|
WIFI_HIDL_UNIFIED_SUPPLICANT_SERVICE_RC_ENTRY := true
|
|
WPA_SUPPLICANT_VERSION := VER_0_8_X
|
|
|
|
# Include the proprietary files BoardConfig.
|
|
include vendor/oneplus/sm8750-common/BoardConfigVendor.mk
|