diff --git a/Android.bp b/Android.bp new file mode 100644 index 0000000..83d2b5a --- /dev/null +++ b/Android.bp @@ -0,0 +1,9 @@ +// +// Copyright (C) 2020 The Android Open Source Project +// Copyright (C) 2020 The TWRP Open Source Project +// Copyright (C) 2020 SebaUbuntu's TWRP device tree generator +// Copyright (C) 2022-juic3b0x +// + +soong_namespace { +} \ No newline at end of file diff --git a/Android.mk b/Android.mk new file mode 100644 index 0000000..53ed091 --- /dev/null +++ b/Android.mk @@ -0,0 +1,14 @@ +# +# Copyright (C) 2020 The Android Open Source Project +# Copyright (C) 2020 The TWRP Open Source Project +# Copyright (C) 2020 SebaUbuntu's TWRP device tree generator +# Copyright (C) 2022-juic3b0x +# + +LOCAL_PATH := $(call my-dir) + +ifeq ($(TARGET_DEVICE), denver) +subdir_makefiles=$(call first-makefiles-under,$(LOCAL_PATH)) +$(foreach mk,$(subdir_makefiles),$(info including $(mk) ...)$(eval include $(mk))) + +endif diff --git a/AndroidProducts.mk b/AndroidProducts.mk new file mode 100644 index 0000000..f3bf1fb --- /dev/null +++ b/AndroidProducts.mk @@ -0,0 +1,12 @@ +# +# Copyright (C) 2020 The Android Open Source Project +# Copyright (C) 2020 The TWRP Open Source Project +# Copyright (C) 2020 SebaUbuntu's TWRP device tree generator +# Copyright (C) 2022-juic3b0x +# + +PRODUCT_MAKEFILES := \ + $(LOCAL_DIR)/twrp_denver.mk + +COMMON_LUNCH_CHOICES := \ + twrp_denver-eng diff --git a/BoardConfig.mk b/BoardConfig.mk new file mode 100644 index 0000000..8b89734 --- /dev/null +++ b/BoardConfig.mk @@ -0,0 +1,138 @@ +# +# Copyright (C) 2020 The Android Open Source Project +# Copyright (C) 2020 The TWRP Open Source Project +# Copyright (C) 2020 SebaUbuntu's TWRP device tree generator +# Copyright (C) 2022-juic3b0x +# + +DEVICE_PATH := device/motorola/denver + +# For building with minimal manifest +ALLOW_MISSING_DEPENDENCIES := true + +# Architecture +TARGET_ARCH := arm64 +TARGET_ARCH_VARIANT := armv8-a +TARGET_CPU_ABI := arm64-v8a +TARGET_CPU_ABI2 := +TARGET_CPU_VARIANT := generic +TARGET_CPU_VARIANT_RUNTIME := cortex-a55 + +TARGET_2ND_ARCH := arm +TARGET_2ND_ARCH_VARIANT := armv8-2a +TARGET_2ND_CPU_ABI := armeabi-v7a +TARGET_2ND_CPU_ABI2 := armeabi +TARGET_2ND_CPU_VARIANT := generic +TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a55 + +# APEX image +DEXPREOPT_GENERATE_APEX_IMAGE := true +BUILD_BROKEN_DUP_RULES := true + +# Bootloader +TARGET_USES_UEFI := true + +# Assert +TARGET_OTA_ASSERT_DEVICE := denver + +# Build Error Bypass Fix +BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true + +# A/B +AB_OTA_UPDATER := true + +AB_OTA_PARTITIONS := \ + boot \ + dtbo \ + product \ + system \ + system_ext \ + vbmeta \ + vbmeta_system \ + vendor \ + vendor_boot + +# Build Flags +TW_MAINTAINER := ragarcia87 +TW_DEVICE_VERSION := v1 +RECOVERY_VARIANT := TWRP_12.1 +ALLOW_MISSING_DEPENDENCIES := true +LC_ALL := "C" + +# Kernel +BOARD_KERNEL_CMDLINE := twrpfastboot=1 +TARGET_PREBUILT_KERNEL := $(DEVICE_PATH)/prebuilt/Image.gz-dtb +BOARD_BOOT_HEADER_VERSION := 3 +BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION) + +BOARD_KERNEL_CMDLINE += console=ttyMSM0,115200n8 +BOARD_KERNEL_CMDLINE += earlycon=msm_geni_serial,0x04C8C000 +BOARD_KERNEL_CMDLINE += androidboot.hardware=qcom +BOARD_KERNEL_CMDLINE += androidboot.console=ttyMSM0 +BOARD_KERNEL_CMDLINE += androidboot.memcg=1 +BOARD_KERNEL_CMDLINE += lpm_levels.sleep_disabled=1 +BOARD_KERNEL_CMDLINE += video=vfb:640x400,bpp=32,memsize=3072000 +BOARD_KERNEL_CMDLINE += msm_rtb.filter=0x237 +BOARD_KERNEL_CMDLINE += service_locator.enable=1 +BOARD_KERNEL_CMDLINE += androidboot.usbcontroller=4e00000.dwc3 +BOARD_KERNEL_CMDLINE += swiotlb=0 +BOARD_KERNEL_CMDLINE += loop.max_part=7 +BOARD_KERNEL_CMDLINE += cgroup.memory=nokmem,nosocket +BOARD_KERNEL_CMDLINE += iptable_raw.raw_before_defrag=1 +BOARD_KERNEL_CMDLINE += ip6table_raw.raw_before_defrag=1 +BOARD_KERNEL_CMDLINE += firmware_class.path=/vendor/firmware_mnt/image +BOARD_KERNEL_CMDLINE += androidboot.hab.csv=9 +BOARD_KERNEL_CMDLINE += androidboot.hab.product=denver +BOARD_KERNEL_CMDLINE += androidboot.hab.cid=50 +BOARD_KERNEL_CMDLINE += buildvariant=eng + +KERNEL_LD := LLVM=1 +TARGET_KERNEL_ADDITIONAL_FLAGS := DTC_EXT=$(shell pwd)/prebuilts/misc/linux-x86/dtc/dtc +TARGET_KERNEL_CLANG_COMPILE := true +TARGET_KERNEL_CONFIG := denver_defconfig +TARGET_KERNEL_SOURCE := kernel/motorola/denver +NEED_KERNEL_MODULE_RECOVERY := true + +# Metadata +BOARD_USES_METADATA_PARTITION := true +BOARD_ROOT_EXTRA_FOLDERS += metadata + +BOARD_USES_QCOM_FBE_DECRYPTION := true + +# Partitions +BOARD_FLASH_BLOCK_SIZE := 131072 +BOARD_BOOTIMAGE_PARTITION_SIZE := 100663296 +BOARD_VENDOR_BOOTIMAGE_PARTITION_SIZE := 100663296 + +# Super Partition +BOARD_SUPER_PARTITION_GROUPS := qti_dynamic_partitions +BOARD_SUPER_PARTITION_SIZE := 9126805504 +BOARD_QTI_DYNAMIC_PARTITIONS_PARTITION_LIST := system system_ext product vendor +BOARD_QTI_DYNAMIC_PARTITIONS_SIZE := 9122611200 # TODO: Fix hardcoded value + +BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4 +TARGET_COPY_OUT_VENDOR := vendor + +# Platform +BOARD_USES_QCOM_HARDWARE := true +TARGET_BOARD_PLATFORM := holi + +# Properties +TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop +TARGET_VENDOR_PROP += $(DEVICE_PATH)/vendor.prop + +# Recovery +BOARD_USES_RECOVERY_AS_BOOT := true +TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/recovery.fstab +TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888" +TARGET_USERIMAGES_USE_EXT4 := true +TARGET_USERIMAGES_USE_F2FS := true + +# Verified Boot +BOARD_AVB_ENABLE := true +BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3 +BOARD_AVB_VBMETA_SYSTEM := system system_ext product +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) +BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX_LOCATION := 1 diff --git a/README.md b/README.md new file mode 100644 index 0000000..0edc87f --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# Android 12 TWRP Recovery Device Tree +# Motorola Moto G Stylus 5G 2021 +# diff --git a/device.mk b/device.mk new file mode 100644 index 0000000..bfa6f43 --- /dev/null +++ b/device.mk @@ -0,0 +1,127 @@ +# +# Copyright (C) 2020 The Android Open Source Project +# Copyright (C) 2020 The TWRP Open Source Project +# Copyright (C) 2020 SebaUbuntu's TWRP device tree generator +# Copyright (C) 2022-juic3b0x +# + +# Enable project quotas and casefolding for emulated storage without sdcardfs +$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk) + +# Enable updating of APEXes +$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk) + +# Enable virtual A/B OTA +#$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota.mk) + +# Installs gsi keys into ramdisk, to boot a developer GSI with verified boot. +$(call inherit-product, $(SRC_TARGET_DIR)/product/gsi_keys.mk) + +LOCAL_PATH := device/motorola/denver + +# API +PRODUCT_SHIPPING_API_LEVEL := 30 + +# A/B +AB_OTA_POSTINSTALL_CONFIG += \ + RUN_POSTINSTALL_system=true \ + POSTINSTALL_PATH_system=system/bin/otapreopt_script \ + FILESYSTEM_TYPE_system=ext4 \ + POSTINSTALL_OPTIONAL_system=true + +PRODUCT_PACKAGES += \ + otapreopt_script + +# Boot control HAL +PRODUCT_PACKAGES += \ + android.hardware.boot@1.1-impl-qti.recovery \ + bootctrl.holi.recovery + +PRODUCT_PACKAGES_DEBUG += \ + bootctl + +# Dynamic partitions +PRODUCT_USE_DYNAMIC_PARTITIONS := true + +# Fastbootd +PRODUCT_PACKAGES += \ + android.hardware.fastboot@1.0-impl-mock \ + fastbootd + +# Screen +TARGET_SCREEN_HEIGHT := 2400 +TARGET_SCREEN_WIDTH := 1080 + +# Soong namespaces +PRODUCT_SOONG_NAMESPACES += \ + $(LOCAL_PATH) \ + hardware/qcom-caf/bootctrl \ + vendor/qcom/opensource/commonsys-intf/display + +# Update engine +PRODUCT_PACKAGES += \ + update_engine \ + update_engine_sideload \ + update_verifier + +PRODUCT_PACKAGES_DEBUG += \ + update_engine_client + +# TWRP Configuration +TW_THEME := portrait_hdpi +RECOVERY_SDCARD_ON_DATA := true +TARGET_RECOVERY_QCOM_RTC_FIX := true +TW_EXCLUDE_DEFAULT_USB_INIT := true +TW_EXTRA_LANGUAGES := true +TW_INCLUDE_NTFS_3G := true +TW_USE_TOOLBOX := true +TW_INCLUDE_RESETPROP := true +TW_INCLUDE_REPACKTOOLS := true +TW_INPUT_BLACKLIST := "hbtp_vm" +TW_BRIGHTNESS_PATH := "/sys/class/backlight/panel0-backlight/brightness" +TARGET_USE_CUSTOM_LUN_FILE_PATH := /config/usb_gadget/g1/functions/mass_storage.0/lun.%d/file +TW_CUSTOM_CPU_TEMP_PATH := "/sys/devices/virtual/thermal/thermal_zone79/temp" +TW_Y_OFFSET := 120 +TW_H_OFFSET := -120 +TWRP_INCLUDE_LOGCAT := true +TARGET_USES_LOGD := true +TARGET_USES_MKE2FS := true +TW_NO_SCREEN_BLANK := true +TW_EXCLUDE_APEX := true + +# Crypto +TW_USE_FSCRYPT_POLICY := 1 +TW_INCLUDE_CRYPTO := true +TW_INCLUDE_CRYPTO_FBE := true +TW_INCLUDE_FBE_METADATA_DECRYPT := true +PLATFORM_SECURITY_PATCH := 2099-12-31 +VENDOR_SECURITY_PATCH := 2099-12-31 +PLATFORM_VERSION := 127 +PLATFORM_VERSION_LAST_STABLE := $(PLATFORM_VERSION) +BOARD_USES_QCOM_FBE_DECRYPTION := true + +TW_LOAD_VENDOR_MODULES := "moto_f_usbnet.ko nova_0flash_mmi.ko mmi-smbcharger-iio.ko qpnp_adaptive_charge.ko utags.ko" + +TARGET_RECOVERY_DEVICE_MODULES += \ + libandroidicu \ + libdisplayconfig.qti \ + libion \ + vendor.display.config@1.0 \ + vendor.display.config@2.0 + +RECOVERY_LIBRARY_SOURCE_FILES += \ + $(TARGET_OUT_SHARED_LIBRARIES)/libion.so \ + $(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/libdisplayconfig.qti.so \ + $(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.0.so \ + $(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@2.0.so + +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/prebuilt/libandroidicu.so:$(TARGET_COPY_OUT_RECOVERY)/root/system/lib64/libandroidicu.so \ + $(LOCAL_PATH)/prebuilt/android.hardware.boot@1.0-impl-1.1-qti.so:$(TARGET_COPY_OUT_RECOVERY)/root/system/lib64/hw/android.hardware.boot@1.0-impl-1.1-qti.so \ + $(LOCAL_PATH)/prebuilt/librecovery_updater_msm.so:$(TARGET_COPY_OUT_RECOVERY)/root/system/lib64/librecovery_updater_msm.so \ + $(LOCAL_PATH)/prebuilt/libboot_control_qti.so:$(TARGET_COPY_OUT_RECOVERY)/root/system/lib64/libboot_control_qti.so \ + $(LOCAL_PATH)/prebuilt/android.hardware.fastboot@1.0-impl-mock.so:$(TARGET_COPY_OUT_RECOVERY)/root/system/lib64/hw/android.hardware.fastboot@1.0-impl-mock.so + +PRODUCT_PACKAGES += \ + qcom_decrypt \ + qcom_decrypt_fbe diff --git a/prebuilt/Image.gz-dtb b/prebuilt/Image.gz-dtb new file mode 100644 index 0000000..115219d Binary files /dev/null and b/prebuilt/Image.gz-dtb differ diff --git a/prebuilt/android.hardware.boot@1.0-impl-1.1-qti.so b/prebuilt/android.hardware.boot@1.0-impl-1.1-qti.so new file mode 100644 index 0000000..b0a9304 Binary files /dev/null and b/prebuilt/android.hardware.boot@1.0-impl-1.1-qti.so differ diff --git a/prebuilt/android.hardware.fastboot@1.0-impl-mock.so b/prebuilt/android.hardware.fastboot@1.0-impl-mock.so new file mode 100644 index 0000000..f0afb94 Binary files /dev/null and b/prebuilt/android.hardware.fastboot@1.0-impl-mock.so differ diff --git a/prebuilt/libandroidicu.so b/prebuilt/libandroidicu.so new file mode 100644 index 0000000..2afb7d3 Binary files /dev/null and b/prebuilt/libandroidicu.so differ diff --git a/prebuilt/libboot_control_qti.so b/prebuilt/libboot_control_qti.so new file mode 100644 index 0000000..05d663d Binary files /dev/null and b/prebuilt/libboot_control_qti.so differ diff --git a/prebuilt/librecovery_updater_msm.so b/prebuilt/librecovery_updater_msm.so new file mode 100644 index 0000000..b98f362 Binary files /dev/null and b/prebuilt/librecovery_updater_msm.so differ diff --git a/recovery.fstab b/recovery.fstab new file mode 100644 index 0000000..0cbe34f --- /dev/null +++ b/recovery.fstab @@ -0,0 +1,45 @@ +# Copyright (c) 2019-2020 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted (subject to the limitations in the +# disclaimer below) provided that the following conditions are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE +# GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT +# HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# Android fstab file. +# The filesystem that contains the filesystem checker binary (typically /system) cannot +# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK + +# +system /system ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount,avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey +system_ext /system_ext ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount +product /product ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount +vendor /vendor ext4 ro,barrier=1,discard wait,slotselect,avb,logical,first_stage_mount +/dev/block/by-name/metadata /metadata ext4 noatime,nosuid,nodev,discard wait,check,formattable,first_stage_mount +/dev/block/bootdevice/by-name/userdata /data f2fs noatime,nosuid,nodev,discard,inlinecrypt,reserve_root=32768,resgid=1065,fsync_mode=nobarrier latemount,wait,check,formattable,fileencryption=aes-256-xts:aes-256-cts:v2+inlinecrypt_optimized+wrappedkey_v0,keydirectory=/metadata/vold/metadata_encryption,metadata_encryption=aes-256-xts:wrappedkey_v0,quota,reservedsize=512M,sysfs_path=/sys/devices/platform/soc/4804000.ufshc,checkpoint=fs +/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults +/dev/block/mmcblk1p1 /external_sd auto defaults defaults diff --git a/recovery/root/init.recovery.qcom.rc b/recovery/root/init.recovery.qcom.rc new file mode 100644 index 0000000..5fce2a2 --- /dev/null +++ b/recovery/root/init.recovery.qcom.rc @@ -0,0 +1,36 @@ +import /init.recovery.qcom_decrypt.rc + +on init + write /sys/class/backlight/panel0-backlight/brightness 200 + # Create location for fs_mgr to store abbreviated output from filesystem + # checker programs. + mkdir /dev/fscklogs 0770 root system + start set_permissive + +on fs + wait /dev/block/platform/soc/${ro.boot.bootdevice} + symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice + # Mount firmware + mkdir /firmware + mount vfat /dev/block/bootdevice/by-name/modem${ro.boot.slot_suffix} /firmware ro + # Set fscklog permission + chown root system /dev/fscklogs/log + chmod 0770 /dev/fscklogs/log + start boot-hal-1-1 + +on boot + setprop sys.usb.config mtp,adb + +on property:twrp.modules.loaded=true + # Load ADSP firmware for PMIC + wait /sys/kernel/boot_adsp/boot + write /sys/kernel/boot_adsp/boot 1 + wait /sys/class/power_supply/battery + start health-hal-2-1 + +service set_permissive /system/bin/set_permissive.sh + user root + group root + disabled + oneshot + seclabel u:r:recovery:s0 diff --git a/recovery/root/init.recovery.usb.rc b/recovery/root/init.recovery.usb.rc new file mode 100644 index 0000000..d185f52 --- /dev/null +++ b/recovery/root/init.recovery.usb.rc @@ -0,0 +1,154 @@ +# Copyright (c) 2011-2016, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +on early-init + setprop sys.usb.configfs 0 + +on init + mkdir /config + mount configfs none /config + mkdir /config/usb_gadget/g1 0770 shell shell + write /config/usb_gadget/g1/bcdUSB 0x0200 + write /config/usb_gadget/g1/idVendor 0x18d1 + write /config/usb_gadget/g1/idProduct 0xd001 + mkdir /config/usb_gadget/g1/strings/0x409 0770 shell shell + write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} + write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer} + write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model} + mkdir /config/usb_gadget/g1/functions/ffs.adb + mkdir /config/usb_gadget/g1/functions/mass_storage.0 + mkdir /config/usb_gadget/g1/functions/mtp.gs0 + write /config/usb_gadget/g1/os_desc/use 1 + write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1 + write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100" + setprop sys.usb.configfs 1 + +on boot + setprop sys.usb.mtp.device_type 3 + setprop vendor.usb.product_string ${ro.product.model} + write /config/usb_gadget/g1/strings/0x409/product ${vendor.usb.product_string} + write /config/usb_gadget/g2/strings/0x409/product ${vendor.usb.product_string} + +on boot && property:vendor.usb.use_ffs_mtp=1 + mkdir /config/usb_gadget/g1/functions/ffs.mtp + mkdir /dev/usb-ffs/mtp 0770 mtp mtp + mount functionfs mtp /dev/usb-ffs/mtp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 + +on property:ro.boot.usbconfigfs=false + setprop sys.usb.configfs 0 + +on property:ro.boot.recover_usb=* + write /sys/bus/platform/devices/a600000.ssusb/mode "peripheral" + +on property:ro.boot.usbcontroller=* + setprop sys.usb.controller ${ro.boot.usbcontroller} + setprop vendor.usb.controller ${sys.usb.controller} + write /sys/class/udc/${ro.boot.usbcontroller}/device/../mode peripheral + +on property:sys.usb.ffs.ready=1 + mkdir /config/usb_gadget/g1/configs/b.1 0777 shell shell + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 shell shell + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "adb" + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + +on property:sys.usb.config=mtp && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1 + rm /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + +on property:sys.usb.config=mtp && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp" + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/idVendor 0x0B05 + write /config/usb_gadget/g1/idProduct 0x7772 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.config=mtp,adb && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1 + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_adb" + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/idVendor 0x0B05 + write /config/usb_gadget/g1/idProduct 0x7773 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=mass_storage && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "msc" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0xF000 + symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f1 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=mass_storage,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mass_storage,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "adb_msc" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9015 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:ro.boot.usbcontroller=* + setprop sys.usb.controller ${ro.boot.usbcontroller} + write /sys/class/udc/${ro.boot.usbcontroller}/device/../mode peripheral diff --git a/recovery/root/system/bin/android.hardware.gatekeeper@1.0-service-qti b/recovery/root/system/bin/android.hardware.gatekeeper@1.0-service-qti new file mode 100644 index 0000000..179edab Binary files /dev/null and b/recovery/root/system/bin/android.hardware.gatekeeper@1.0-service-qti differ diff --git a/recovery/root/system/bin/android.hardware.keymaster@4.1-service-qti b/recovery/root/system/bin/android.hardware.keymaster@4.1-service-qti new file mode 100644 index 0000000..6adc2ed Binary files /dev/null and b/recovery/root/system/bin/android.hardware.keymaster@4.1-service-qti differ diff --git a/recovery/root/system/bin/qseecomd b/recovery/root/system/bin/qseecomd new file mode 100644 index 0000000..7bb7627 Binary files /dev/null and b/recovery/root/system/bin/qseecomd differ diff --git a/recovery/root/system/bin/set_permissive.sh b/recovery/root/system/bin/set_permissive.sh new file mode 100644 index 0000000..0e8368f --- /dev/null +++ b/recovery/root/system/bin/set_permissive.sh @@ -0,0 +1,2 @@ +#!/system/bin/sh +setenforce 0 diff --git a/recovery/root/system/etc/recovery.fstab b/recovery/root/system/etc/recovery.fstab new file mode 100644 index 0000000..0cbe34f --- /dev/null +++ b/recovery/root/system/etc/recovery.fstab @@ -0,0 +1,45 @@ +# Copyright (c) 2019-2020 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted (subject to the limitations in the +# disclaimer below) provided that the following conditions are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE +# GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT +# HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# Android fstab file. +# The filesystem that contains the filesystem checker binary (typically /system) cannot +# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK + +# +system /system ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount,avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey +system_ext /system_ext ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount +product /product ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount +vendor /vendor ext4 ro,barrier=1,discard wait,slotselect,avb,logical,first_stage_mount +/dev/block/by-name/metadata /metadata ext4 noatime,nosuid,nodev,discard wait,check,formattable,first_stage_mount +/dev/block/bootdevice/by-name/userdata /data f2fs noatime,nosuid,nodev,discard,inlinecrypt,reserve_root=32768,resgid=1065,fsync_mode=nobarrier latemount,wait,check,formattable,fileencryption=aes-256-xts:aes-256-cts:v2+inlinecrypt_optimized+wrappedkey_v0,keydirectory=/metadata/vold/metadata_encryption,metadata_encryption=aes-256-xts:wrappedkey_v0,quota,reservedsize=512M,sysfs_path=/sys/devices/platform/soc/4804000.ufshc,checkpoint=fs +/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults +/dev/block/mmcblk1p1 /external_sd auto defaults defaults diff --git a/recovery/root/system/etc/task_profiles.json b/recovery/root/system/etc/task_profiles.json new file mode 100644 index 0000000..77a8099 --- /dev/null +++ b/recovery/root/system/etc/task_profiles.json @@ -0,0 +1,673 @@ +{ + "Attributes": [ + { + "Name": "LowCapacityCPUs", + "Controller": "cpuset", + "File": "background/cpus" + }, + { + "Name": "HighCapacityCPUs", + "Controller": "cpuset", + "File": "foreground/cpus" + }, + { + "Name": "MaxCapacityCPUs", + "Controller": "cpuset", + "File": "top-app/cpus" + }, + { + "Name": "AudioAppCapacityCPUs", + "Controller": "cpuset", + "File": "audio-app/cpus" + }, + + { + "Name": "MemLimit", + "Controller": "memory", + "File": "memory.limit_in_bytes" + }, + { + "Name": "MemSoftLimit", + "Controller": "memory", + "File": "memory.soft_limit_in_bytes" + }, + { + "Name": "MemSwappiness", + "Controller": "memory", + "File": "memory.swappiness" + }, + { + "Name": "STuneBoost", + "Controller": "schedtune", + "File": "schedtune.boost" + }, + { + "Name": "STunePreferIdle", + "Controller": "schedtune", + "File": "schedtune.prefer_idle" + }, + { + "Name": "UClampMin", + "Controller": "cpu", + "File": "cpu.uclamp.min" + }, + { + "Name": "UClampMax", + "Controller": "cpu", + "File": "cpu.uclamp.max" + }, + { + "Name": "FreezerState", + "Controller": "freezer", + "File": "frozen/freezer.state" + } + ], + + "Profiles": [ + { + "Name": "HighEnergySaving", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "schedtune", + "Path": "background" + } + } + ] + }, + { + "Name": "Frozen", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "freezer", + "Path": "frozen" + } + } + ] + }, + { + "Name": "Unfrozen", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "freezer", + "Path": "" + } + } + ] + }, + { + "Name": "NormalPerformance", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "schedtune", + "Path": "" + } + } + ] + }, + { + "Name": "HighPerformance", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "schedtune", + "Path": "foreground" + } + } + ] + }, + { + "Name": "MaxPerformance", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "schedtune", + "Path": "top-app" + } + } + ] + }, + { + "Name": "RealtimePerformance", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "schedtune", + "Path": "rt" + } + } + ] + }, + { + "Name": "CameraServicePerformance", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "schedtune", + "Path": "camera-daemon" + } + } + ] + }, + { + "Name": "AudioAppPerformance", + "Actions" : [ + { + "Name" : "JoinCgroup", + "Params" : + { + "Controller": "schedtune", + "Path": "audio-app" + } + } + ] + }, + + { + "Name": "CpuPolicySpread", + "Actions": [ + { + "Name": "SetAttribute", + "Params": + { + "Name": "STunePreferIdle", + "Value": "1" + } + } + ] + }, + { + "Name": "CpuPolicyPack", + "Actions": [ + { + "Name": "SetAttribute", + "Params": + { + "Name": "STunePreferIdle", + "Value": "0" + } + } + ] + }, + + { + "Name": "VrKernelCapacity", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "" + } + } + ] + }, + { + "Name": "VrServiceCapacityLow", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "system/background" + } + } + ] + }, + { + "Name": "VrServiceCapacityNormal", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "system" + } + } + ] + }, + { + "Name": "VrServiceCapacityHigh", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "system/performance" + } + } + ] + }, + { + "Name": "VrProcessCapacityLow", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "application/background" + } + } + ] + }, + { + "Name": "VrProcessCapacityNormal", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "application" + } + } + ] + }, + { + "Name": "VrProcessCapacityHigh", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "application/performance" + } + } + ] + }, + + { + "Name": "ProcessCapacityLow", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "background" + } + } + ] + }, + { + "Name": "ProcessCapacityNormal", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "" + } + } + ] + }, + { + "Name": "ProcessCapacityHigh", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "foreground" + } + } + ] + }, + { + "Name": "ProcessCapacityMax", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "top-app" + } + } + ] + }, + + { + "Name": "ServiceCapacityLow", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "system-background" + } + } + ] + }, + { + "Name": "ServiceCapacityRestricted", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "restricted" + } + } + ] + }, + + { + "Name": "CameraServiceCapacity", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "cpuset", + "Path": "camera-daemon" + } + } + ] + }, + { + "Name": "AudioAppCapacity", + "Actions" : [ + { + "Name" : "JoinCgroup", + "Params" : + { + "Controller": "cpuset", + "Path": "audio-app" + } + } + ] + }, + + { + "Name": "BlkIOForeground", + "Actions" : [ + { + "Name" : "JoinCgroup", + "Params" : + { + "Controller": "blkio", + "Path": "" + } + } + ] + }, + { + "Name": "BlkIOBackground", + "Actions" : [ + { + "Name" : "JoinCgroup", + "Params" : + { + "Controller": "blkio", + "Path": "bg" + } + } + ] + }, + + { + "Name": "LowIoPriority", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "blkio", + "Path": "background" + } + } + ] + }, + { + "Name": "NormalIoPriority", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "blkio", + "Path": "" + } + } + ] + }, + { + "Name": "HighIoPriority", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "blkio", + "Path": "" + } + } + ] + }, + { + "Name": "MaxIoPriority", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "blkio", + "Path": "" + } + } + ] + }, + + { + "Name": "TimerSlackHigh", + "Actions": [ + { + "Name": "SetTimerSlack", + "Params": + { + "Slack": "40000000" + } + } + ] + }, + { + "Name": "TimerSlackNormal", + "Actions": [ + { + "Name": "SetTimerSlack", + "Params": + { + "Slack": "50000" + } + } + ] + }, + + { + "Name": "PerfBoost", + "Actions": [ + { + "Name": "SetClamps", + "Params": + { + "Boost": "50%", + "Clamp": "0" + } + } + ] + }, + { + "Name": "PerfClamp", + "Actions": [ + { + "Name": "SetClamps", + "Params": + { + "Boost": "0", + "Clamp": "30%" + } + } + ] + }, + + { + "Name": "LowMemoryUsage", + "Actions": [ + { + "Name": "SetAttribute", + "Params": + { + "Name": "MemSoftLimit", + "Value": "16MB" + } + }, + { + "Name": "SetAttribute", + "Params": + { + "Name": "MemSwappiness", + "Value": "150" + + } + } + ] + }, + { + "Name": "HighMemoryUsage", + "Actions": [ + { + "Name": "SetAttribute", + "Params": + { + "Name": "MemSoftLimit", + "Value": "512MB" + } + }, + { + "Name": "SetAttribute", + "Params": + { + "Name": "MemSwappiness", + "Value": "100" + } + } + ] + }, + { + "Name": "SystemMemoryProcess", + "Actions": [ + { + "Name": "JoinCgroup", + "Params": + { + "Controller": "memory", + "Path": "system" + } + } + ] + }, + { + "Name": "FreezerThawed", + "Actions": [ + { + "Name": "SetAttribute", + "Params": + { + "Name": "FreezerState", + "Value": "THAWED" + } + } + ] + }, + { + "Name": "FreezerFrozen", + "Actions": [ + { + "Name": "SetAttribute", + "Params": + { + "Name": "FreezerState", + "Value": "FROZEN" + } + } + ] + } + ], + + "AggregateProfiles": [ + { + "Name": "SCHED_SP_DEFAULT", + "Profiles": [ "TimerSlackNormal" ] + }, + { + "Name": "SCHED_SP_BACKGROUND", + "Profiles": [ "HighEnergySaving", "LowIoPriority", "TimerSlackHigh" ] + }, + { + "Name": "SCHED_SP_FOREGROUND", + "Profiles": [ "HighPerformance", "HighIoPriority", "TimerSlackNormal" ] + }, + { + "Name": "SCHED_SP_TOP_APP", + "Profiles": [ "MaxPerformance", "MaxIoPriority", "TimerSlackNormal" ] + }, + { + "Name": "SCHED_SP_RT_APP", + "Profiles": [ "RealtimePerformance", "MaxIoPriority", "TimerSlackNormal" ] + }, + { + "Name": "CPUSET_SP_DEFAULT", + "Profiles": [ "TimerSlackNormal" ] + }, + { + "Name": "CPUSET_SP_BACKGROUND", + "Profiles": [ "HighEnergySaving", "ProcessCapacityLow", "LowIoPriority", "TimerSlackHigh" ] + }, + { + "Name": "CPUSET_SP_FOREGROUND", + "Profiles": [ "HighPerformance", "ProcessCapacityHigh", "HighIoPriority", "TimerSlackNormal" ] + }, + { + "Name": "CPUSET_SP_TOP_APP", + "Profiles": [ "MaxPerformance", "ProcessCapacityMax", "MaxIoPriority", "TimerSlackNormal" ] + }, + { + "Name": "CPUSET_SP_SYSTEM", + "Profiles": [ "ServiceCapacityLow", "TimerSlackNormal" ] + }, + { + "Name": "CPUSET_SP_RESTRICTED", + "Profiles": [ "ServiceCapacityRestricted", "TimerSlackNormal" ] + } + ] +} diff --git a/recovery/root/system/etc/twrp.flags b/recovery/root/system/etc/twrp.flags new file mode 100644 index 0000000..59143bf --- /dev/null +++ b/recovery/root/system/etc/twrp.flags @@ -0,0 +1,25 @@ +# Android fstab file. +# The filesystem that contains the filesystem checker binary (typically /system) cannot +# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK + +# mount point fstype device device2 flags + +/metadata ext4 /dev/block/bootdevice/by-name/metadata flags=display="Metadata" +/data ext4 /dev/block/bootdevice/by-name/userdata fileencryption=aes-256-xts:aes-256-cts:v2+inlinecrypt_optimized+wrappedkey_v0,keydirectory=/metadata/vold/metadata_encryption +/boot emmc /dev/block/bootdevice/by-name/boot flags=backup=1;flashimg=1;slotselect +/dtbo emmc /dev/block/bootdevice/by-name/dtbo flags=backup=1;display="Dtbo";flashimg=1;slotselect +/firmware vfat /dev/block/bootdevice/by-name/modem flags=display="Firmware";slotselect;mounttodecrypt;fsflags=ro +/misc emmc /dev/block/bootdevice/by-name/misc flags=display="Misc" +/modem emmc /dev/block/bootdevice/by-name/modem flags=backup=1;display="Modem";slotselect +/bluetooth emmc /dev/block/bootdevice/by-name/bluetooth flags=backup=1;subpartitionof=/modem;slotselect +/dsp emmc /dev/block/bootdevice/by-name/dsp flags=backup=1;subpartitionof=/modem;slotselect +/efs1 emmc /dev/block/bootdevice/by-name/modemst1 flags=backup=1;display=EFS +/efs2 emmc /dev/block/bootdevice/by-name/modemst2 flags=backup=1;subpartitionof=/efs1 +/efsc emmc /dev/block/bootdevice/by-name/fsc flags=backup=1;subpartitionof=/efs1 +/efsg emmc /dev/block/bootdevice/by-name/fsg flags=backup=1;subpartitionof=/efs1;slotselect +/persist ext4 /dev/block/bootdevice/by-name/persist flags=display="Persist" +/persist_image emmc /dev/block/bootdevice/by-name/persist flags=display="Persist";flashimg=1 + +# Removable storage +/usbstorage vfat /dev/block/sdg1 /dev/block/sdg flags=fsflags=utf8;display="USB Storage";storage;wipeingui;removable +/external_sd vfat /dev/block/mmcblk1p1 /dev/block/mmcblk1 flags=display="MicroSD";storage;wipeingui;removable diff --git a/recovery/root/system/etc/vintf/manifest.xml b/recovery/root/system/etc/vintf/manifest.xml new file mode 100644 index 0000000..baaeb3c --- /dev/null +++ b/recovery/root/system/etc/vintf/manifest.xml @@ -0,0 +1,136 @@ + + + + android.frameworks.displayservice + hwbinder + 1.0 + + IDisplayService + default + + @1.0::IDisplayService/default + + + android.frameworks.schedulerservice + hwbinder + 1.0 + + ISchedulingPolicyService + default + + @1.0::ISchedulingPolicyService/default + + + android.frameworks.sensorservice + hwbinder + 1.0 + + ISensorManager + default + + @1.0::ISensorManager/default + + + android.hidl.manager + hwbinder + 1.2 + + IServiceManager + default + + @1.2::IServiceManager/default + + + android.hidl.memory + passthrough + 1.0 + + IMapper + ashmem + + @1.0::IMapper/ashmem + + + android.hidl.token + hwbinder + 1.0 + + ITokenManager + default + + @1.0::ITokenManager/default + + + android.system.net.netd + hwbinder + 1.1 + + INetd + default + + @1.1::INetd/default + + + android.system.wifi.keystore + hwbinder + 1.0 + + IKeystore + default + + @1.0::IKeystore/default + + + netutils-wrapper + 1.0 + + + vendor.qti.hardware.qccsyshal + hwbinder + 1.0 + + IQccsyshal + qccsyshal + + @1.0::IQccsyshal/qccsyshal + + + vendor.qti.hardware.radio.atcmdfwd + hwbinder + 1.0 + + IAtCmdFwd + AtCmdFwdService + + @1.0::IAtCmdFwd/AtCmdFwdService + + + vendor.qti.hardware.sigma_miracast + hwbinder + 1.0 + + Isigma_miracast + sigmahal + + @1.0::Isigma_miracast/sigmahal + + + vendor.qti.hardware.wifi.keystore + hwbinder + 1.0 + + IKeystoreExt + default + + @1.0::IKeystoreExt/default + + + 28 + 29 + 30 + + diff --git a/recovery/root/system/etc/vintf/manifest/android.hidl.allocator@1.0-service.xml b/recovery/root/system/etc/vintf/manifest/android.hidl.allocator@1.0-service.xml new file mode 100644 index 0000000..5218241 --- /dev/null +++ b/recovery/root/system/etc/vintf/manifest/android.hidl.allocator@1.0-service.xml @@ -0,0 +1,11 @@ + + + android.hidl.allocator + hwbinder + 1.0 + + IAllocator + ashmem + + + diff --git a/recovery/root/system/etc/vintf/manifest/android.system.keystore2-service.xml b/recovery/root/system/etc/vintf/manifest/android.system.keystore2-service.xml new file mode 100644 index 0000000..6b8d0cb --- /dev/null +++ b/recovery/root/system/etc/vintf/manifest/android.system.keystore2-service.xml @@ -0,0 +1,9 @@ + + + android.system.keystore2 + + IKeystoreService + default + + + diff --git a/recovery/root/system/etc/vintf/manifest/android.system.suspend@1.0-service.xml b/recovery/root/system/etc/vintf/manifest/android.system.suspend@1.0-service.xml new file mode 100644 index 0000000..9f06ae3 --- /dev/null +++ b/recovery/root/system/etc/vintf/manifest/android.system.suspend@1.0-service.xml @@ -0,0 +1,11 @@ + + + android.system.suspend + hwbinder + 1.0 + + ISystemSuspend + default + + + diff --git a/recovery/root/ueventd.qcom.rc b/recovery/root/ueventd.qcom.rc new file mode 100644 index 0000000..69fabd2 --- /dev/null +++ b/recovery/root/ueventd.qcom.rc @@ -0,0 +1,505 @@ +# Copyright (c) 2012-2015, 2017-2020, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# Firmware directory Path +# Below macro will be read by uevent and path will +# be added to search path for firmware loading +firmware_directories /vendor/firmware_mnt/image/ + +# the DIAG device node is not world writable/readable. +/dev/diag 0660 system oem_2901 +/dev/mhi_*_pipe_4 0660 system system + +/dev/genlock 0666 system system +/dev/wlan 0660 wifi wifi +/dev/kgsl 0666 system system +/dev/kgsl-3d0 0666 system system +/dev/kgsl-2d0 0666 root root +/dev/kgsl-2d1 0666 root root +/dev/ion 0664 system system +/dev/membuf 0664 system system +/dev/rtc0 0660 system system +/dev/smd0 0660 system system +/dev/smd4 0660 system system +/dev/smd_cxm_qmi 0640 radio radio +/dev/smd5 0660 system system +/dev/smd6 0660 system system +/dev/smd7 0660 bluetooth bluetooth +/dev/ccid_bridge 0660 system system +/dev/ipa 0660 radio radio +/dev/wwan_ioctl 0660 radio radio +/dev/ipaNatTable 0660 radio radio +/dev/rmnet_ctrl 0660 usb usb +/dev/dpl_ctrl 0660 usb usb +/dev/ipa_odl_ctl 0660 radio radio +/dev/ipa_adpl 0660 system oem_2905 +/dev/synx_device 0660 root camera +/dev/hab 0666 system system +/dev/hgsl 0666 system system +/dev/iio:device* 0664 system system + +#permissions for UFS RPMB BSG device node +/dev/0:0:0:49476 0600 system system + +#permissions for CSVT +/dev/smd11 0660 radio radio + +#permsissions for BT/FM +/dev/smd2 0660 bluetooth bluetooth +/dev/smd3 0660 bluetooth bluetooth +/dev/btpower 0660 bluetooth system + +#permissions for pta +/dev/pta 0660 system system + +/dev/radio0 0640 system system +/dev/rfcomm0 0660 bluetooth bluetooth +/dev/ttyUSB0 0660 bluetooth bluetooth +/dev/smdcntl0 0640 radio radio +/dev/smdcntl1 0640 radio radio +/dev/smdcntl2 0640 radio radio +/dev/smdcntl3 0640 radio radio +/dev/smdcntl4 0640 radio radio +/dev/smdcntl5 0640 radio radio +/dev/smdcntl6 0640 radio radio +/dev/smdcntl7 0640 radio radio +/dev/smdcntl8 0640 radio radio +/dev/smdcnt_rev0 0640 radio radio +/dev/smdcnt_rev1 0640 radio radio +/dev/smdcnt_rev2 0640 radio radio +/dev/smdcnt_rev3 0640 radio radio +/dev/smdcnt_rev4 0640 radio radio +/dev/smdcnt_rev5 0640 radio radio +/dev/smdcnt_rev6 0640 radio radio +/dev/smdcnt_rev7 0640 radio radio +/dev/smdcnt_rev8 0640 radio radio +/dev/smuxctl32 0640 radio radio +/dev/sdioctl0 0640 radio radio +/dev/sdioctl1 0640 radio radio +/dev/sdioctl2 0640 radio radio +/dev/sdioctl3 0640 radio radio +/dev/sdioctl4 0640 radio radio +/dev/sdioctl5 0640 radio radio +/dev/sdioctl6 0640 radio radio +/dev/sdioctl7 0640 radio radio +/dev/sdioctl8 0640 radio radio +/dev/rmnet_mux_ctrl 0640 radio radio +/dev/hsicctl0 0640 radio radio +/dev/hsicctl1 0640 radio radio +/dev/hsicctl2 0640 radio radio +/dev/hsicctl3 0640 radio radio +/dev/hsicctl4 0640 radio radio +/dev/hsicctl5 0640 radio radio +/dev/hsicctl6 0640 radio radio +/dev/hsicctl7 0640 radio radio +/dev/hsicctl8 0640 radio radio +/dev/hsicctl9 0640 radio radio +/dev/hsicctl10 0640 radio radio +/dev/hsicctl11 0640 radio radio +/dev/hsicctl12 0640 radio radio +/dev/hsicctl13 0640 radio radio +/dev/hsicctl14 0640 radio radio +/dev/hsicctl15 0640 radio radio +/dev/hsicctl16 0640 radio radio +/dev/mhi_*_pipe_14 0640 radio radio +/dev/mhi_*_pipe_16 0640 radio radio +/dev/mhi_*_pipe_32 0640 radio radio +/dev/at_usb0 0640 radio radio +/dev/at_mdm0 0640 radio radio +/dev/video* 0660 system camera +/dev/cvp* 0660 system camera +/dev/media* 0660 system camera +/dev/v4l-subdev* 0660 system camera +/dev/qseecom 0660 system drmrpc +/dev/qce 0660 system drmrpc +/dev/smcinvoke 0660 system drmrpc +/dev/qsee_ipc_irq_spss 0660 system drmrpc +/dev/seemplog 0660 system system +/dev/pft 0660 system drmrpc +/dev/spcom 0660 system system +/dev/spss_utils 0660 system system +/dev/sp_kernel 0660 system system +/dev/sp_nvm 0660 system system +/dev/sp_ssr 0660 system system +/dev/sp_keymaster 0660 system system +/dev/sp_keymaster_ssr 0660 system system +/dev/sec_nvm_* 0660 system system +/dev/cryptoapp 0660 system system +/dev/spdaemon_ssr 0660 system system +/dev/spu_hal_ssr 0660 system system +/dev/iuicc* 0660 system system +/dev/gemini0 0660 system camera +/dev/jpeg0 0660 system camera +/dev/jpeg1 0660 system camera +/dev/jpeg2 0660 system camera +/dev/jpeg3 0660 system camera +/dev/adsprpc-smd 0664 system system +/dev/adsprpc-smd-secure 0644 system system +/dev/system_health_monitor 0644 radio system +/dev/mdss_rotator 0664 system system + +#QDSS +/dev/byte-cntr 0660 system oem_2902 +/dev/mhi_qdss 0660 system oem_2902 +/sys/class/qdss_bridge/mhi_qdss mode 0660 system oem_2902 + +#qg +/dev/qg 0660 system system +/dev/qg_battery 0660 system system + +#qvr +/dev/qvr_external_sensor_ioctl 0660 system system +/sys/kernel/qvr_external_sensor/fd 0660 system system +/dev/bus/usb/001/002 0660 system system +/dev/bus/usb/001/003 0660 system system +/dev/bus/usb/001/004 0660 system system +/dev/bus/usb/001/005 0660 system system +/dev/bus/usb/002/002 0660 system system +/dev/bus/usb/002/003 0660 system system +/dev/bus/usb/002/004 0660 system system +/dev/bus/usb/002/005 0660 system system +/dev/bus/usb/003/002 0660 system system +/dev/bus/usb/003/003 0660 system system +/dev/bus/usb/003/004 0660 system system +/dev/bus/usb/003/005 0660 system system +/dev/hidraw0 0660 system system +/dev/hidraw1 0660 system system +/dev/hidraw2 0660 system system +/dev/hidraw3 0660 system system +/dev/hidraw4 0660 system system +/dev/hidraw5 0660 system system +/dev/hidraw6 0660 system system +/dev/hidraw7 0660 system system +/dev/hidraw8 0660 system system +/dev/hidraw9 0660 system system + +# wlan +/dev/wcnss_wlan 0660 system system +/dev/wcnss_ctrl 0660 system system +/sys/devices/soc/a000000.qcom,wcnss-wlan/net/wlan0/queues/rx-* rps_cpus 0660 system system +/sys/devices/soc/a000000.qcom,wcnss-wlan/net/p2p0/queues/rx-* rps_cpus 0660 system system +/sys/devices/platform/soc/*.qcom,icnss/net/wlan*/queues/rx-* rps_cpus 0660 system system +/sys/devices/platform/soc/1c00000.qcom,pcie/pci0000:00/0000:00:00.0/0000:01:00.0/net/wlan*/queues/rx-* rps_cpus 0660 system system +/sys/devices/platform/soc/17a10040.qcom,wcn6750/net/wlan*/queues/rx-* rps_cpus 0660 system system +/dev/spidev0.0 0660 system audio +/dev/i2c-7 0660 system audio +/dev/msm_camera/* 0660 system camera +/dev/gemini/ 0660 system camera +/dev/mercury0 0660 system camera +/dev/msm_vidc_reg 0660 system audio +/dev/msm_vidc_dec 0660 system audio +/dev/msm_vidc_dec_sec 0660 system audio +/dev/msm_vidc_enc 0660 system audio +/dev/msm_rotator 0660 system system +/dev/hw_random 0600 root root +/dev/sdsprpc-smd 0660 system system + +#permissions for audio +/dev/wcd_dsp0_control 0660 system audio +/dev/wcd-dsp-glink 0660 system audio +/dev/audio_slimslave 0660 system audio +/dev/msm_qcelp 0660 system audio +/dev/msm_evrc 0660 system audio +/dev/msm_wma 0660 system audio +/dev/msm_wmapro 0660 system audio +/dev/msm_alac 0660 system audio +/dev/msm_ape 0660 system audio +/dev/msm_amrnb 0660 system audio +/dev/msm_amrwb 0660 system audio +/dev/msm_amrwbplus 0660 system audio +/dev/msm_aac 0660 system audio +/dev/msm_multi_aac 0660 system audio +/dev/msm_aac_in 0660 system audio +/dev/msm_qcelp_in 0660 system audio +/dev/msm_evrc_in 0660 system audio +/dev/msm_amrnb_in 0660 system audio +/dev/msm_amrwb_in 0660 system audio +/dev/msm_a2dp_in 0660 system audio +/dev/msm_ac3 0660 system audio +/dev/msm_audio_cal 0660 system audio +/dev/msm_hweffects 0660 system audio +/dev/msm_cad 0660 system audio +/dev/msm_fm 0660 system audio +/dev/msm_mvs 0660 system audio +/dev/msm_pcm_lp_dec 0660 system audio +/dev/msm_preproc_ctl 0660 system audio +/dev/msm_rtac 0660 system audio +/dev/msm_voicememo 0660 system audio +/dev/ttyHSL1 0660 system system +/dev/ttyHS1 0660 system system +/dev/mdm 0660 system radio +/sys/devices/virtual/smdpkt/smdcntl* open_timeout 0664 radio radio +/dev/sdio_tty_ciq_00 0660 system system +/dev/tty_sdio_00 0660 system system +/dev/ttyGS0 0660 system system +/dev/i2c-5 0660 media media +/dev/avtimer 0660 system audio +/dev/spidev2.0 0660 system audio +/dev/spidev22.0 0660 system audio + +# DVB devices +/dev/dvb/adapter0/demux* 0440 media media +/dev/dvb/adapter0/dvr* 0660 media media +/dev/dvb/adapter0/video* 0660 media media + +# Broadcast devices +/dev/tsc_mux0 0660 media media +/dev/tsc_ci0 0660 media media + +# sensors +/dev/sensors 0660 system system +/sys/devices/i2c-12/12-* pollrate_ms 0664 system system +/sys/devices/f9925000.i2c/i2c-0/0-* enable 0660 input system +/sys/devices/f9925000.i2c/i2c-0/0-* poll_delay 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* enable 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* poll_delay 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* enable_wakeup 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* max_latency 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* flush 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* calibrate 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* enable 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* poll_delay 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* enable_wakeup 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* max_latency 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* flush 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* calibrate 0660 input system +/sys/devices/virtual/optical_sensors/proximity ps_adc 0660 input system +/sys/devices/virtual/optical_sensors/proximity ps_poll_delay 0660 input system +/sys/devices/virtual/optical_sensors/lightsensor ls_auto 0660 input system +/sys/devices/virtual/optical_sensors/lightsensor ls_poll_delay 0660 input system +/sys/devices/virtual/input/input* poll 0660 input system +/sys/devices/virtual/input/input* pollrate_ms 0660 input system +/sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input* secure_touch 0440 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-0038/input/input* secure_touch 0440 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-0038/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-004b/input/input* secure_touch 0440 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-004b/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/soc/c179000.i2c/i2c-5/5-0020/input/input* secure_touch 0440 system drmrpc +/sys/devices/soc/c179000.i2c/i2c-5/5-0020/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/platform/soc/a98000.i2c/i2c-2/2-0020/input/input* secure_touch 0440 system drmrpc +/sys/devices/platform/soc/a98000.i2c/i2c-2/2-0020/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/platform/soc/a84000.i2c/i2c-2/2-0020/input/input* secure_touch 0440 system drmrpc +/sys/devices/platform/soc/a84000.i2c/i2c-2/2-0020/input/input* secure_touch_enable 0660 system drmrpc + +# GNSS Device premissions +/dev/gnss_sirf 0660 gps gps + +# laser sensor access +/sys/devices/virtual/input/input* enable_ps_sensor 0660 system input +/sys/devices/virtual/input/input* set_delay_ms 0660 system input +/sys/devices/virtual/input/input* do_flush 0660 system input + +# vm_bms +/dev/vm_bms 0660 system system +/dev/battery_data 0660 system system + +# wlan +/dev/wcnss_wlan 0660 system system +/dev/wcnss_ctrl 0660 system system +/sys/devices/soc/600000.qcom,pcie/pci0000:00/0000:00:00.0/0000:01:00.0/net/wlan0/queues/rx-* rps_cpus 0660 system system +/sys/devices/soc/600000.qcom,pcie/pci0000:00/0000:00:00.0/0000:01:00.0/net/p2p0/queues/rx-* rps_cpus 0660 system system + +# wigig +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/wil6210/fst_link_loss 0660 wifi wifi +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/wil6210/thermal_throttling 0660 system system +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/wil6210/snr_thresh 0660 wifi wifi +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/net/wigig0/queues/rx-0/rps_cpus 0660 system system +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/net/wigig0/gro_flush_timeout 0660 system system +/sys/devices/virtual/net/bond0 queues/rx-0/rps_cpus 0660 system system + +#nfc permissions +/dev/nfc-nci 0660 nfc nfc +/dev/nq-nci 0660 nfc nfc +/dev/assd 0660 nfc nfc + +# UIO devices +/dev/uio0 0660 system system +/dev/uio1 0660 system system +/dev/uio2 0660 system system + +# SSR devices +/dev/subsys_* 0640 system system + +# Ultrasound device +/dev/usf1 0660 system system + +# Ramdump devices +/dev/ramdump* 0640 system system + +# Fingerprint device +/dev/qbt* 0660 system system +/sys/class/fts/touch_aoi aoi_set 0660 root system +/sys/class/fts/touch_aoi power_set 0660 root system + +#ImproveTouch device +/dev/hbtp_input 0660 system system +/dev/hbtp_vm 0660 system system + +# Add device block for FRP +/dev/block/platform/soc/7824900.sdhci/by-name/config 0600 system system +/dev/block/platform/soc/7464900.sdhci/by-name/frp 0600 system system +/dev/block/platform/soc/624000.ufshc/by-name/frp 0600 system system +/dev/block/platform/soc/1da4000.ufshc/by-name/frp 0600 system system +/dev/block/platform/soc/c0c4000.sdhci/by-name/frp 0600 system system +/dev/block/platform/soc/1d84000.ufshc/by-name/frp 0600 system system +/dev/block/platform/soc/7c4000.sdhci/by-name/frp 0600 system system +/dev/block/platform/soc/4744000.sdhci/by-name/frp 0600 system system +/dev/block/platform/soc/4804000.ufshc/by-name/frp 0600 system system + +# This is temporary while using SD card for initial bring-up +/dev/block/platform/soc/8804000.sdhci/by-name/frp 0600 system system + +# Kmsg device +/dev/kmsg 0620 root system + +# LED class devices +/sys/class/leds/red delay_on 0640 system system +/sys/class/leds/red delay_off 0640 system system +/sys/class/leds/red breath 0640 system system +/sys/class/leds/red trigger 0640 system system +/sys/class/leds/green delay_on 0640 system system +/sys/class/leds/green delay_off 0640 system system +/sys/class/leds/green breath 0640 system system +/sys/class/leds/green trigger 0640 system system +/sys/class/leds/blue delay_on 0640 system system +/sys/class/leds/blue delay_off 0640 system system +/sys/class/leds/blue breath 0640 system system +/sys/class/leds/blue trigger 0640 system system + +# NPU device +/dev/msm_npu 0644 system system + +# USB role switch +/sys/class/dual_role_usb/* data_role 0660 system system +/sys/class/dual_role_usb/* power_role 0660 system system +/sys/class/dual_role_usb/* mode 0660 system system + +#Memory Offline +/sys/devices/system/memory/memory* state 0660 system system + +/sys/devices/virtual/hdcp/msm_hdcp min_level_change 0664 system graphics + +# sys-fs display +/sys/class/graphics/fb* hpd 0664 system graphics +/sys/class/graphics/fb* res_info 0664 system graphics +/sys/class/graphics/fb* vendor_name 0664 system graphics +/sys/class/graphics/fb* product_description 0664 system graphics +/sys/class/graphics/fb* video_mode 0664 system graphics +/sys/class/graphics/fb* format_3d 0664 system graphics +/sys/class/graphics/fb* s3d_mode 0664 system graphics +/sys/class/graphics/fb* dynamic_fps 0664 system graphics +/sys/class/graphics/fb* msm_fb_dfps_mode 0664 system graphics +/sys/class/graphics/fb* hdr_stream 0664 system graphics +/sys/class/graphics/fb* cec/enable 0664 system graphics +/sys/class/graphics/fb* cec/logical_addr 0664 system graphics +/sys/class/graphics/fb* cec/rd_msg 0664 system graphics +/sys/class/graphics/fb* pa 0664 system graphics +/sys/class/graphics/fb* cec/wr_msg 0600 system graphics +/sys/class/graphics/fb* hdcp/tp 0664 system graphics +/sys/class/graphics/fb* hdcp2p2/min_level_change 0660 system graphics +/sys/class/graphics/fb* hdmi_audio_cb 0600 audioserver audio + +/sys/class/graphics/fb* lineptr_value 0664 system graphics +/sys/class/graphics/fb* msm_fb_persist_mode 0664 system graphics + +/sys/class/graphics/fb0 idle_time 0664 system graphics +/sys/class/graphics/fb0 dynamic_fps 0664 system graphics +/sys/class/graphics/fb0 dyn_pu 0664 system graphics +/sys/class/graphics/fb0 modes 0664 system graphics +/sys/class/graphics/fb0 mode 0664 system graphics +/sys/class/graphics/fb0 msm_cmd_autorefresh_en 0664 system graphics +*/ + +/sys/devices/platform/soc/ae00000.qcom,mdss_mdp power/control 0664 system graphics + +#asm330 sensor +#common sensors files +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* buffer/enable 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* buffer/length 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* buffer/watermark 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* discharded_samples 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* current_timestamp_clock 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* hwfifo_flush 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* hwfifo_watermark 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* hwfifo_watermark_max 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* mount_matrix 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* name 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* sampling_frequency 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* sampling_frequency_available 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_timestamp_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_timestamp_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_timestamp_type 0664 system system + +# standard iio accel attributes +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_scale_available 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_x_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_x_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_y_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_y_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_z_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_z_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_x_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_x_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_x_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_y_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_y_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_y_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_z_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_z_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_z_type 0664 system system + +# standard iio gyro attributes +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_scale_available 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_x_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_x_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_y_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_y_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_z_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_z_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_x_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_x_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_x_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_y_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_y_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_y_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_z_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_z_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_z_type 0664 system system + + +# standard iio temp attributes +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_offset 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_scale_available 0664 system system + +# mius iio devices +/dev/iio:device* 0660 system system +/sys/bus/iio/devices/iio:device* buffer/enable 0600 system system +/sys/bus/iio/devices/iio:device* scan_elements/in_proximity_en 0600 system system +/sys/bus/iio/devices/iio:device* scan_elements/in_timestamp_en 0600 system system diff --git a/recovery/root/vendor/etc/vintf/manifest.xml b/recovery/root/vendor/etc/vintf/manifest.xml new file mode 100644 index 0000000..1edb4f6 --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest.xml @@ -0,0 +1,576 @@ + + + + android.hardware.audio + hwbinder + 6.0 + + IDevicesFactory + default + + @6.0::IDevicesFactory/default + + + android.hardware.audio.effect + hwbinder + 6.0 + + IEffectsFactory + default + + @6.0::IEffectsFactory/default + + + android.hardware.bluetooth + hwbinder + 1.0 + + IBluetoothHci + default + + @1.0::IBluetoothHci/default + + + android.hardware.bluetooth.audio + hwbinder + 2.0 + + IBluetoothAudioProvidersFactory + default + + @2.0::IBluetoothAudioProvidersFactory/default + + + android.hardware.camera.provider + hwbinder + 2.4 + + ICameraProvider + legacy/0 + + @2.4::ICameraProvider/legacy/0 + + + android.hardware.drm + hwbinder + @1.3::ICryptoFactory/wfdhdcp + @1.3::IDrmFactory/wfdhdcp + + + android.hardware.gatekeeper + hwbinder + 1.0 + + IGatekeeper + default + + @1.0::IGatekeeper/default + + + android.hardware.keymaster + hwbinder + @4.1::IKeymasterDevice/default + + + android.hardware.media.omx + hwbinder + 1.0 + + IOmx + default + + + IOmxStore + default + + @1.0::IOmx/default + @1.0::IOmxStore/default + + + android.hardware.memtrack + hwbinder + 1.0 + + IMemtrack + default + + @1.0::IMemtrack/default + + + android.hardware.radio.config + hwbinder + 1.1 + + IRadioConfig + default + + @1.1::IRadioConfig/default + + + android.hardware.soundtrigger + hwbinder + 2.3 + + ISoundTriggerHw + default + + @2.3::ISoundTriggerHw/default + + + android.hardware.tetheroffload.config + hwbinder + 1.0 + + IOffloadConfig + default + + @1.0::IOffloadConfig/default + + + android.hardware.tetheroffload.control + hwbinder + 1.0 + + IOffloadControl + default + + @1.0::IOffloadControl/default + + + com.qualcomm.qti.dpm.api + hwbinder + 1.0 + + IdpmQmi + dpmQmiService + + @1.0::IdpmQmi/dpmQmiService + + + com.qualcomm.qti.imscmservice + hwbinder + 2.2 + + IImsCmService + qti.ims.connectionmanagerservice + + @2.2::IImsCmService/qti.ims.connectionmanagerservice + + + com.qualcomm.qti.uceservice + hwbinder + 2.3 + + IUceService + com.qualcomm.qti.uceservice + + @2.3::IUceService/com.qualcomm.qti.uceservice + + + vendor.qti.data.factory + hwbinder + 2.3 + + IFactory + default + + @2.3::IFactory/default + + + vendor.qti.esepowermanager + hwbinder + 1.1 + + IEsePowerManager + default + + @1.1::IEsePowerManager/default + + + vendor.qti.hardware.alarm + hwbinder + 1.0 + + IAlarm + default + + @1.0::IAlarm/default + + + vendor.qti.hardware.bluetooth_audio + hwbinder + 2.1 + + IBluetoothAudioProvidersFactory + default + + @2.1::IBluetoothAudioProvidersFactory/default + + + vendor.qti.hardware.bluetooth_sar + hwbinder + 1.1 + + IBluetoothSar + default + + @1.1::IBluetoothSar/default + + + vendor.qti.hardware.btconfigstore + hwbinder + 2.0 + + IBTConfigStore + default + + @2.0::IBTConfigStore/default + + + vendor.qti.hardware.cacert + hwbinder + 1.0 + + IService + default + + @1.0::IService/default + + + vendor.qti.hardware.camera.postproc + hwbinder + 1.0 + + IPostProcService + camerapostprocservice + + @1.0::IPostProcService/camerapostprocservice + + + vendor.qti.hardware.capabilityconfigstore + hwbinder + 1.0 + + ICapabilityConfigStore + default + + @1.0::ICapabilityConfigStore/default + + + vendor.qti.hardware.data.latency + hwbinder + 1.0 + + ILinkLatency + default + + @1.0::ILinkLatency/default + + + vendor.qti.hardware.dsp + hwbinder + 1.0 + + IDspService + dspservice + + @1.0::IDspService/dspservice + + + vendor.qti.hardware.eid + hwbinder + 1.0 + + IEid + default + + @1.0::IEid/default + + + vendor.qti.hardware.embmssl + hwbinder + 1.1 + + IEmbms + embmsslServer0 + + @1.1::IEmbms/embmsslServer0 + + + vendor.qti.hardware.factory + hwbinder + 1.1 + + IFactory + default + + @1.1::IFactory/default + + + vendor.qti.hardware.fstman + hwbinder + 1.0 + + IFstManager + default + + @1.0::IFstManager/default + + + vendor.qti.hardware.iop + hwbinder + 2.0 + + IIop + default + + @2.0::IIop/default + + + vendor.qti.hardware.mwqemadapter + hwbinder + 1.0 + + IMwqemAdapter + MwqemAdapter + + @1.0::IMwqemAdapter/MwqemAdapter + + + vendor.qti.hardware.perf + hwbinder + 2.2 + + IPerf + default + + @2.2::IPerf/default + + + vendor.qti.hardware.qccvndhal + hwbinder + 1.0 + + IQccvndhal + qccvndhal + + @1.0::IQccvndhal/qccvndhal + + + vendor.qti.hardware.qconfig + hwbinder + 1.0 + + IQConfig + default + + @1.0::IQConfig/default + + + vendor.qti.hardware.qseecom + hwbinder + 1.0 + + IQSEECom + default + + @1.0::IQSEECom/default + + + vendor.qti.hardware.qteeconnector + hwbinder + 1.0 + + IAppConnector + default + + + IGPAppConnector + default + + @1.0::IAppConnector/default + @1.0::IGPAppConnector/default + + + vendor.qti.hardware.radio.internal.deviceinfo + hwbinder + 1.0 + + IDeviceInfo + deviceinfo + + @1.0::IDeviceInfo/deviceinfo + + + vendor.qti.hardware.secureprocessor.device + hwbinder + 1.0 + + ISecureProcessor + qti-tee + + @1.0::ISecureProcessor/qti-tee + + + vendor.qti.hardware.sensorscalibrate + hwbinder + 1.0 + + ISensorsCalibrate + default + + @1.0::ISensorsCalibrate/default + + + vendor.qti.hardware.soter + hwbinder + 1.0 + + ISoter + default + + @1.0::ISoter/default + + + vendor.qti.hardware.tui_comm + hwbinder + 1.0 + + ITuiComm + default + + @1.0::ITuiComm/default + + + vendor.qti.hardware.vpp + hwbinder + 2.0 + + IHidlVppService + vppService + + @2.0::IHidlVppService/vppService + + + vendor.qti.hardware.wifi.wifilearner + hwbinder + 1.0 + + IWifiStats + wifiStats + + @1.0::IWifiStats/wifiStats + + + vendor.qti.hardware.wifidisplaysession + hwbinder + 1.0 + + IWifiDisplaySession + wifidisplaysession + + + IWifiDisplaySessionAudioTrack + wifidisplaysessionaudiotrack + + + IWifiDisplaySessionImageTrack + wifidisplaysessionimagetrack + + + IWifiDisplaySessionVideoTrack + wifidisplaysessionvideotrack + + @1.0::IWifiDisplaySession/wifidisplaysession + @1.0::IWifiDisplaySessionAudioTrack/wifidisplaysessionaudiotrack + @1.0::IWifiDisplaySessionImageTrack/wifidisplaysessionimagetrack + @1.0::IWifiDisplaySessionVideoTrack/wifidisplaysessionvideotrack + + + vendor.qti.ims.callinfo + hwbinder + 1.0 + + IService + default + + @1.0::IService/default + + + vendor.qti.ims.factory + hwbinder + 1.1 + + IImsFactory + default + + @1.1::IImsFactory/default + + + vendor.qti.imsrtpservice + hwbinder + 3.0 + + IRTPService + imsrtpservice + + @3.0::IRTPService/imsrtpservice + + + vendor.qti.qspmhal + hwbinder + 1.0 + + IQspmhal + default + + @1.0::IQspmhal/default + + + vendor.qti.sla.service + hwbinder + 1.0 + + ISlaService + default + + @1.0::ISlaService/default + + + vendor.xiaomi.hardware.cameraperf + hwbinder + 1.0 + + IMiCameraPerfService + default + + @1.0::IMiCameraPerfService/default + + + vendor.xiaomi.hardware.campostproc + hwbinder + 1.0 + + IMiPostProcService + default + + @1.0::IMiPostProcService/default + + + vendor.xiaomi.hardware.displayfeature + hwbinder + 1.0 + + IDisplayFeature + default + + @1.0::IDisplayFeature/default + + + 30.0 + + + diff --git a/recovery/root/vendor/etc/vintf/manifest/android.hardware.boot@1.1.xml b/recovery/root/vendor/etc/vintf/manifest/android.hardware.boot@1.1.xml new file mode 100644 index 0000000..83d5d2e --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest/android.hardware.boot@1.1.xml @@ -0,0 +1,7 @@ + + + android.hardware.boot + hwbinder + @1.1::IBootControl/default + + diff --git a/recovery/root/vendor/etc/vintf/manifest/android.hardware.boot@1.2.xml b/recovery/root/vendor/etc/vintf/manifest/android.hardware.boot@1.2.xml new file mode 100644 index 0000000..ba91e8f --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest/android.hardware.boot@1.2.xml @@ -0,0 +1,7 @@ + + + android.hardware.boot + hwbinder + @1.2::IBootControl/default + + diff --git a/recovery/root/vendor/etc/vintf/manifest/android.hardware.health@2.1.xml b/recovery/root/vendor/etc/vintf/manifest/android.hardware.health@2.1.xml new file mode 100644 index 0000000..34fdca6 --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest/android.hardware.health@2.1.xml @@ -0,0 +1,7 @@ + + + android.hardware.health + hwbinder + @2.1::IHealth/default + + diff --git a/recovery/root/vendor/etc/vintf/manifest/android.hardware.usb@1.2-service.xml b/recovery/root/vendor/etc/vintf/manifest/android.hardware.usb@1.2-service.xml new file mode 100644 index 0000000..3af5c1f --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest/android.hardware.usb@1.2-service.xml @@ -0,0 +1,39 @@ + + + + android.hardware.usb + hwbinder + 1.2 + + IUsb + default + + @1.2::IUsb/default + + diff --git a/recovery/root/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.clearkey.xml b/recovery/root/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.clearkey.xml new file mode 100644 index 0000000..229ee96 --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.clearkey.xml @@ -0,0 +1,23 @@ + + + + + android.hardware.drm + hwbinder + @1.3::ICryptoFactory/clearkey + @1.3::IDrmFactory/clearkey + + diff --git a/recovery/root/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.widevine.xml b/recovery/root/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.widevine.xml new file mode 100644 index 0000000..f6f2d88 --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.widevine.xml @@ -0,0 +1,23 @@ + + + + + android.hardware.drm + hwbinder + @1.3::ICryptoFactory/widevine + @1.3::IDrmFactory/widevine + + diff --git a/recovery/root/vendor/etc/vintf/manifest/power.xml b/recovery/root/vendor/etc/vintf/manifest/power.xml new file mode 100644 index 0000000..016665e --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest/power.xml @@ -0,0 +1,33 @@ + + + + android.hardware.power + IPower/default + + \ No newline at end of file diff --git a/recovery/root/vendor/etc/vintf/manifest/vendor.qti.hardware.vibrator.service.xml b/recovery/root/vendor/etc/vintf/manifest/vendor.qti.hardware.vibrator.service.xml new file mode 100644 index 0000000..df29ada --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest/vendor.qti.hardware.vibrator.service.xml @@ -0,0 +1,33 @@ + + + + android.hardware.vibrator + IVibrator/default + + diff --git a/recovery/root/vendor/etc/vintf/manifest/vendor.xiaomi.hw.touchfeature@1.0-service.xml b/recovery/root/vendor/etc/vintf/manifest/vendor.xiaomi.hw.touchfeature@1.0-service.xml new file mode 100644 index 0000000..896e3e4 --- /dev/null +++ b/recovery/root/vendor/etc/vintf/manifest/vendor.xiaomi.hw.touchfeature@1.0-service.xml @@ -0,0 +1,11 @@ + + + vendor.xiaomi.hw.touchfeature + hwbinder + 1.0 + + ITouchFeature + default + + + diff --git a/recovery/root/vendor/firmware/auo_novatek_ts_fw.bin b/recovery/root/vendor/firmware/auo_novatek_ts_fw.bin new file mode 100644 index 0000000..2d16644 Binary files /dev/null and b/recovery/root/vendor/firmware/auo_novatek_ts_fw.bin differ diff --git a/recovery/root/vendor/firmware/auo_novatek_ts_mp.bin b/recovery/root/vendor/firmware/auo_novatek_ts_mp.bin new file mode 100644 index 0000000..de83766 Binary files /dev/null and b/recovery/root/vendor/firmware/auo_novatek_ts_mp.bin differ diff --git a/recovery/root/vendor/firmware/bod_novatek_ts_fw.bin b/recovery/root/vendor/firmware/bod_novatek_ts_fw.bin new file mode 100644 index 0000000..34bee0e Binary files /dev/null and b/recovery/root/vendor/firmware/bod_novatek_ts_fw.bin differ diff --git a/recovery/root/vendor/firmware/bod_novatek_ts_mp.bin b/recovery/root/vendor/firmware/bod_novatek_ts_mp.bin new file mode 100644 index 0000000..292bea7 Binary files /dev/null and b/recovery/root/vendor/firmware/bod_novatek_ts_mp.bin differ diff --git a/recovery/root/vendor/firmware/boe_novatek_ts_fw.bin b/recovery/root/vendor/firmware/boe_novatek_ts_fw.bin new file mode 100644 index 0000000..34bee0e Binary files /dev/null and b/recovery/root/vendor/firmware/boe_novatek_ts_fw.bin differ diff --git a/recovery/root/vendor/firmware/boe_novatek_ts_mp.bin b/recovery/root/vendor/firmware/boe_novatek_ts_mp.bin new file mode 100644 index 0000000..292bea7 Binary files /dev/null and b/recovery/root/vendor/firmware/boe_novatek_ts_mp.bin differ diff --git a/recovery/root/vendor/firmware/novatek_ts_fw.bin b/recovery/root/vendor/firmware/novatek_ts_fw.bin new file mode 100644 index 0000000..c093b96 Binary files /dev/null and b/recovery/root/vendor/firmware/novatek_ts_fw.bin differ diff --git a/recovery/root/vendor/firmware/novatek_ts_mp.bin b/recovery/root/vendor/firmware/novatek_ts_mp.bin new file mode 100644 index 0000000..c093b96 Binary files /dev/null and b/recovery/root/vendor/firmware/novatek_ts_mp.bin differ diff --git a/recovery/root/vendor/lib64/hw/android.hardware.gatekeeper@1.0-impl-qti.so b/recovery/root/vendor/lib64/hw/android.hardware.gatekeeper@1.0-impl-qti.so new file mode 100644 index 0000000..dac8cda Binary files /dev/null and b/recovery/root/vendor/lib64/hw/android.hardware.gatekeeper@1.0-impl-qti.so differ diff --git a/recovery/root/vendor/lib64/libGPreqcancel.so b/recovery/root/vendor/lib64/libGPreqcancel.so new file mode 100644 index 0000000..6cb0bc5 Binary files /dev/null and b/recovery/root/vendor/lib64/libGPreqcancel.so differ diff --git a/recovery/root/vendor/lib64/libGPreqcancel_svc.so b/recovery/root/vendor/lib64/libGPreqcancel_svc.so new file mode 100644 index 0000000..6b71422 Binary files /dev/null and b/recovery/root/vendor/lib64/libGPreqcancel_svc.so differ diff --git a/recovery/root/vendor/lib64/libQSEEComAPI.so b/recovery/root/vendor/lib64/libQSEEComAPI.so new file mode 100644 index 0000000..009c66d Binary files /dev/null and b/recovery/root/vendor/lib64/libQSEEComAPI.so differ diff --git a/recovery/root/vendor/lib64/libdiag.so b/recovery/root/vendor/lib64/libdiag.so new file mode 100644 index 0000000..e9d7d25 Binary files /dev/null and b/recovery/root/vendor/lib64/libdiag.so differ diff --git a/recovery/root/vendor/lib64/libdrm.so b/recovery/root/vendor/lib64/libdrm.so new file mode 100644 index 0000000..f2cdacc Binary files /dev/null and b/recovery/root/vendor/lib64/libdrm.so differ diff --git a/recovery/root/vendor/lib64/libdrmfs.so b/recovery/root/vendor/lib64/libdrmfs.so new file mode 100644 index 0000000..c49e68a Binary files /dev/null and b/recovery/root/vendor/lib64/libdrmfs.so differ diff --git a/recovery/root/vendor/lib64/libdrmtime.so b/recovery/root/vendor/lib64/libdrmtime.so new file mode 100644 index 0000000..c940c91 Binary files /dev/null and b/recovery/root/vendor/lib64/libdrmtime.so differ diff --git a/recovery/root/vendor/lib64/libkeymasterdeviceutils.so b/recovery/root/vendor/lib64/libkeymasterdeviceutils.so new file mode 100644 index 0000000..4bb52be Binary files /dev/null and b/recovery/root/vendor/lib64/libkeymasterdeviceutils.so differ diff --git a/recovery/root/vendor/lib64/libkeymasterprovision.so b/recovery/root/vendor/lib64/libkeymasterprovision.so new file mode 100644 index 0000000..91ca1d9 Binary files /dev/null and b/recovery/root/vendor/lib64/libkeymasterprovision.so differ diff --git a/recovery/root/vendor/lib64/libkeymasterutils.so b/recovery/root/vendor/lib64/libkeymasterutils.so new file mode 100644 index 0000000..27bc914 Binary files /dev/null and b/recovery/root/vendor/lib64/libkeymasterutils.so differ diff --git a/recovery/root/vendor/lib64/libops.so b/recovery/root/vendor/lib64/libops.so new file mode 100644 index 0000000..c901b3e Binary files /dev/null and b/recovery/root/vendor/lib64/libops.so differ diff --git a/recovery/root/vendor/lib64/libqcbor.so b/recovery/root/vendor/lib64/libqcbor.so new file mode 100644 index 0000000..016600f Binary files /dev/null and b/recovery/root/vendor/lib64/libqcbor.so differ diff --git a/recovery/root/vendor/lib64/libqdutils.so b/recovery/root/vendor/lib64/libqdutils.so new file mode 100644 index 0000000..bc2b81a Binary files /dev/null and b/recovery/root/vendor/lib64/libqdutils.so differ diff --git a/recovery/root/vendor/lib64/libqisl.so b/recovery/root/vendor/lib64/libqisl.so new file mode 100644 index 0000000..a56a422 Binary files /dev/null and b/recovery/root/vendor/lib64/libqisl.so differ diff --git a/recovery/root/vendor/lib64/libqservice.so b/recovery/root/vendor/lib64/libqservice.so new file mode 100644 index 0000000..3d0ff64 Binary files /dev/null and b/recovery/root/vendor/lib64/libqservice.so differ diff --git a/recovery/root/vendor/lib64/libqtikeymaster4.so b/recovery/root/vendor/lib64/libqtikeymaster4.so new file mode 100644 index 0000000..d841203 Binary files /dev/null and b/recovery/root/vendor/lib64/libqtikeymaster4.so differ diff --git a/recovery/root/vendor/lib64/librecovery_updater_msm.so b/recovery/root/vendor/lib64/librecovery_updater_msm.so new file mode 100644 index 0000000..df5e44d Binary files /dev/null and b/recovery/root/vendor/lib64/librecovery_updater_msm.so differ diff --git a/recovery/root/vendor/lib64/librpmb.so b/recovery/root/vendor/lib64/librpmb.so new file mode 100644 index 0000000..9f62d01 Binary files /dev/null and b/recovery/root/vendor/lib64/librpmb.so differ diff --git a/recovery/root/vendor/lib64/libsecureui_svcsock.so b/recovery/root/vendor/lib64/libsecureui_svcsock.so new file mode 100644 index 0000000..d8996ca Binary files /dev/null and b/recovery/root/vendor/lib64/libsecureui_svcsock.so differ diff --git a/recovery/root/vendor/lib64/libspcom.so b/recovery/root/vendor/lib64/libspcom.so new file mode 100644 index 0000000..60ef97e Binary files /dev/null and b/recovery/root/vendor/lib64/libspcom.so differ diff --git a/recovery/root/vendor/lib64/libspl.so b/recovery/root/vendor/lib64/libspl.so new file mode 100644 index 0000000..56df414 Binary files /dev/null and b/recovery/root/vendor/lib64/libspl.so differ diff --git a/recovery/root/vendor/lib64/libssd.so b/recovery/root/vendor/lib64/libssd.so new file mode 100644 index 0000000..10fc065 Binary files /dev/null and b/recovery/root/vendor/lib64/libssd.so differ diff --git a/recovery/root/vendor/lib64/libtime_genoff.so b/recovery/root/vendor/lib64/libtime_genoff.so new file mode 100644 index 0000000..0d748e1 Binary files /dev/null and b/recovery/root/vendor/lib64/libtime_genoff.so differ diff --git a/recovery/root/vendor/lib64/vendor.qti.hardware.tui_comm@1.0.so b/recovery/root/vendor/lib64/vendor.qti.hardware.tui_comm@1.0.so new file mode 100644 index 0000000..af310e1 Binary files /dev/null and b/recovery/root/vendor/lib64/vendor.qti.hardware.tui_comm@1.0.so differ diff --git a/system.prop b/system.prop new file mode 100644 index 0000000..862e4ad --- /dev/null +++ b/system.prop @@ -0,0 +1,61 @@ +# Audio +audio.offload.min.duration.secs=30 +persist.vendor.audio.hac.enable=false +persist.vendor.audio_hal.dsp_bit_width_enforce_mode=24 + +# Bluetooth +ro.bluetooth.library_name=libbluetooth_qti.so + +# Camera +camera.disable_zsl_mode=true + +# Charger +ro.charger.disable_init_blank=true + +# Display +debug.gralloc.gfx_ubwc_disable=0 +debug.sf.enable_hwc_vds=1 +debug.sf.latch_unsignaled=1 +persist.vendor.color.matrix=2 + +# CNE +persist.vendor.cne.feature=1 + +# DPM +persist.vendor.dpm.feature=11 + +# IMS +persist.dbg.volte_avail_ovr=1 +persist.dbg.vt_avail_ovr=1 +persist.dbg.wfc_avail_ovr=1 + +# IOP +vendor.iop.enable_prefetch_ofr=1 +vendor.iop.enable_uxe=0 + +# Media +media.settings.xml=/vendor/etc/media_profiles_vendor.xml + +# Perf +ro.vendor.qti.core_ctl_max_cpu=4 +ro.vendor.qti.core_ctl_min_cpu=2 + +# Radio +ro.telephony.default_network=33,33 + +# Touchscreen +persist.vendor.qti.inputopts.enable=true +persist.vendor.qti.inputopts.movetouchslop=0.6 + +# Netmgr +persist.vendor.data.iwlan.enable=true +persist.vendor.data.mode=concurrent + +# SSR +persist.vendor.ssr.restart_level=ALL_ENABLE + +# Vendor +ro.vendor.qti.va_aosp.support=1 + +# Zygote +persist.device_config.runtime_native.usap_pool_enabled=true diff --git a/twrp.dependencies b/twrp.dependencies new file mode 100644 index 0000000..7d92806 --- /dev/null +++ b/twrp.dependencies @@ -0,0 +1,14 @@ +[ + { + "remote": "LineageOS", + "repository": "android_hardware_qcom_bootctrl", + "target_path": "hardware/qcom-caf/bootctrl", + "branch": "lineage-19.1-caf" + } + { + "remote": "TeamWin", + "repository": "android_device_qcom_twrp-common", + "target_path": "device/qcom/twrp-common", + "branch": "android-12.1" + }, +] diff --git a/twrp_denver.mk b/twrp_denver.mk new file mode 100644 index 0000000..8bbea87 --- /dev/null +++ b/twrp_denver.mk @@ -0,0 +1,26 @@ +# +# Copyright (C) 2020 The Android Open Source Project +# Copyright (C) 2020 The TWRP Open Source Project +# Copyright (C) 2020 SebaUbuntu's TWRP device tree generator +# Copyright (C) 2022-juic3b0x +# + +# VNDK Level +PRODUCT_TARGET_VNDK_VERSION := 31 + +# Inherit from those products. Most specific first. +$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk) +$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base.mk) + +# Inherit from denver device +$(call inherit-product, device/motorola/denver/device.mk) + +# Inherit some common TWRP stuff. +$(call inherit-product, vendor/twrp/config/common.mk) + +# Device identifier. This must come after all inclusions +PRODUCT_DEVICE := denver +PRODUCT_NAME := twrp_denver +PRODUCT_BRAND := motorola +PRODUCT_MODEL := moto g stylus 5G +PRODUCT_MANUFACTURER := motorola diff --git a/vendor.prop b/vendor.prop new file mode 100644 index 0000000..e8d45f9 --- /dev/null +++ b/vendor.prop @@ -0,0 +1,238 @@ +# Audio +aaudio.hw_burst_min_usec=2000 +aaudio.mmap_exclusive_policy=2 +aaudio.mmap_policy=2 +persist.vendor.audio.ambisonic.auto.profile=false +persist.vendor.audio.ambisonic.capture=false +persist.vendor.audio.apptype.multirec.enabled=false +persist.vendor.audio.avs.afe_api_version=2 +persist.vendor.audio.dualmic.config=endfire +persist.vendor.audio.fluence.speaker=false +persist.vendor.audio.fluence.tmic.enabled=false +persist.vendor.audio.fluence.voicecall=true +persist.vendor.audio.fluence.voicecomm=true +persist.vendor.audio.fluence.voicerec=false +persist.vendor.audio.ha_proxy.enabled=true +persist.vendor.audio.ras.enabled=false +persist.vendor.audio.speaker.stereo=false +persist.vendor.audio.spv3.enable=true +persist.vendor.audio.voicecall.speaker.stereo=true +persist.vendor.audio_fx.current=mmi +ro.audio.monitorRotation=true +vendor.audio.adm.buffering.ms=2 +vendor.audio.dolby.ds2.enabled=false +vendor.audio.dolby.ds2.hardbypass=false +vendor.audio.enable.mirrorlink=false +vendor.audio.feature.a2dp_offload.enable=true +vendor.audio.feature.afe_proxy.enable=true +vendor.audio.feature.anc_headset.enable=false +vendor.audio.feature.audiozoom.enable=false +vendor.audio.feature.battery_listener.enable=true +vendor.audio.feature.compr_cap.enable=false +vendor.audio.feature.compr_voip.enable=false +vendor.audio.feature.compress_in.enable=true +vendor.audio.feature.compress_meta_data.enable=true +vendor.audio.feature.concurrent_capture.enable=true +vendor.audio.feature.custom_stereo.enable=true +vendor.audio.feature.deepbuffer_as_primary.enable=false +vendor.audio.feature.display_port.enable=true +vendor.audio.feature.dsm_feedback.enable=false +vendor.audio.feature.dynamic_ecns.enable=false +vendor.audio.feature.ext_hw_plugin.enable=false +vendor.audio.feature.external_dsp.enable=false +vendor.audio.feature.external_speaker.enable=false +vendor.audio.feature.external_speaker_tfa.enable=false +vendor.audio.feature.fluence.enable=true +vendor.audio.feature.fm.enable=true +vendor.audio.feature.hdmi_edid.enable=true +vendor.audio.feature.hdmi_passthrough.enable=true +vendor.audio.feature.hfp.enable=true +vendor.audio.feature.hifi_audio.enable=false +vendor.audio.feature.hwdep_cal.enable=false +vendor.audio.feature.incall_music.enable=true +vendor.audio.feature.keep_alive.enable=true +vendor.audio.feature.kpi_optimize.enable=true +vendor.audio.feature.maxx_audio.enable=false +vendor.audio.feature.multi_voice_session.enable=true +vendor.audio.feature.ras.enable=true +vendor.audio.feature.record_play_concurency.enable=false +vendor.audio.feature.snd_mon.enable=true +vendor.audio.feature.spkr_prot.enable=false +vendor.audio.feature.src_trkn.enable=true +vendor.audio.feature.ssrec.enable=true +vendor.audio.feature.usb_offload.enable=true +vendor.audio.feature.usb_offload_burst_mode.enable=true +vendor.audio.feature.usb_offload_sidetone_volume.enable=false +vendor.audio.feature.vbat.enable=true +vendor.audio.feature.wsa.enable=false +vendor.audio.flac.sw.decoder.24bit=true +vendor.audio.hal.boot.timeout.ms=20000 +vendor.audio.hal.output.suspend.supported=true +vendor.audio.hw.aac.encoder=true +vendor.audio.offload.buffer.size.kb=32 +vendor.audio.offload.gapless.enabled=true +vendor.audio.offload.multiaac.enable=true +vendor.audio.offload.multiple.enabled=false +vendor.audio.offload.passthrough=false +vendor.audio.offload.track.enable=true +vendor.audio.parser.ip.buffer.size=262144 +vendor.audio.safx.pbe.enabled=false +vendor.audio.snd_card.open.retries=50 +vendor.audio.spkr_prot.tx.sampling_rate=48000 +vendor.audio.tunnel.encode=false +vendor.audio.use.sw.alac.decoder=false +vendor.audio.use.sw.ape.decoder=false +vendor.audio.use.sw.mpegh.decoder=true +vendor.audio.volume.headset.gain.depcal=true +vendor.audio_hal.in_period_size=144 +vendor.audio_hal.period_multiplier=3 +vendor.audio_hal.period_size=240 + +# Bluetooth +persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac-lc3 +persist.bluetooth.a2dp_offload.disabled=false +persist.sys.fflag.override.settings_bluetooth_hearing_aid=true +persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac +persist.vendor.bt.aac_frm_ctl.enabled=true +persist.vendor.bt.aac_vbr_frm_ctl.enabled=true +persist.vendor.oneplus.bt.asd.chain=0 +persist.vendor.oneplus.bt.asd.firmware=false +persist.vendor.qcom.bluetooth.a2dp_mcast_test.enabled=false +persist.vendor.qcom.bluetooth.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac-aptxadaptiver2 +persist.vendor.qcom.bluetooth.aac_frm_ctl.enabled=true +persist.vendor.qcom.bluetooth.aac_vbr_ctl.enabled=true +persist.vendor.qcom.bluetooth.enable.splita2dp=true +persist.vendor.qcom.bluetooth.scram.enabled=false +persist.vendor.qcom.bluetooth.soc=hastings +persist.vendor.qcom.bluetooth.twsp_state.enabled=false +ro.bluetooth.a2dp_offload.supported=true +ro.vendor.bluetooth.wipower=false +vendor.qcom.bluetooth.soc=hastings + +# Camera +persist.vendor.camera.privapp.list=org.codeaurora.snapcam,com.motorola.camera3,com.motorola.motocit +vendor.arcsoft.sn_isHardCopy=0 +vendor.camera.algo.jpeghwencode=1 +vendor.camera.aux.packagelist=org.codeaurora.snapcam,com.motorola.camera3,com.motorola.motocit + +# Crypto +ro.crypto.allow_encrypt_override=true +ro.crypto.dm_default_key.options_format.version=2 +ro.crypto.volume.filenames_mode=aes-256-cts +ro.crypto.volume.metadata.method=dm-default-key + +# Display +ro.vendor.display.sensortype=2 +vendor.display.comp_mask=0 +vendor.display.disable_excl_rect=0 +vendor.display.disable_excl_rect_partial_fb=1 +vendor.display.disable_hw_recovery_dump=1 +vendor.display.disable_offline_rotator=1 +vendor.display.disable_scaler=0 +vendor.display.enable_async_powermode=0 +vendor.display.enable_early_wakeup=1 +vendor.display.enable_optimize_refresh=1 +vendor.display.enable_posted_start_dyn=1 +vendor.display.use_layer_ext=1 +vendor.display.use_smooth_motion=1 + +# DRM +drm.service.enabled=true + +# Fingerprint +persist.vendor.qfp=true + +# FRP +ro.frp.pst=/dev/block/bootdevice/by-name/frp + +# Gatekeeper +vendor.gatekeeper.disable_spu=true + +# GPS +persist.backup.ntpServer=0.pool.ntp.org + +# Graphics +debug.egl.hw=0 +debug.mdpcomp.logs=0 +debug.sf.enable_advanced_sf_phase_offset=1 +debug.sf.enable_gl_backpressure=1 +debug.sf.high_fps_early_gl_phase_offset_ns=-4000000 +debug.sf.high_fps_early_phase_offset_ns=-4000000 +debug.sf.high_fps_late_app_phase_offset_ns=1000000 +debug.sf.high_fps_late_sf_phase_offset_ns=-4000000 +debug.sf.hw=0 +debug.sf.latch_unsignaled=1 +persist.demo.hdmirotationlock=false +persist.sys.sf.color_mode=0 +persist.sys.sf.color_saturation=1.0 +persist.sys.sf.native_mode=0 +ro.gfx.driver.0=com.oneplus.gpudrivers.holi.api30 +ro.gfx.driver.1=com.qualcomm.qti.gpudrivers.holi.api30 +ro.hardware.egl=adreno +ro.hardware.vulkan=adreno +ro.opengles.version=196610 +vendor.gralloc.disable_ubwc=0 + +# Incremental FS +ro.incremental.enable=true + +# Keystore +ro.hardware.keystore_desede=true + +# Media +debug.stagefright.ccodec=4 +debug.stagefright.omx_default_rank=0 + +# NFC +ro.camera.notify_nfc=1 + +# OTG +persist.sys.oem.otg_support=true + +# PASR +vendor.power.pasr.enabled=false + +# Perf +ro.vendor.extension_library=libqti-perfd-client.so + +# Qualcomm System Daemon +persist.vendor.qcomsysd.enabled=1 + +# Radio +persist.radio.snapshot_enabled=0 +persist.radio.snapshot_timer=0 +persist.rcs.otp_sms_port=0 +persist.rcs.supported=1 +persist.vendor.data.iwlan.enable=true +persist.vendor.radio.5g_mode_pref=1 +persist.vendor.radio.apm_sim_not_pwdn=1 +persist.vendor.radio.arfcn_test_mode=3 +persist.vendor.radio.bar_fake_gcell=1 +persist.vendor.radio.custom_ecc=1 +persist.vendor.radio.data_con_rprt=1 +persist.vendor.radio.data_ltd_sys_ind=1 +persist.vendor.radio.efssync=true +persist.vendor.radio.enableadvancedscan=true +persist.vendor.radio.force_on_dc=true +persist.vendor.radio.ignore_dom_time=10 +persist.vendor.radio.procedure_bytes=SKIP +persist.vendor.radio.process_sups_ind=1 +persist.vendor.radio.rat_on=combine +persist.vendor.radio.sib16_support=1 +persist.vendor.radio.uicc_se_enabled=true +ro.com.android.dataroaming=false + +# Sensors +persist.vendor.sensors.allow_non_default_discovery=true +persist.vendor.sensors.on_change_sample_period=true +persist.vendor.sensors.sync_request=true + +# Shutdown +sys.vendor.shutdown.waittime=500 + +# USB +vendor.usb.diag.func.name=ffs +vendor.usb.use_ffs_mtp=1 + +# WiFi +wifi.aware.interface=wifi-aware0