zenfone8: Start building vendor

Change-Id: Ifbf45bbee47f7cf16b6549445d22174c4b071f60
diff --git a/BoardConfig.mk b/BoardConfig.mk
index e494120..33baea8 100755
--- a/BoardConfig.mk
+++ b/BoardConfig.mk
@@ -19,7 +19,6 @@
 # product configuration (apps).
 #
 DEVICE_PATH := device/asus/zenfone8
-IMAGES_PATH := vendor/images/asus/zenfone8
 
 BOARD_VENDOR := asus
 
@@ -44,14 +43,14 @@
 TARGET_CPU_ABI := arm64-v8a
 TARGET_CPU_ABI2 :=
 TARGET_CPU_VARIANT := generic
-TARGET_CPU_VARIANT_RUNTIME := cortex-a7
+TARGET_CPU_VARIANT_RUNTIME := kryo385
 
 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 := generic
-TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a76
+TARGET_2ND_CPU_VARIANT_RUNTIME := kryo385
 
 # Bluetooth
 BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(DEVICE_PATH)/bluetooth
@@ -64,7 +63,7 @@
 BOARD_AVB_ENABLE := true
 BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --set_hashtree_disabled_flag
 BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 2
-BOARD_AVB_VBMETA_SYSTEM := system
+BOARD_AVB_VBMETA_SYSTEM := product system system_ext
 BOARD_AVB_VBMETA_SYSTEM_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem
 BOARD_AVB_VBMETA_SYSTEM_ALGORITHM := SHA256_RSA2048
 BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
@@ -84,6 +83,7 @@
 AUDIO_FEATURE_ENABLED_VOICE_CONCURRENCY := true
 
 # Broken flags
+BUILD_BROKEN_DUP_RULES := true
 BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
 BUILD_BROKEN_ENFORCE_SYSPROP_OWNER := true
 
@@ -99,6 +99,7 @@
 
 # Display
 TARGET_USES_HWC2 := true
+TARGET_SCREEN_DENSITY := 440
 
 # DRM
 TARGET_ENABLE_MEDIADRM_64 := true
@@ -114,10 +115,13 @@
 TARGET_SUPPORTS_64_BIT_APPS := true
 TARGET_USES_QCOM_BSP := false
 TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false
+BOARD_EXT4_SHARE_DUP_BLOCKS := true
 
 #HIDL
 DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE += $(DEVICE_PATH)/vendor_framework_compatibility_matrix.xml
 DEVICE_FRAMEWORK_MANIFEST_FILE += $(DEVICE_PATH)/framework_manifest.xml
+DEVICE_MANIFEST_FILE += $(DEVICE_PATH)/manifest_lahaina.xml
+DEVICE_MATRIX_FILE += $(DEVICE_PATH)/compatibility_matrix.xml
 
 # Kernel
 KERNEL_LD := LD=ld.lld
@@ -145,6 +149,107 @@
 KERNEL_TOOLCHAIN := $(shell pwd)/prebuilts/gas/$(HOST_PREBUILT_TAG)
 TARGET_KERNEL_CROSS_COMPILE_PREFIX := aarch64-linux-gnu-
 
+BOARD_VENDOR_KERNEL_MODULES_LOAD := \
+    adsp_loader_dlkm.ko \
+    apr_dlkm.ko \
+    aw8697.ko \
+    bolero_cdc_dlkm.ko \
+    bt_fm_slim.ko \
+    btpower.ko \
+    camera.ko \
+    cs35l45_i2c_dlkm.ko \
+    e4000.ko \
+    fc0011.ko \
+    fc0012.ko \
+    fc0013.ko \
+    fc2580.ko \
+    focaltech_fts_zf.ko \
+    gf_spi.ko \
+    hdmi_dlkm.ko \
+    hid-aksys.ko \
+    icm206xx.ko \
+    it913x.ko \
+    lid.ko \
+    lid_2.ko \
+    llcc_perfmon.ko \
+    m88rs6000t.ko \
+    machine_dlkm.ko \
+    max2165.ko \
+    mbhc_dlkm.ko \
+    mc44s803.ko \
+    msi001.ko \
+    msm_drm.ko \
+    mt2060.ko \
+    mt2063.ko \
+    mt20xx.ko \
+    mt2131.ko \
+    mt2266.ko \
+    mxl301rf.ko \
+    mxl5005s.ko \
+    mxl5007t.ko \
+    native_dlkm.ko \
+    pinctrl_lpi_dlkm.ko \
+    pinctrl_wcd_dlkm.ko \
+    platform_dlkm.ko \
+    q6_dlkm.ko \
+    q6_notifier_dlkm.ko \
+    q6_pdr_dlkm.ko \
+    qca_cld3_wlan.ko \
+    qcom_edac.ko \
+    qm1d1b0004.ko \
+    qm1d1c0042.ko \
+    qt1010.ko \
+    r820t.ko \
+    rdbg.ko \
+    rmnet_core.ko \
+    rmnet_ctl.ko \
+    rmnet_offload.ko \
+    rmnet_shs.ko \
+    rx_macro_dlkm.ko \
+    sensors_vcnl36866.ko \
+    si2157.ko \
+    sla.ko \
+    slimbus-ngd.ko \
+    slimbus.ko \
+    snd-soc-es928x.ko \
+    snd_event_dlkm.ko \
+    stub_dlkm.ko \
+    swr_ctrl_dlkm.ko \
+    swr_dlkm.ko \
+    swr_dmic_dlkm.ko \
+    swr_haptics_dlkm.ko \
+    sx932x_sake.ko \
+    tda18212.ko \
+    tda18218.ko \
+    tda18250.ko \
+    tda9887.ko \
+    tea5761.ko \
+    tea5767.ko \
+    tua9001.ko \
+    tuner-simple.ko \
+    tuner-types.ko \
+    tuner-xc2028.ko \
+    tx_macro_dlkm.ko \
+    va_macro_dlkm.ko \
+    wcd937x_dlkm.ko \
+    wcd937x_slave_dlkm.ko \
+    wcd938x_dlkm.ko \
+    wcd938x_slave_dlkm.ko \
+    wcd9xxx_dlkm.ko \
+    wcd_core_dlkm.ko \
+    wsa883x_dlkm.ko \
+    wsa_macro_dlkm.ko \
+    xc4000.ko \
+    xc5000.ko
+
+TARGET_MODULE_ALIASES += wlan.ko:qca_cld3_wlan.ko
+
+BOOT_KERNEL_MODULES := \
+    msm_drm.ko
+
+BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := \
+    msm_drm.ko
+
 # NFC
 TARGET_USES_NQ_NFC := true
 
