Running below command: $ cat /proc/cpuinfo | grep -m 1 Features Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 asimdfhm dit uscat ilrcpc flagm ssbs sb paca pacg dcpodp flagm2 frint i8mm bf16 bti armv8-a-branchprot doesn't really do justice as armv8-2a or armv9-a optimizations are not enabled. According to wikichip [1], it is evident that we support armv8-2a. [1] https://en.wikichip.org/wiki/arm/armv8#ARMv8_Extensions_and_Processor_Features Change-Id: Ia986a60febb275e36ffe89518edf8c4ae3fc7225 Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
220 lines
7.1 KiB
Makefile
220 lines
7.1 KiB
Makefile
#
|
|
# Copyright (C) 2023 The LineageOS Project
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
BUILD_BROKEN_DUP_RULES := true
|
|
BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
|
|
BUILD_BROKEN_INCORRECT_PARTITION_IMAGES := true
|
|
|
|
COMMON_PATH := device/samsung/sm8550-common
|
|
|
|
# Architecture
|
|
TARGET_ARCH := arm64
|
|
TARGET_ARCH_VARIANT := armv9-a
|
|
TARGET_CPU_ABI := arm64-v8a
|
|
TARGET_CPU_ABI2 :=
|
|
TARGET_CPU_VARIANT := generic
|
|
TARGET_CPU_VARIANT_RUNTIME := kryo300
|
|
|
|
TARGET_2ND_ARCH := arm
|
|
TARGET_2ND_ARCH_VARIANT := armv8-2a
|
|
TARGET_2ND_CPU_ABI := armeabi-v7a
|
|
TARGET_2ND_CPU_ABI2 := armeabi
|
|
TARGET_2ND_CPU_VARIANT := generic
|
|
TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a75
|
|
|
|
# Audio
|
|
AUDIO_FEATURE_ENABLED_DLKM := true
|
|
AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
|
|
AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true
|
|
AUDIO_FEATURE_ENABLED_GKI := true
|
|
AUDIO_FEATURE_ENABLED_INSTANCE_ID := true
|
|
AUDIO_FEATURE_ENABLED_AGM_HIDL := true
|
|
AUDIO_FEATURE_ENABLED_LSM_HIDL := true
|
|
AUDIO_FEATURE_ENABLED_PAL_HIDL := true
|
|
AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true
|
|
AUDIO_FEATURE_ENABLED_SSR := true
|
|
AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true
|
|
BOARD_SUPPORTS_OPENSOURCE_STHAL := true
|
|
BOARD_SUPPORTS_SOUND_TRIGGER := true
|
|
BOARD_USES_ALSA_AUDIO := true
|
|
TARGET_USES_QCOM_MM_AUDIO := true
|
|
|
|
# Boot
|
|
BOARD_BOOT_HEADER_VERSION := 4
|
|
BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION)
|
|
BOARD_RAMDISK_USE_LZ4 := true
|
|
|
|
# Bootloader
|
|
TARGET_BOOTLOADER_BOARD_NAME := kalama
|
|
|
|
# DTB / DTBO
|
|
BOARD_INCLUDE_DTB_IN_BOOTIMG := true
|
|
BOARD_USES_QCOM_MERGE_DTBS_SCRIPT := true
|
|
TARGET_NEEDS_DTBOIMAGE := true
|
|
|
|
# Filesystem
|
|
TARGET_FS_CONFIG_GEN := $(COMMON_PATH)/configs/config.fs
|
|
|
|
# HIDL
|
|
DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := \
|
|
$(COMMON_PATH)/vintf/device_framework_matrix.xml \
|
|
hardware/qcom-caf/common/vendor_framework_compatibility_matrix.xml
|
|
|
|
DEVICE_MANIFEST_FILE := \
|
|
$(COMMON_PATH)/vintf/manifest_kalama.xml \
|
|
$(COMMON_PATH)/vintf/manifest_samsung.xml \
|
|
$(COMMON_PATH)/vintf/radio_manifest.xml
|
|
|
|
DEVICE_MATRIX_FILE := hardware/qcom-caf/common/compatibility_matrix.xml
|
|
|
|
# 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.memcg=1 \
|
|
androidboot.selinux=permissive \
|
|
androidboot.usbcontroller=a600000.dwc3
|
|
|
|
BOARD_KERNEL_CMDLINE := \
|
|
printk.devkmsg=on \
|
|
firmware_class.path=/vendor/firmware_mnt/image \
|
|
video=vfb:640x400,bpp=32,memsize=3072000
|
|
|
|
BOARD_KERNEL_BASE := 0x00000000
|
|
BOARD_KERNEL_IMAGE_NAME := Image
|
|
BOARD_KERNEL_PAGESIZE := 4096
|
|
BOARD_USES_GENERIC_KERNEL_IMAGE := true
|
|
|
|
TARGET_KERNEL_SOURCE := kernel/samsung/sm8550
|
|
|
|
# Kernel modules
|
|
TARGET_KERNEL_EXT_MODULE_ROOT := kernel/samsung/sm8550-modules
|
|
|
|
# Metadata
|
|
BOARD_USES_METADATA_PARTITION := true
|
|
|
|
# Partitions
|
|
BOARD_BOOTIMAGE_PARTITION_SIZE := 100663296
|
|
BOARD_CACHEIMAGE_PARTITION_SIZE := 629145600
|
|
BOARD_DTBOIMG_PARTITION_SIZE := 16777216
|
|
BOARD_INIT_BOOT_IMAGE_PARTITION_SIZE := 8388608
|
|
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 109051904
|
|
BOARD_VENDOR_BOOTIMAGE_PARTITION_SIZE := 100663296
|
|
|
|
BOARD_ODMIMAGE_PARTITION_RESERVED_SIZE := 209715200
|
|
BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE := 209715200
|
|
BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 209715200
|
|
BOARD_SYSTEM_EXTIMAGE_PARTITION_RESERVED_SIZE := 209715200
|
|
BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE := 209715200
|
|
|
|
BOARD_SUPER_PARTITION_SIZE := 12664700928
|
|
BOARD_SUPER_PARTITION_GROUPS := samsung_dynamic_partitions
|
|
BOARD_SAMSUNG_DYNAMIC_PARTITIONS_PARTITION_LIST := odm product system system_dlkm system_ext vendor vendor_dlkm
|
|
BOARD_SAMSUNG_DYNAMIC_PARTITIONS_SIZE := 12660506624
|
|
|
|
BOARD_FLASH_BLOCK_SIZE := 262144 # (BOARD_KERNEL_PAGESIZE * 64)
|
|
|
|
BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_SYSTEM_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4
|
|
|
|
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
|
|
|
|
# Platform
|
|
BOARD_VENDOR := samsung
|
|
BOARD_USES_QCOM_HARDWARE := true
|
|
TARGET_BOARD_PLATFORM := kalama
|
|
|
|
# Properties
|
|
TARGET_VENDOR_PROP += $(COMMON_PATH)/vendor.prop
|
|
TARGET_PRODUCT_PROP += $(COMMON_PATH)/product.prop
|
|
TARGET_SYSTEM_EXT_PROP += $(COMMON_PATH)/system_ext.prop
|
|
TARGET_ODM_PROP += $(COMMON_PATH)/odm.prop
|
|
|
|
# Recovery
|
|
BOARD_HAS_DOWNLOAD_MODE := true
|
|
BOARD_INCLUDE_RECOVERY_DTBO := true
|
|
BOARD_RECOVERY_MKBOOTIMG_ARGS := --header_version 2
|
|
BOARD_USES_FULL_RECOVERY_IMAGE := true
|
|
TARGET_RECOVERY_FSTAB := $(COMMON_PATH)/init/fstab.qcom
|
|
TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888
|
|
TARGET_USERIMAGES_USE_EXT4 := true
|
|
TARGET_USERIMAGES_USE_F2FS := true
|
|
|
|
# Releasetools
|
|
TARGET_RELEASETOOLS_EXTENSIONS := $(COMMON_PATH)
|
|
|
|
# RIL
|
|
ENABLE_VENDOR_RIL_SERVICE := true
|
|
|
|
# Security
|
|
BOOT_SECURITY_PATCH := 2024-03-01
|
|
VENDOR_SECURITY_PATCH := $(BOOT_SECURITY_PATCH)
|
|
|
|
# SEPolicy
|
|
include device/qcom/sepolicy_vndr/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_ALGORITHM := SHA256_RSA4096
|
|
BOARD_AVB_BOOT_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
|
|
BOARD_AVB_BOOT_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_BOOT_ROLLBACK_INDEX_LOCATION := 3
|
|
|
|
BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA4096
|
|
BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
|
|
BOARD_AVB_RECOVERY_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1
|
|
|
|
BOARD_AVB_VBMETA_SYSTEM := odm product system system_dlkm system_ext vendor vendor_dlkm
|
|
BOARD_AVB_VBMETA_SYSTEM_ALGORITHM := SHA256_RSA4096
|
|
BOARD_AVB_VBMETA_SYSTEM_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
|
|
BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
|
|
BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX_LOCATION := 2
|
|
|
|
# Use sha256 hash algorithm for system_dlkm partition
|
|
BOARD_AVB_SYSTEM_DLKM_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256
|
|
BOARD_AVB_VENDOR_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256
|
|
BOARD_AVB_VENDOR_DLKM_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256
|
|
BOARD_AVB_ODM_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256
|
|
|
|
# Vibrator
|
|
#$(call soong_config_set,samsungVibratorVars,duration_amplitude,true)
|
|
|
|
# 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"
|
|
CONFIG_IEEE80211AX := true
|
|
WIFI_DRIVER_STATE_CTRL_PARAM := "/dev/wlan"
|
|
WIFI_DRIVER_STATE_OFF := "OFF"
|
|
WIFI_DRIVER_STATE_ON := "ON"
|
|
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/samsung/sm8550-common/BoardConfigVendor.mk
|