diff options
Diffstat (limited to 'BoardConfigCommon.mk')
-rw-r--r-- | BoardConfigCommon.mk | 284 |
1 files changed, 284 insertions, 0 deletions
diff --git a/BoardConfigCommon.mk b/BoardConfigCommon.mk new file mode 100644 index 0000000..30304ac --- /dev/null +++ b/BoardConfigCommon.mk @@ -0,0 +1,284 @@ +# +# Copyright (C) 2018 The LineageOS Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# +# This file sets variables that control the way modules are built +# thorughout the system. It should not be used to conditionally +# disable makefiles (the proper mechanism to control what gets +# included in a build is to use PRODUCT_PACKAGES in a product +# definition file). +# + +COMMON_PATH := device/xiaomi/sdm660-common + +BOARD_VENDOR := xiaomi + +# Use Snapdragon LLVM, if available +TARGET_USE_SDCLANG := true + +# Bootloader +TARGET_BOOTLOADER_BOARD_NAME := sdm660 +TARGET_NO_BOOTLOADER := true + +# Platform +TARGET_BOARD_PLATFORM := sdm660 +TARGET_BOARD_PLATFORM_GPU := qcom-adreno512 + +# Architecture +TARGET_ARCH := arm64 +TARGET_ARCH_VARIANT := armv8-a +TARGET_CPU_ABI := arm64-v8a +TARGET_CPU_ABI2 := +TARGET_CPU_VARIANT := kryo + +TARGET_2ND_ARCH := arm +TARGET_2ND_ARCH_VARIANT := armv8-a +TARGET_2ND_CPU_ABI := armeabi-v7a +TARGET_2ND_CPU_ABI2 := armeabi +TARGET_2ND_CPU_VARIANT := kryo + +TARGET_USES_64_BIT_BINDER := true + +# Kernel +BOARD_KERNEL_CMDLINE := console=ttyMSM0,115200,n8 androidboot.console=ttyMSM0 earlycon=msm_serial_dm,0xc170000 androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x37 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 sched_enable_hmp=1 sched_enable_power_aware=1 service_locator.enable=1 swiotlb=1 androidboot.configfs=true androidboot.usbcontroller=a800000.dwc3 +BOARD_KERNEL_CMDLINE += firmware_class.path=/vendor/firmware_mnt/image +BOARD_KERNEL_CMDLINE += loop.max_part=7 +BOARD_KERNEL_BASE := 0x00000000 +BOARD_KERNEL_PAGESIZE := 4096 +BOARD_KERNEL_TAGS_OFFSET := 0x00000100 +BOARD_RAMDISK_OFFSET := 0x01000000 +BOARD_KERNEL_IMAGE_NAME := Image.gz-dtb +TARGET_KERNEL_ARCH := arm64 +TARGET_KERNEL_HEADER_ARCH := arm64 +TARGET_KERNEL_SOURCE := kernel/xiaomi/sdm660 +TARGET_KERNEL_CROSS_COMPILE_PREFIX := aarch64-linux-android- + +# QCOM hardware +BOARD_USES_QCOM_HARDWARE := true + +# ANT+ +BOARD_ANT_WIRELESS_DEVICE := "qualcomm-hidl" + +# Audio +BOARD_USES_ALSA_AUDIO := true +USE_CUSTOM_AUDIO_POLICY := 1 +USE_XML_AUDIO_POLICY_CONF := 1 +BOARD_SUPPORTS_SOUND_TRIGGER := true +AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE := false +AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := true +AUDIO_FEATURE_ENABLED_EXT_AMPLIFIER := false +AUDIO_FEATURE_ENABLED_EXT_HDMI := true +AUDIO_FEATURE_ENABLED_EXTN_FORMATS := true +AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER := true +AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := false +AUDIO_FEATURE_ENABLED_PCM_OFFLOAD := true +AUDIO_FEATURE_ENABLED_PCM_OFFLOAD_24 := true +AUDIO_FEATURE_ENABLED_FLAC_OFFLOAD := true +AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD := true +AUDIO_FEATURE_ENABLED_WMA_OFFLOAD := true +AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD := true +AUDIO_FEATURE_ENABLED_APE_OFFLOAD := true +AUDIO_FEATURE_ENABLED_AAC_ADTS_OFFLOAD := true +AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true +AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false +AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true +AUDIO_FEATURE_ENABLED_USB_TUNNEL_AUDIO := true +AUDIO_FEATURE_ENABLED_SPLIT_A2DP := true +AUDIO_FEATURE_ENABLED_3D_AUDIO := false +AUDIO_FEATURE_ENABLED_VBAT_MONITOR := true +AUDIO_FEATURE_ENABLED_ANC_HEADSET := true +AUDIO_FEATURE_ENABLED_CUSTOMSTEREO := true +AUDIO_FEATURE_ENABLED_FLUENCE := true +AUDIO_FEATURE_ENABLED_HDMI_EDID := true +AUDIO_FEATURE_ENABLED_HFP := true +AUDIO_FEATURE_ENABLED_INCALL_MUSIC := false +AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true +AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE := true +AUDIO_FEATURE_ENABLED_SPKR_PROTECTION := true +AUDIO_FEATURE_ENABLED_ACDB_LICENSE := true +AUDIO_FEATURE_ENABLED_DEV_ARBI := false +AUDIO_FEATURE_ENABLED_SOURCE_TRACKING := true +AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true +AUDIO_FEATURE_ENABLED_RAS := true +AUDIO_FEATURE_ENABLED_SND_MONITOR := true +AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := false +TARGET_USES_QCOM_MM_AUDIO := true +AUDIO_USE_LL_AS_PRIMARY_OUTPUT := true + +# Bluetooth +BOARD_HAVE_BLUETOOTH := true +BOARD_HAVE_BLUETOOTH_QCOM := true +BOARD_HAS_QCA_BT_SOC := "cherokee" +BLUETOOTH_HCI_USE_MCT := true +BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(COMMON_PATH)/bluetooth +QCOM_BT_USE_BTNV := true +QCOM_BT_USE_SMD_TTY := true + +# Camera +USE_DEVICE_SPECIFIC_CAMERA := true +TARGET_USES_QTI_CAMERA_DEVICE := true +TARGET_USES_QTI_CAMERA2CLIENT := true +BOARD_QTI_CAMERA_32BIT_ONLY := true +TARGET_USES_MEDIA_EXTENSIONS := true + +# Charger +BOARD_CHARGER_ENABLE_SUSPEND := true +BOARD_CHARGER_DISABLE_INIT_BLANK := true + +# CNE and DPM +BOARD_USES_QCNE := true + +# Crypto +TARGET_HW_DISK_ENCRYPTION := true + +# Display +TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS := true +TARGET_USES_HWC2 := true +TARGET_USES_GRALLOC1 := true +TARGET_USES_ION := true +TARGET_USES_NEW_ION_API :=true +TARGET_USES_OVERLAY := true +USE_OPENGL_RENDERER := true + +MAX_EGL_CACHE_KEY_SIZE := 12*1024 +MAX_EGL_CACHE_SIZE := 2048*1024 + +MAX_VIRTUAL_DISPLAY_DIMENSION := 4096 + +OVERRIDE_RS_DRIVER := libRSDriver_adreno.so + +VSYNC_EVENT_PHASE_OFFSET_NS := 2000000 +SF_VSYNC_EVENT_PHASE_OFFSET_NS := 6000000 + +# DRM +TARGET_ENABLE_MEDIADRM_64 := true + +# DT2W +TARGET_TAP_TO_WAKE_NODE := "/proc/nvt_wake_gesture" + +# Enable dexpreopt to speed boot time +ifeq ($(HOST_OS),linux) + ifneq ($(TARGET_BUILD_VARIANT),eng) + ifeq ($(WITH_DEXPREOPT),) + WITH_DEXPREOPT := true + WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY := true + endif + endif +endif + +# FM +AUDIO_FEATURE_ENABLED_FM_POWER_OPT := true +BOARD_HAS_QCA_FM_SOC := cherokee +BOARD_HAVE_QCOM_FM := true + +# GPS +TARGET_NO_RPC := true +USE_DEVICE_SPECIFIC_GPS := true +BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := $(TARGET_BOARD_PLATFORM) + +# HIDL +DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := $(COMMON_PATH)/vendor_framework_compatibility_matrix.xml +DEVICE_FRAMEWORK_MANIFEST_FILE := $(COMMON_PATH)/framework_manifest.xml +DEVICE_MANIFEST_FILE := $(COMMON_PATH)/manifest.xml +DEVICE_MATRIX_FILE := $(COMMON_PATH)/compatibility_matrix.xml + +# Init +TARGET_INIT_VENDOR_LIB := libinit_sdm660 +TARGET_PLATFORM_DEVICE_BASE := /devices/soc/ +TARGET_RECOVERY_DEVICE_MODULES := libinit_sdm660 + +# Keystore +TARGET_PROVIDES_KEYMASTER := true + +# Partitions +BOARD_FLASH_BLOCK_SIZE := 262144 +BOARD_BOOTIMAGE_PARTITION_SIZE := 67108864 +ifneq ($(AB_OTA_UPDATER), true) +BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_CACHEIMAGE_PARTITION_SIZE := 268435456 +endif +BOARD_RECOVERYIMAGE_PARTITION_SIZE := 67108864 +BOARD_SYSTEMIMAGE_PARTITION_TYPE := ext4 +BOARD_SYSTEMIMAGE_PARTITION_SIZE := 3221225472 +BOARD_VENDORIMAGE_PARTITION_SIZE := 2147483648 +BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4 + +TARGET_EXFAT_DRIVER := exfat + +BOARD_ROOT_EXTRA_SYMLINKS := \ + /vendor/dsp:/dsp \ + /vendor/firmware_mnt:/firmware \ + /vendor/bt_firmware:/bt_firmware + +TARGET_COPY_OUT_VENDOR := vendor +TARGET_USERIMAGES_USE_EXT4 := true + +TARGET_USES_MKE2FS := true + +TARGET_FS_CONFIG_GEN := $(COMMON_PATH)/config.fs + +# Peripheral manager +TARGET_PER_MGR_ENABLED := true + +# Power +TARGET_USES_INTERACTION_BOOST := true + +# Properties +BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true + +# Recovery +ifeq ($(AB_OTA_UPDATER), true) +TARGET_RECOVERY_FSTAB := $(COMMON_PATH)/rootdir/etc/fstab_AB.qcom +else +TARGET_RECOVERY_FSTAB := $(COMMON_PATH)/rootdir/etc/fstab.qcom +endif +BOARD_HAS_LARGE_FILESYSTEM := true + +# RIL +TARGET_PROVIDES_QTI_TELEPHONY_JAR := true +TARGET_RIL_VARIANT := caf +PROTOBUF_SUPPORTED := true + +# SELinux +include device/qcom/sepolicy/sepolicy.mk +BOARD_SEPOLICY_DIRS += $(COMMON_PATH)/sepolicy/vendor +BOARD_PLAT_PUBLIC_SEPOLICY_DIR += $(COMMON_PATH)/sepolicy/public +BOARD_PLAT_PRIVATE_SEPOLICY_DIR += $(COMMON_PATH)/sepolicy/private + +# Treble +PRODUCT_FULL_TREBLE_OVERRIDE := true +PRODUCT_VENDOR_MOVE_ENABLED := true + +# Timeservice +BOARD_USES_QC_TIME_SERVICES := true + +# Wifi +BOARD_HAS_QCOM_WLAN := true +BOARD_HAS_QCOM_WLAN_SDK := true +BOARD_WLAN_DEVICE := qcwcn +BOARD_HOSTAPD_DRIVER := NL80211 +BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE) +BOARD_WPA_SUPPLICANT_DRIVER := NL80211 +BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE) +WIFI_DRIVER_FW_PATH_AP := "ap" +WIFI_DRIVER_FW_PATH_STA := "sta" +WIFI_DRIVER_FW_PATH_P2P := "p2p" +WIFI_DRIVER_OPERSTATE_PATH := "/sys/class/net/wlan0/operstate" +WIFI_HIDL_FEATURE_DUAL_INTERFACE := true +WPA_SUPPLICANT_VERSION := VER_0_8_X + +# Inherit the proprietary files +-include vendor/xiaomi/sdm660-common/BoardConfigVendor.mk |