@@ -162,8 +267,7 @@
 BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
 BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
 BOARD_BOOTIMAGE_PARTITION_SIZE := 100663296
-BOARD_KERNEL_BINARIES := kernel kernel-gki
-BOARD_KERNEL-GKI_BOOTIMAGE_PARTITION_SIZE := $(BOARD_BOOTIMAGE_PARTITION_SIZE)
+BOARD_KERNEL_BINARIES := kernel
 BOARD_VENDOR_BOOTIMAGE_PARTITION_SIZE := 100663296
 BOARD_DTBOIMG_PARTITION_SIZE := 25165824
 BOARD_USERDATAIMAGE_PARTITION_SIZE := 495457218560
@@ -173,8 +277,6 @@
 TARGET_COPY_OUT_PRODUCT := product
 TARGET_COPY_OUT_SYSTEM_EXT := system_ext
 TARGET_COPY_OUT_VENDOR := vendor
-BOARD_PREBUILT_ODMIMAGE := $(IMAGES_PATH)/odm.img
-BOARD_PREBUILT_VENDORIMAGE := $(IMAGES_PATH)/vendor.img
 
 BOARD_QTI_DYNAMIC_PARTITIONS_PARTITION_LIST := \
     system \
@@ -182,14 +284,15 @@
     odm \
     product \
     vendor
-BOARD_QTI_DYNAMIC_PARTITIONS_SIZE := 7511998464 # BOARD_SUPER_PARTITION_SIZE - 4MB
+
+BOARD_QTI_DYNAMIC_PARTITIONS_SIZE := 7512192768 # BOARD_SUPER_PARTITION_SIZE - 4MB
 BOARD_SUPER_PARTITION_GROUPS := qti_dynamic_partitions
 BOARD_SUPER_PARTITION_SIZE := 7516192768
 
-
 BOARD_ROOT_EXTRA_FOLDERS += ADF APD asdf batinfo
 
 # Platform
+QCOM_HARDWARE_VARIANT := sm8350
 TARGET_BOARD_PLATFORM := lahaina
 TARGET_BOARD_PLATFORM_GPU := qcom-adreno660
 
@@ -197,27 +300,21 @@
 TARGET_PRODUCT_PROP += $(DEVICE_PATH)/product.prop
 TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop
 TARGET_SYSTEM_EXT_PROP += $(DEVICE_PATH)/system_ext.prop
+TARGET_VENDOR_PROP += $(DEVICE_PATH)/vendor.prop
 
 # Recovery
 BOARD_USES_RECOVERY_AS_BOOT := true
 TARGET_NO_RECOVERY := true
 TARGET_USERIMAGES_USE_EXT4 := true
 TARGET_USERIMAGES_USE_F2FS := true
-TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/recovery.fstab
+TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/ramdisk/fstab.default
 TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888"
 TARGET_RECOVERY_UI_MARGIN_HEIGHT := 150
-BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
-BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA4096
-BOARD_AVB_RECOVERY_ROLLBACK_INDEX := 1
-BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1
+
+# Security patch level
+VENDOR_SECURITY_PATCH := 2021-11-05
 
 # Sepolicy
 include vendor/omni/sepolicy/sepolicy.mk
-include $(DEVICE_PATH)/sepolicy/SEPolicy.mk
-SYSTEM_EXT_PRIVATE_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/private \
-                                   $(DEVICE_PATH)/sepolicy/generic/private
-
-PRODUCT_PRIVATE_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/product/private
-
-# Treble
-BOARD_VNDK_VERSION := current
+include device/qcom/sepolicy_vndr/SEPolicy.mk
+BOARD_VENDOR_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/vendor