android_recovery_motorola_s.../device.mk

121 lines
7.9 KiB
Makefile

DEVICE_PATH := device/motorola/sycamore_row_5G
PRODUCT_USE_DYNAMIC_PARTITIONS := true
ENABLE_VIRTUAL_AB := true
# This is the exact list exposed by ro.product.ab_ota_partitions on the live build.
AB_OTA_PARTITIONS := \
init_boot \
product \
system \
system_ext \
vendor
PRODUCT_SOONG_NAMESPACES += $(DEVICE_PATH)
# fastbootd uses the HIDL fastboot HAL for optional vendor-specific commands.
# This device has no recovery-side OEM implementation, so package AOSP's 1.1
# passthrough stub while keeping the generic fastbootd logical-partition path.
PRODUCT_PACKAGES += \
android.hardware.fastboot@1.1-impl-mock \
sycamore_boot_hal_stock_libbase
# Let TWRP publish ro.crypto.state/type when it detects /data FBE.
# Stock teei_daemon begins polling before ro.crypto.type=file appears; Beanpod
# establishes its persistent KeyMint session first, then the daemon observes
# the late FBE transition and signals boot_decrypt_lock.
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
ro.product.device=XT2575-4
ifeq ($(strip $(DUALBOOT)),Y)
SYCA_RECOVERY_FSTAB := $(DEVICE_PATH)/recovery-dualboot.fstab
else
SYCA_RECOVERY_FSTAB := $(DEVICE_PATH)/recovery.fstab
endif
PRODUCT_COPY_FILES += \
$(SYCA_RECOVERY_FSTAB):$(TARGET_COPY_OUT_RECOVERY)/root/system/etc/recovery.fstab \
$(DEVICE_PATH)/recovery/root/init.recovery.mt6835.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.mt6835.rc \
$(DEVICE_PATH)/recovery/root/init.recovery.mt8755.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.mt8755.rc \
$(DEVICE_PATH)/recovery/root/init.recovery.crypto.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.crypto.rc \
$(DEVICE_PATH)/recovery/root/system/etc/vintf/manifest.xml:$(TARGET_COPY_OUT_RECOVERY)/root/system/etc/vintf/manifest.xml \
$(DEVICE_PATH)/recovery/root/system/etc/vintf/manifest/android.hardware.health-service.example.xml:$(TARGET_COPY_OUT_RECOVERY)/root/system/etc/vintf/manifest/android.hardware.health-service.example.xml \
$(DEVICE_PATH)/recovery/root/vendor/manifest.xml:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/manifest.xml \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/0102030405060708090a0b0c0d0e0f10.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/0102030405060708090a0b0c0d0e0f10.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/020f0000000000000000000000000000.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/020f0000000000000000000000000000.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/06090000000000000000000000000000.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/06090000000000000000000000000000.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/08030000000000000000000000000000.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/08030000000000000000000000000000.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/08110000000000000000000000000000.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/08110000000000000000000000000000.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/40188311faf343488db888ad39496f9a.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/40188311faf343488db888ad39496f9a.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/5020170115e016302017012521300000.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/5020170115e016302017012521300000.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/5f7a5b3b29b041bca249524a031a00e3.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/5f7a5b3b29b041bca249524a031a00e3.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/8888c04fc30c4dd0a319ea29643d4d4c.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/8888c04fc30c4dd0a319ea29643d4d4c.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/abcd270ea5c44c58bcd3384a2fa2539e.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/abcd270ea5c44c58bcd3384a2fa2539e.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/c09c9c5daa504b78b0e46eda61556c3a.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/c09c9c5daa504b78b0e46eda61556c3a.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/c1882f2d885e4e13a8c8e2622461b2fa.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/c1882f2d885e4e13a8c8e2622461b2fa.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/d91f322ad5a441d5955110eda3272fc0.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/d91f322ad5a441d5955110eda3272fc0.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/e97c270ea5c44c58bcd3384a2fa2539e.ta:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/e97c270ea5c44c58bcd3384a2fa2539e.ta \
$(DEVICE_PATH)/recovery/root/vendor/thh/ta/isee_model.json:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/thh/ta/isee_model.json \
$(DEVICE_PATH)/recovery/root/vendor/etc/vintf/manifest/android.hardware.security.keymint-service.beanpod.xml:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/etc/vintf/manifest/android.hardware.security.keymint-service.beanpod.xml \
$(DEVICE_PATH)/recovery/root/vendor/etc/vintf/manifest/android.hardware.security.secureclock-service.beanpod.xml:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/etc/vintf/manifest/android.hardware.security.secureclock-service.beanpod.xml \
$(DEVICE_PATH)/recovery/root/vendor/etc/vintf/manifest/android.hardware.security.sharedsecret-service.beanpod.xml:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/etc/vintf/manifest/android.hardware.security.sharedsecret-service.beanpod.xml \
$(DEVICE_PATH)/recovery/root/vendor/etc/vintf/manifest/android.hardware.gatekeeper@1.0-service.xml:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/etc/vintf/manifest/android.hardware.gatekeeper@1.0-service.xml
PRODUCT_PACKAGES += \
sycamore_gatekeeper_impl \
sycamore_gatekeeper_hidl \
sycamore_gatekeeper_service \
sycamore_gatekeeper_soft \
sycamore_gatekeeper_tee \
sycamore_keymint_ndk_v2 \
sycamore_keymint_private_utils \
sycamore_keymaster_messages \
sycamore_keymaster_portable \
sycamore_keymint_private \
sycamore_puresoft_keymaster \
sycamore_soft_attestation \
sycamore_cppbor_external \
sycamore_cppcose_rkp \
sycamore_keymint_service \
sycamore_secureclock_ndk_v1 \
sycamore_sharedsecret_ndk_v1 \
sycamore_tee_common \
sycamore_tee_imsg_log \
sycamore_tee_vfs \
sycamore_teei_daemon \
PRODUCT_VENDOR_PROPERTIES += \
ro.vendor.mtk_ufs_support=1 \
ro.vendor.mtk_boot_devices=soc/112b0000.ufshci \
ro.hardware.gatekeeper=beanpod \
ro.crypto.volume.filenames_mode=aes-256-cts
# Sycamore BootControl HAL compatibility shim.
PRODUCT_COPY_FILES += \
$(DEVICE_PATH)/recovery/root/system/etc/init/zz_sycamore_boot_hal.rc:$(TARGET_COPY_OUT_RECOVERY)/root/system/etc/init/zz_sycamore_boot_hal.rc \
$(DEVICE_PATH)/recovery/root/system/etc/init/zz_sycamore_servicemanager.rc:$(TARGET_COPY_OUT_RECOVERY)/root/system/etc/init/zz_sycamore_servicemanager.rc
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/recovery/root/system/etc/init/zz_sycamore_hwservicemanager.rc:$(TARGET_COPY_OUT_RECOVERY)/root/system/etc/init/zz_sycamore_hwservicemanager.rc
# Device-side Keystore2 database staging for Android 16 FBE.
PRODUCT_COPY_FILES += \
$(DEVICE_PATH)/recovery/root/system/bin/sycamore_keystore2_stage.sh:$(TARGET_COPY_OUT_RECOVERY)/root/system/bin/sycamore_keystore2_stage.sh
# Stock MT8755 generic ADC thermal provider.
# Recovery needs this for charger/flash/wifi/USB/board NTC thermal zones;
# keep it outside /lib/modules so the pristine PLATFORM module tree and
# its stock module metadata remain untouched.
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/recovery/root/thermal-modules/thermal-generic-adc.ko:$(TARGET_COPY_OUT_RECOVERY)/root/thermal-modules/thermal-generic-adc.ko
# Android packed timezone database for recovery Bionic.
# Without this, libc emits __bionic_open_tzdata warnings whenever
# recovery formats local timestamps.
PRODUCT_COPY_FILES += \
system/timezone/output_data/iana/tzdata:$(TARGET_COPY_OUT_RECOVERY)/root/system/usr/share/zoneinfo/tzdata
# Stock MT8755 / MT6377 TIA NTC thermal provider.
# Restores ap_ntc, ltepa_ntc, nrpa_ntc, and tsx_ntc in recovery.
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/recovery/root/thermal-modules/board_temp.ko:$(TARGET_COPY_OUT_RECOVERY)/root/thermal-modules/board_temp.ko