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 18TARGET_USES_64_BIT_BINDER := true 19TARGET_SUPPORTS_64_BIT_APPS := true 20 21TARGET_BOARD_PLATFORM := yukawa 22 23# Vulkan 24BOARD_INSTALL_VULKAN := true 25 26# OpenCL 27BOARD_INSTALL_OPENCL := true 28 29# BT configs 30BOARD_HAVE_BLUETOOTH := true 31 32# generic wifi 33WPA_SUPPLICANT_VERSION := VER_0_8_X 34BOARD_WPA_SUPPLICANT_DRIVER := NL80211 35BOARD_HOSTAPD_DRIVER := NL80211 36 37# Treble 38PRODUCT_FULL_TREBLE_OVERRIDE := true 39BOARD_VNDK_VERSION := current 40 41# AVB 42ifeq ($(TARGET_AVB_ENABLE), true) 43BOARD_AVB_ENABLE := true 44else 45BOARD_AVB_ENABLE := false 46endif 47 48TARGET_NO_BOOTLOADER := true 49TARGET_NO_KERNEL := false 50 51ifeq ($(TARGET_USE_AB_SLOT), true) 52BOARD_USES_RECOVERY_AS_BOOT := true 53AB_OTA_UPDATER := true 54 55AB_OTA_PARTITIONS += \ 56 boot \ 57 system \ 58 vendor \ 59 vbmeta 60endif 61 62BOARD_BOOTIMAGE_PARTITION_SIZE := 33554432 63BOARD_DTBOIMG_PARTITION_SIZE := 8388608 # 8 MiB 64BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE := $(TARGET_RO_FILE_SYSTEM_TYPE) 65BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := $(TARGET_RO_FILE_SYSTEM_TYPE) 66TARGET_USERIMAGES_SPARSE_EROFS_DISABLED ?= true 67ifneq ($(TARGET_USE_AB_SLOT), true) 68BOARD_CACHEIMAGE_PARTITION_SIZE := 268435456 69BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4 70endif 71TARGET_USERIMAGES_USE_EXT4 := true 72TARGET_COPY_OUT_VENDOR := vendor 73 74# Super partition 75TARGET_USE_DYNAMIC_PARTITIONS := true 76BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT := true 77BOARD_SUPER_PARTITION_GROUPS := db_dynamic_partitions 78BOARD_DB_DYNAMIC_PARTITIONS_PARTITION_LIST := system vendor 79ifeq ($(TARGET_USE_AB_SLOT), true) 80BOARD_SUPER_PARTITION_SIZE := 4831838208 81else 82BOARD_SUPER_PARTITION_SIZE := 2415919104 83endif 84BOARD_DB_DYNAMIC_PARTITIONS_SIZE := 2411724800 # Reserve 4M for DAP metadata 85BOARD_SUPER_PARTITION_METADATA_DEVICE := super 86# BOARD_SUPER_IMAGE_IN_UPDATE_PACKAGE := true 87 88 89# Recovery 90TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888 91ifeq ($(TARGET_AVB_ENABLE), true) 92ifeq ($(TARGET_USE_AB_SLOT), true) 93TARGET_RECOVERY_FSTAB := device/amlogic/yukawa/fstab.yukawa.avb.ab 94else 95TARGET_RECOVERY_FSTAB := device/amlogic/yukawa/fstab.recovery.yukawa.avb 96BOARD_RECOVERYIMAGE_PARTITION_SIZE := 33554432 97endif 98BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem 99BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA2048 100BOARD_AVB_RECOVERY_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP) 101BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 2 102else 103ifeq ($(TARGET_USE_AB_SLOT), true) 104TARGET_RECOVERY_FSTAB := device/amlogic/yukawa/fstab.yukawa 105else 106TARGET_RECOVERY_FSTAB := device/amlogic/yukawa/fstab.recovery.yukawa 107BOARD_RECOVERYIMAGE_PARTITION_SIZE := 33554432 108endif 109endif 110 111 112BOARD_KERNEL_OFFSET := 0x1080000 113BOARD_KERNEL_TAGS_OFFSET := 0x1000000 114BOARD_INCLUDE_DTB_IN_BOOTIMG := true 115BOARD_MKBOOTIMG_ARGS := --kernel_offset $(BOARD_KERNEL_OFFSET) 116BOARD_BOOT_HEADER_VERSION := 2 117BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION) 118 119# Pass unsigned dtbo image (generated by build/tasks/dtimages.mk) to Android 120# build system for AVB signing 121DTBO_UNSIGNED := dtbo-unsigned.img 122# $(PRODUCT_OUT) hasn't been defined yet, so use "=" instead of ":=" 123# so that it is resolved later 124BOARD_PREBUILT_DTBOIMAGE = $(PRODUCT_OUT)/$(DTBO_UNSIGNED) 125 126 127BOARD_KERNEL_CMDLINE += no_console_suspend console=ttyAML0,115200 earlycon 128BOARD_KERNEL_CMDLINE += printk.devkmsg=on 129BOARD_KERNEL_CMDLINE += androidboot.boot_devices=soc/ffe07000.mmc 130BOARD_KERNEL_CMDLINE += init=/init 131BOARD_KERNEL_CMDLINE += firmware_class.path=/vendor/firmware 132BOARD_KERNEL_CMDLINE += androidboot.hardware=yukawa 133ifneq ($(TARGET_SELINUX_ENFORCE), true) 134BOARD_KERNEL_CMDLINE += androidboot.selinux=permissive 135endif 136ifeq ($(TARGET_BUILTIN_EDID), true) 137BOARD_KERNEL_CMDLINE += drm.edid_firmware=edid/1920x1080.bin 138endif 139ifneq ($(TARGET_SENSOR_MEZZANINE),) 140BOARD_KERNEL_CMDLINE += overlay_mgr.overlay_dt_entry=hardware_cfg_$(TARGET_SENSOR_MEZZANINE) 141endif 142ifneq ($(TARGET_MEM_SIZE),) 143BOARD_KERNEL_CMDLINE += mem=$(TARGET_MEM_SIZE) 144endif 145 146ifneq ($(TARGET_KERNEL_CFG),) 147BOARD_KERNEL_CMDLINE += $(TARGET_KERNEL_CFG) 148endif 149 150USE_E2FSPROGS := true 151 152BOARD_USES_GENERIC_AUDIO := false 153BOARD_USES_ALSA_AUDIO := true 154TARGET_USES_MKE2FS := true 155TARGET_USES_HWC2 := true 156BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := device/amlogic/yukawa/bluetooth 157 158BOARD_SEPOLICY_DIRS += \ 159 device/amlogic/yukawa/sepolicy 160 161DEVICE_MANIFEST_FILE += device/amlogic/yukawa/manifest.xml 162 163ifneq ($(TARGET_KERNEL_USE), 4.19) 164DEVICE_MANIFEST_FILE += device/amlogic/yukawa/manifest_kernel5.xml 165endif 166DEVICE_MATRIX_FILE := device/amlogic/yukawa/compatibility_matrix.xml 167 168ifneq ($(TARGET_SENSOR_MEZZANINE),) 169DEVICE_MANIFEST_FILE += device/amlogic/yukawa/sensorhal/manifest.xml 170endif 171 172# Generate an APEX image for experiment b/119800099. 173DEXPREOPT_GENERATE_APEX_IMAGE := true 174