1 # config.mk 2 # 3 # Product-specific compile-time definitions 4 # 5 6 TARGET_BOARD_PLATFORM := msm8996 7 TARGET_BOOTLOADER_BOARD_NAME := sailfish 8 TARGET_BOARD_INFO_FILE := device/google/marlin/sailfish/board-info.txt 9 10 TARGET_USES_INTERACTION_BOOST := true 11 12 TARGET_USES_AOSP := true 13 TARGET_ARCH := arm64 14 TARGET_ARCH_VARIANT := armv8-a 15 TARGET_CPU_ABI := arm64-v8a 16 TARGET_CPU_ABI2 := 17 TARGET_CPU_VARIANT := kryo 18 19 TARGET_2ND_ARCH := arm 20 TARGET_2ND_ARCH_VARIANT := armv8-a 21 TARGET_2ND_CPU_ABI := armeabi-v7a 22 TARGET_2ND_CPU_ABI2 := armeabi 23 TARGET_2ND_CPU_VARIANT := kryo 24 25 TARGET_NO_BOOTLOADER := true 26 TARGET_NO_KERNEL := false 27 TARGET_NO_RECOVERY := true 28 TARGET_RECOVERY_FSTAB := device/google/marlin/fstab.common 29 BOARD_USES_RECOVERY_AS_BOOT := true 30 BOARD_BUILD_SYSTEM_ROOT_IMAGE := true 31 BOOTLOADER_GCC_VERSION := arm-eabi-4.8 32 # use msm8996 LK configuration 33 BOOTLOADER_PLATFORM := msm8996 34 35 TARGET_USES_OVERLAY := true 36 TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS := true 37 MAX_VIRTUAL_DISPLAY_DIMENSION := 4096 38 TARGET_USES_GRALLOC1 := true 39 TARGET_USES_HWC2 := true 40 VSYNC_EVENT_PHASE_OFFSET_NS := 2000000 41 SF_VSYNC_EVENT_PHASE_OFFSET_NS := 6000000 42 43 BOARD_USES_GENERIC_AUDIO := true 44 45 BOARD_USES_ALSA_AUDIO := true 46 AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true 47 AUDIO_FEATURE_ENABLED_SND_MONITOR := true 48 TARGET_USES_QCOM_MM_AUDIO := true 49 50 -include $(QCPATH)/common/msm8996/BoardConfigVendor.mk 51 52 TARGET_AUX_OS_VARIANT_LIST := sailfish 53 54 # Some framework code requires this to enable BT 55 BOARD_HAVE_BLUETOOTH := true 56 BOARD_USES_WIPOWER := true 57 BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := device/google/marlin/bluetooth 58 BOARD_HAVE_BLUETOOTH_QCOM := true 59 BOARD_USES_SDM845_BLUETOOTH_HAL := true 60 BOARD_HAS_QCA_BT_ROME := true 61 WCNSS_FILTER_USES_SIBS := true 62 63 BOARD_HAS_QCOM_WLAN := true 64 BOARD_WLAN_DEVICE := qcwcn 65 WPA_SUPPLICANT_VERSION := VER_0_8_X 66 BOARD_WPA_SUPPLICANT_DRIVER := NL80211 67 BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE) 68 BOARD_HOSTAPD_DRIVER := NL80211 69 BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE) 70 WIFI_DRIVER_FW_PATH_STA := "sta" 71 WIFI_DRIVER_FW_PATH_AP := "ap" 72 WIFI_HIDL_FEATURE_DISABLE_AP_MAC_RANDOMIZATION := true 73 74 USE_OPENGL_RENDERER := true 75 BOARD_USE_LEGACY_UI := true 76 NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3 77 OVERRIDE_RS_DRIVER:= libRSDriver_adreno.so 78 79 TARGET_USERIMAGES_USE_EXT4 := true 80 BOARD_BOOTIMAGE_PARTITION_SIZE := 0x02000000 81 BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2147483648 82 BOARD_SYSTEMIMAGE_EXTFS_INODE_COUNT := 4096 83 BOARD_USERDATAIMAGE_PARTITION_SIZE := 10737418240 84 BOARD_PERSISTIMAGE_PARTITION_SIZE := 33554432 85 BOARD_PERSISTIMAGE_FILE_SYSTEM_TYPE := ext4 86 BOARD_FLASH_BLOCK_SIZE := 131072 # (BOARD_KERNEL_PAGESIZE * 64) 87 BOARD_EXT4_SHARE_DUP_BLOCKS := true 88 89 TARGET_USES_ION := true 90 TARGET_USES_NEW_ION_API :=true 91 ifneq ($(TARGET_USES_AOSP),true) 92 TARGET_USES_QCOM_BSP := true 93 endif 94 95 BOARD_KERNEL_CMDLINE += console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=sailfish user_debug=31 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 cma=32M@0-0xffffffff loop.max_part=7 96 97 BOARD_ROOT_EXTRA_FOLDERS := firmware firmware/radio persist 98 BOARD_ROOT_EXTRA_SYMLINKS := /vendor/lib/dsp:/dsp 99 100 BOARD_SEPOLICY_DIRS += device/google/marlin/sepolicy 101 ifneq ($(filter sailfish sailfishf, $(TARGET_PRODUCT)),) 102 BOARD_SEPOLICY_DIRS += device/google/marlin/sepolicy/verizon 103 endif 104 BOARD_PLAT_PUBLIC_SEPOLICY_DIR := device/google/marlin/sepolicy/public 105 BOARD_PLAT_PRIVATE_SEPOLICY_DIR := device/google/marlin/sepolicy/private 106 107 TARGET_FS_CONFIG_GEN := device/google/marlin/config.fs 108 109 BOARD_EGL_CFG := device/google/marlin/egl.cfg 110 111 BOARD_KERNEL_BASE := 0x80000000 112 BOARD_KERNEL_PAGESIZE := 4096 113 ifneq ($(filter sailfish_kasan, $(TARGET_PRODUCT)),) 114 BOARD_KERNEL_OFFSET := 0x80000 115 BOARD_KERNEL_TAGS_OFFSET := 0x02500000 116 BOARD_RAMDISK_OFFSET := 0x02700000 117 BOARD_MKBOOTIMG_ARGS := --kernel_offset $(BOARD_KERNEL_OFFSET) --ramdisk_offset $(BOARD_RAMDISK_OFFSET) --tags_offset $(BOARD_KERNEL_TAGS_OFFSET) 118 else 119 BOARD_KERNEL_TAGS_OFFSET := 0x02000000 120 BOARD_RAMDISK_OFFSET := 0x02200000 121 endif 122 123 TARGET_KERNEL_ARCH := arm64 124 TARGET_KERNEL_HEADER_ARCH := arm64 125 TARGET_KERNEL_CROSS_COMPILE_PREFIX := aarch64-linux-android- 126 TARGET_USES_UNCOMPRESSED_KERNEL := false 127 128 MAX_EGL_CACHE_KEY_SIZE := 12*1024 129 MAX_EGL_CACHE_SIZE := 2048*1024 130 131 TARGET_NO_RPC := true 132 133 TARGET_PLATFORM_DEVICE_BASE := /devices/soc/ 134 135 #Let charger mode enter suspend 136 BOARD_CHARGER_ENABLE_SUSPEND := true 137 138 #Enable Peripheral Manager 139 TARGET_PER_MGR_ENABLED := true 140 141 #Enable HW based full disk encryption 142 # TODO: disable due to compile error due to mismatch with system/vold 143 # TARGET_HW_DISK_ENCRYPTION := true 144 145 #Enable SW based full disk encryption 146 TARGET_SWV8_DISK_ENCRYPTION := false 147 148 #Enable PD locater/notifier 149 TARGET_PD_SERVICE_ENABLED := true 150 151 BOARD_QTI_CAMERA_32BIT_ONLY := true 152 TARGET_BOOTIMG_SIGNED := true 153 154 # HTC_SENSOR_HUB 155 LIBHTC_SENSORHUB_PROJECT := g_project 156 157 #Enable/Disable Camera daemon 158 CAMERA_DAEMON_NOT_PRESENT := true 159 160 #TARGET_LDPRELOAD := libNimsWrap.so 161 162 # TARGET_COMPILE_WITH_MSM_KERNEL := true 163 164 TARGET_KERNEL_APPEND_DTB := true 165 # Added to indicate that protobuf-c is supported in this build 166 PROTOBUF_SUPPORTED := false 167 168 #Add NON-HLOS files for ota upgrade 169 ADD_RADIO_FILES := true 170 171 TARGET_RECOVERY_UI_LIB := librecovery_ui_nanohub libbootloader_message libfstab 172 173 #Add support for firmare upgrade on 8996 174 HAVE_SYNAPTICS_DSX_FW_UPGRADE := true 175 176 # Enable MDTP (Mobile Device Theft Protection) 177 TARGET_USE_MDTP := true 178 179 TARGET_BOARD_KERNEL_HEADERS := device/google/marlin/kernel-headers 180 181 # Install odex files into the other system image 182 BOARD_USES_SYSTEM_OTHER_ODEX := true 183 184 -include vendor/google_devices/marlin/BoardConfigVendor.mk 185 # Build a separate vendor.img 186 TARGET_COPY_OUT_VENDOR := vendor 187 188 #NFC 189 NXP_CHIP_TYPE := 3 190 191 # Testing related defines 192 BOARD_PERFSETUP_SCRIPT := platform_testing/scripts/perf-setup/sailin-setup.sh 193 194 # Use mke2fs to create ext4 images 195 TARGET_USES_MKE2FS := true 196 197 BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true 198 199 DEVICE_MANIFEST_FILE := device/google/marlin/manifest.xml 200 DEVICE_MATRIX_FILE := device/google/marlin/compatibility_matrix.xml 201 DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := device/google/marlin/device_framework_matrix.xml 202 203 # Exclude serif fonts for saving system.img size. 204 EXCLUDE_SERIF_FONTS := true 205 206 TARGET_FLATTEN_APEX := true 207