1# 2# Product-specific compile-time definitions. 3# 4# The generic product target doesn't have any hardware-specific pieces. 5# Primary Arch 6TARGET_ARCH := arm64 7TARGET_ARCH_VARIANT := armv8-a 8TARGET_CPU_ABI := arm64-v8a 9TARGET_CPU_VARIANT := cortex-a53 10 11# Secondary Arch 12TARGET_2ND_ARCH := arm 13TARGET_2ND_ARCH_VARIANT := armv8-a 14TARGET_2ND_CPU_ABI := armeabi-v7a 15TARGET_2ND_CPU_ABI2 := armeabi 16TARGET_2ND_CPU_VARIANT := cortex-a53 17 18# 64 bit mediadrmserver 19TARGET_ENABLE_MEDIADRM_64 := true 20 21# Puts odex files on system_other, as well as causing dex files not to get 22# stripped from APKs. 23BOARD_USES_SYSTEM_OTHER_ODEX := true 24 25TARGET_BOARD_PLATFORM := yukawa 26TARGET_BOOTLOADER_BOARD_NAME := $(TARGET_DEV_BOARD) 27TARGET_BOARD_INFO_FILE := device/amlogic/yukawa/board-info/board-info-$(TARGET_DEV_BOARD).txt 28 29# Vulkan 30BOARD_INSTALL_VULKAN := true 31 32# OpenCL 33BOARD_INSTALL_OPENCL := true 34 35# BT configs 36BOARD_HAVE_BLUETOOTH := true 37 38# generic wifi 39WPA_SUPPLICANT_VERSION := VER_0_8_X 40BOARD_WPA_SUPPLICANT_DRIVER := NL80211 41BOARD_HOSTAPD_DRIVER := NL80211 42WIFI_HIDL_UNIFIED_SUPPLICANT_SERVICE_RC_ENTRY := true 43 44# Treble 45PRODUCT_FULL_TREBLE := true 46BOARD_VNDK_VERSION := current 47 48# AVB 49ifeq ($(TARGET_AVB_ENABLE), true) 50BOARD_AVB_ENABLE := true 51else 52BOARD_AVB_ENABLE := false 53endif 54 55TARGET_NO_BOOTLOADER := true 56TARGET_NO_KERNEL := false 57 58BOARD_USES_RECOVERY_AS_BOOT := true 59AB_OTA_UPDATER := true 60 61AB_OTA_PARTITIONS += \ 62 boot \ 63 dtbo \ 64 system \ 65 vendor 66 67ifeq ($(TARGET_AVB_ENABLE), true) 68AB_OTA_PARTITIONS += vbmeta 69endif 70BOARD_BOOTIMAGE_PARTITION_SIZE := $(shell echo $$(( 64 * 1024 * 1024 ))) 71BOARD_DTBOIMG_PARTITION_SIZE := $(shell echo $$(( 8 * 1024 * 1024 ))) # 8 MiB 72BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE := ext4 73BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4 74TARGET_COPY_OUT_VENDOR := vendor 75 76# Super partition 77TARGET_USE_DYNAMIC_PARTITIONS := true 78BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT := true 79BOARD_SUPER_PARTITION_GROUPS := db_dynamic_partitions 80BOARD_DB_DYNAMIC_PARTITIONS_PARTITION_LIST := system vendor 81BOARD_SUPER_PARTITION_SIZE := $(shell echo $$(( 4608 * 1024 * 1024 ))) 82BOARD_DB_DYNAMIC_PARTITIONS_SIZE := $(shell echo $$(( $(BOARD_SUPER_PARTITION_SIZE)/2 - (10 * 1024 * 1024) ))) # Reserve 10M for DAP metadata 83 84# Creates metadata partition mount point under root for 85# the devices with metadata partition 86BOARD_USES_METADATA_PARTITION := true 87 88# Userdata partition 89TARGET_COPY_OUT_DATA := data 90TARGET_USERIMAGES_USE_F2FS := true 91BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs 92BOARD_USERDATAIMAGE_PARTITION_SIZE := $(shell echo $$(( 2000 * 1024 * 1024 ))) 93TARGET_USERIMAGES_SPARSE_F2FS_DISABLED ?= false 94 95# Recovery 96TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888 97ifeq ($(TARGET_AVB_ENABLE), true) 98TARGET_RECOVERY_FSTAB := device/amlogic/yukawa/fstab.yukawa.avb.ab 99BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem 100BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA2048 101BOARD_AVB_RECOVERY_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP) 102BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 2 103else 104TARGET_RECOVERY_FSTAB := device/amlogic/yukawa/fstab.yukawa 105endif 106BOARD_INCLUDE_RECOVERY_DTBO := true 107 108 109BOARD_KERNEL_OFFSET := 0x1080000 110BOARD_KERNEL_TAGS_OFFSET := 0x1000000 111BOARD_RAMDISK_OFFSET := 0x4000000 112BOARD_INCLUDE_DTB_IN_BOOTIMG := true 113BOARD_MKBOOTIMG_ARGS := --kernel_offset $(BOARD_KERNEL_OFFSET) 114BOARD_MKBOOTIMG_ARGS += --ramdisk_offset $(BOARD_RAMDISK_OFFSET) 115BOARD_BOOT_HEADER_VERSION := 2 116BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION) 117 118# Pass unsigned dtbo image (generated by build/tasks/dtimages.mk) to Android 119# build system for AVB signing 120DTBO_UNSIGNED := dtbo-unsigned.img 121# $(PRODUCT_OUT) hasn't been defined yet, so use "=" instead of ":=" 122# so that it is resolved later 123BOARD_PREBUILT_DTBOIMAGE = $(PRODUCT_OUT)/$(DTBO_UNSIGNED) 124 125 126BOARD_KERNEL_CMDLINE += no_console_suspend console=ttyAML0,115200 earlycon 127BOARD_KERNEL_CMDLINE += printk.devkmsg=on 128BOARD_KERNEL_CMDLINE += androidboot.boot_devices=soc/ffe07000.mmc 129BOARD_KERNEL_CMDLINE += init=/init 130BOARD_KERNEL_CMDLINE += firmware_class.path=/vendor/firmware 131BOARD_KERNEL_CMDLINE += androidboot.hardware=yukawa 132ifneq ($(TARGET_SELINUX_ENFORCE), true) 133BOARD_KERNEL_CMDLINE += androidboot.selinux=permissive 134endif 135ifeq ($(TARGET_BUILTIN_EDID), true) 136BOARD_KERNEL_CMDLINE += drm.edid_firmware=edid/1920x1080.bin 137endif 138ifneq ($(TARGET_SENSOR_MEZZANINE),) 139BOARD_KERNEL_CMDLINE += overlay_mgr.overlay_dt_entry=hardware_cfg_$(TARGET_SENSOR_MEZZANINE) 140endif 141ifneq ($(TARGET_MEM_SIZE),) 142BOARD_KERNEL_CMDLINE += mem=$(TARGET_MEM_SIZE) 143endif 144 145ifneq ($(TARGET_KERNEL_CFG),) 146BOARD_KERNEL_CMDLINE += $(TARGET_KERNEL_CFG) 147endif 148 149BOARD_USES_GENERIC_AUDIO := false 150BOARD_USES_ALSA_AUDIO := true 151 152BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := build/make/target/board/mainline_arm64/bluetooth 153 154BOARD_VENDOR_SEPOLICY_DIRS += \ 155 device/amlogic/yukawa/sepolicy 156 157DEVICE_MANIFEST_FILE += device/amlogic/yukawa/manifest.xml 158 159DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/amlogic/yukawa/framework_compatibility_matrix.xml 160ifneq ($(TARGET_USE_TABLET_LAUNCHER), true) 161DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/amlogic/yukawa/tv_framework_compatibility_matrix.xml 162endif 163 164ifneq ($(TARGET_SENSOR_MEZZANINE),) 165DEVICE_MANIFEST_FILE += device/amlogic/yukawa/sensorhal/manifest.xml 166endif 167 168# Generate an APEX image for experiment b/119800099. 169DEXPREOPT_GENERATE_APEX_IMAGE := true 170 171# Disable Jack build system due deprecated status (https://source.android.com/source/jack) 172ANDROID_COMPILE_WITH_JACK ?= false 173 174# Enable system property split for Treble 175BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true 176 177# Include stats logging code in LMKD 178TARGET_LMKD_STATS_LOG := true 179