├── .gitignore ├── recovery └── root │ ├── vendor │ ├── odm │ │ ├── etc │ │ │ ├── ueventd.rc │ │ │ ├── aac_richtap.config │ │ │ ├── vibrator │ │ │ │ ├── 9999 │ │ │ │ │ ├── def │ │ │ │ │ │ ├── effect_0.bin │ │ │ │ │ │ ├── effect_1.bin │ │ │ │ │ │ ├── effect_2.bin │ │ │ │ │ │ ├── effect_3.bin │ │ │ │ │ │ ├── effect_4.bin │ │ │ │ │ │ ├── effect_5.bin │ │ │ │ │ │ ├── effect_6.bin │ │ │ │ │ │ ├── effect_7.bin │ │ │ │ │ │ ├── effect_8.bin │ │ │ │ │ │ ├── effect_9.bin │ │ │ │ │ │ ├── effect_10.bin │ │ │ │ │ │ ├── effect_100.bin │ │ │ │ │ │ ├── effect_101.bin │ │ │ │ │ │ ├── effect_102.bin │ │ │ │ │ │ ├── effect_103.bin │ │ │ │ │ │ ├── effect_104.bin │ │ │ │ │ │ ├── effect_105.bin │ │ │ │ │ │ ├── effect_106.bin │ │ │ │ │ │ ├── effect_107.bin │ │ │ │ │ │ ├── effect_108.bin │ │ │ │ │ │ ├── effect_109.bin │ │ │ │ │ │ ├── effect_11.bin │ │ │ │ │ │ ├── effect_110.bin │ │ │ │ │ │ ├── effect_111.bin │ │ │ │ │ │ ├── effect_112.bin │ │ │ │ │ │ ├── effect_118.bin │ │ │ │ │ │ ├── effect_12.bin │ │ │ │ │ │ ├── effect_122.bin │ │ │ │ │ │ ├── effect_170.bin │ │ │ │ │ │ ├── effect_302.bin │ │ │ │ │ │ ├── effect_303.bin │ │ │ │ │ │ ├── effect_304.bin │ │ │ │ │ │ ├── effect_305.bin │ │ │ │ │ │ ├── effect_308.bin │ │ │ │ │ │ ├── effect_309.bin │ │ │ │ │ │ ├── effect_310.bin │ │ │ │ │ │ ├── effect_315.bin │ │ │ │ │ │ ├── effect_316.bin │ │ │ │ │ │ ├── effect_318.bin │ │ │ │ │ │ ├── effect_363.bin │ │ │ │ │ │ ├── effect_364.bin │ │ │ │ │ │ ├── effect_365.bin │ │ │ │ │ │ ├── effect_366.bin │ │ │ │ │ │ ├── effect_367.bin │ │ │ │ │ │ ├── effect_368.bin │ │ │ │ │ │ ├── effect_369.bin │ │ │ │ │ │ ├── effect_370.bin │ │ │ │ │ │ ├── effect_41.bin │ │ │ │ │ │ ├── effect_42.bin │ │ │ │ │ │ ├── effect_43.bin │ │ │ │ │ │ ├── effect_44.bin │ │ │ │ │ │ ├── effect_45.bin │ │ │ │ │ │ ├── effect_46.bin │ │ │ │ │ │ ├── effect_47.bin │ │ │ │ │ │ ├── effect_51.bin │ │ │ │ │ │ ├── effect_52.bin │ │ │ │ │ │ ├── effect_53.bin │ │ │ │ │ │ ├── effect_54.bin │ │ │ │ │ │ ├── effect_55.bin │ │ │ │ │ │ ├── effect_56.bin │ │ │ │ │ │ ├── effect_59.bin │ │ │ │ │ │ ├── effect_60.bin │ │ │ │ │ │ ├── effect_61.bin │ │ │ │ │ │ ├── effect_62.bin │ │ │ │ │ │ ├── effect_63.bin │ │ │ │ │ │ ├── effect_64.bin │ │ │ │ │ │ ├── effect_65.bin │ │ │ │ │ │ ├── effect_66.bin │ │ │ │ │ │ ├── effect_67.bin │ │ │ │ │ │ ├── effect_68.bin │ │ │ │ │ │ └── effect_69.bin │ │ │ │ │ └── soft │ │ │ │ │ │ ├── effect_0.bin │ │ │ │ │ │ ├── effect_1.bin │ │ │ │ │ │ ├── effect_2.bin │ │ │ │ │ │ ├── effect_3.bin │ │ │ │ │ │ ├── effect_4.bin │ │ │ │ │ │ ├── effect_46.bin │ │ │ │ │ │ ├── effect_47.bin │ │ │ │ │ │ ├── effect_54.bin │ │ │ │ │ │ ├── effect_6.bin │ │ │ │ │ │ ├── effect_7.bin │ │ │ │ │ │ ├── effect_8.bin │ │ │ │ │ │ ├── effect_105.bin │ │ │ │ │ │ ├── effect_106.bin │ │ │ │ │ │ ├── effect_107.bin │ │ │ │ │ │ ├── effect_109.bin │ │ │ │ │ │ ├── effect_309.bin │ │ │ │ │ │ ├── effect_310.bin │ │ │ │ │ │ ├── effect_315.bin │ │ │ │ │ │ ├── effect_316.bin │ │ │ │ │ │ ├── effect_318.bin │ │ │ │ │ │ ├── effect_363.bin │ │ │ │ │ │ └── effect_364.bin │ │ │ │ └── vibrator_effect.json │ │ │ ├── vintf │ │ │ │ └── manifest │ │ │ │ │ ├── vibrator-default.xml │ │ │ │ │ ├── manifest_oplus_weaver_aidl.xml │ │ │ │ │ ├── manifest_oplus_keymint_aidl.xml │ │ │ │ │ ├── secure_element-service.xml │ │ │ │ │ ├── android.hardware.weaver-service.nxp.xml │ │ │ │ │ └── android.hardware.security.keymint3-service.strongbox.nxp.xml │ │ │ ├── init │ │ │ │ ├── android.hardware.weaver-service.nxp.rc │ │ │ │ ├── android.hardware.security.keymint3-service.strongbox.nxp.qcom.rc │ │ │ │ └── vibrator-default.rc │ │ │ └── ueventd.reserve.rc │ │ ├── lib64 │ │ │ ├── libcppbor.so │ │ │ ├── libolc_vnd.so │ │ │ ├── ese_weaver.nxp.so │ │ │ ├── libaacvibrator.so │ │ │ ├── libcppcose_rkp.so │ │ │ ├── libsivibrator.so │ │ │ ├── libesesbprovision.so │ │ │ ├── libmemunreachable.so │ │ │ ├── libcppbor_external.so │ │ │ ├── libjc_keymint3.nxp.so │ │ │ ├── libkeymaster_portable.so │ │ │ ├── liboplusvibratoreffect.so │ │ │ ├── libsecurity_event_dcs_vnd.so │ │ │ ├── libtensorflowlite_oplus.so │ │ │ ├── libjc_keymint_transport.nxp.so │ │ │ ├── android.hardware.secure_element@1.0.so │ │ │ ├── android.hardware.secure_element@1.1.so │ │ │ ├── android.hardware.secure_element@1.2.so │ │ │ ├── lib_android_keymaster_keymint_utils.so │ │ │ ├── vendor.oplus.hardware.olc2-V2-ndk.so │ │ │ ├── vendor.oplus.hardware.touch-V2-ndk.so │ │ │ ├── vendor.oplus.hardware.weaver-V1-ndk.so │ │ │ ├── vendor.oplus.hardware.keymint-V1-ndk.so │ │ │ ├── vendor.oplus.hardware.vibrator-V1-ndk.so │ │ │ ├── android.hardware.secure_element-V1-ndk.so │ │ │ ├── vendor.oplus.hardware.commondcs-V1-ndk.so │ │ │ ├── vendor.oplus.hardware.oplusvibrator-V1-ndk.so │ │ │ ├── android.hardware.security.sharedsecret-V1-ndk.so │ │ │ └── vendor.aac.hardware.richtap.vibrator-V2-ndk.so │ │ └── bin │ │ │ └── hw │ │ │ ├── android.hardware.weaver-service.nxp │ │ │ ├── vendor.oplus.hardware.vibrator-service │ │ │ └── android.hardware.security.keymint-service.strongbox-nxp │ ├── bin │ │ ├── ssgtzd │ │ ├── qseecomd │ │ ├── hw │ │ │ ├── android.hardware.boot-service.qti │ │ │ ├── android.hardware.health-service.qti │ │ │ ├── android.hardware.gatekeeper-service-qti │ │ │ ├── android.hardware.secure_element-service.qti │ │ │ └── android.hardware.security.keymint-service-qti │ │ ├── init.kernel.post_boot-sun_default_6_2.sh │ │ └── prepdecrypt.sh │ ├── lib64 │ │ ├── libdrm.so │ │ ├── libgpt.so │ │ ├── libidl.so │ │ ├── libion.so │ │ ├── libops.so │ │ ├── libqdi.so │ │ ├── libqmi.so │ │ ├── libspl.so │ │ ├── libssd.so │ │ ├── libxml.so │ │ ├── libGPQeSE.so │ │ ├── libdiag.so │ │ ├── libdrmfs.so │ │ ├── libnicm.so │ │ ├── libqcbor.so │ │ ├── libqisl.so │ │ ├── libqrtr.so │ │ ├── librpmb.so │ │ ├── libseclog.so │ │ ├── libvmmem.so │ │ ├── libc++_v35.so │ │ ├── libconfigdb.so │ │ ├── libdrmtime.so │ │ ├── libdrmutils.so │ │ ├── libdsutils.so │ │ ├── libnetutils.so │ │ ├── libnicm_dsi.so │ │ ├── libqmi_cci.so │ │ ├── libqmi_csi.so │ │ ├── hw │ │ │ ├── libEseUtils.so │ │ │ └── libqtigatekeeper.so │ │ ├── libGPreqcancel.so │ │ ├── libQSEEComAPI.so │ │ ├── libdmabufheap.so │ │ ├── libdsi_netctrl.so │ │ ├── libgatekeeper.so │ │ ├── libmdmdetect.so │ │ ├── libnicm_utils.so │ │ ├── libqmi_encdec.so │ │ ├── libqmiservices.so │ │ ├── libqtikeymint.so │ │ ├── libsoc_helper.so │ │ ├── libtaautoload.so │ │ ├── libtime_genoff.so │ │ ├── libGPTEE_vendor.so │ │ ├── libqmi_common_so.so │ │ ├── libGPMTEEC_vendor.so │ │ ├── libGPreqcancel_svc.so │ │ ├── libboot_control_qti.so │ │ ├── libkeymasterutils.so │ │ ├── libminkdescriptor.so │ │ ├── libqmi_client_qmux.so │ │ ├── libqmiextservices.so │ │ ├── librecovery_updater.so │ │ ├── libminksocket_vendor.so │ │ ├── libqmi_client_helper.so │ │ ├── libkeymasterdeviceutils.so │ │ ├── libminkipcbinder_vendor.so │ │ ├── android.hardware.common-V2-ndk.so │ │ ├── android.hardware.health-V3-ndk.so │ │ ├── android.hardware.secure_element@1.0.so │ │ ├── android.hardware.secure_element-V1-ndk.so │ │ ├── vendor.qti.hardware.display.config-V7-ndk.so │ │ └── android.hardware.security.sharedsecret-V1-ndk.so │ ├── etc │ │ ├── init │ │ │ ├── prepdecrypt.rc │ │ │ ├── android.hardware.secure_element-service.qti.rc │ │ │ ├── android.hardware.boot-service.qti.rc │ │ │ ├── android.hardware.gatekeeper-service-qti.rc │ │ │ ├── qseecomd.rc │ │ │ ├── android.hardware.health-service.qti.rc │ │ │ ├── android.hardware.security.keymint-service-qti.rc │ │ │ └── ssgtzd.rc │ │ ├── vintf │ │ │ ├── manifest │ │ │ │ ├── boot-service.qti.xml │ │ │ │ ├── android.hardware.health-service.qti.xml │ │ │ │ ├── vendor.qti.hardware.qseecom@1.0-service.xml │ │ │ │ ├── android.hardware.secure_element.xml │ │ │ │ └── android.hardware.security.keymint-service-qti.xml │ │ │ └── manifest.xml │ │ ├── ssg │ │ │ └── ta_config.json │ │ └── gpfspath_oem_config.xml │ └── firmware_mnt │ │ └── image │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.b00 │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.b01 │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.b02 │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.b03 │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.b04 │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.b05 │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.b06 │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.b07 │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.b08 │ │ ├── 05B04A44-BF30-42DF-9E2F-B366B980ED19.mdt │ │ ├── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.b00 │ │ ├── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.b01 │ │ ├── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.b02 │ │ ├── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.b03 │ │ ├── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.b04 │ │ ├── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.b05 │ │ ├── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.b06 │ │ ├── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.b07 │ │ ├── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.b08 │ │ └── 32552B22-89FE-42B4-8A45-A0C4E2DB0326.mdt │ ├── system │ └── etc │ │ ├── vintf │ │ └── manifest.xml │ │ ├── twrp.flags │ │ ├── ueventd.rc │ │ ├── recovery.fstab │ │ └── task_profiles.json │ ├── init.recovery.qcom.rc │ └── init.recovery.usb.rc ├── Android.bp ├── system.prop ├── Android.mk ├── AndroidProducts.mk ├── README.md ├── device.mk ├── security ├── local_OTA.x509.pem └── special_OTA.x509.pem ├── twrp_dodge.mk ├── fox_dodge.mk ├── vendorsetup.sh └── BoardConfig.mk /.gitignore: -------------------------------------------------------------------------------- 1 | .vscode-ctags 2 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/ueventd.rc: -------------------------------------------------------------------------------- 1 | /dev/block/by-name/oplusreserve1 0660 root system 2 | -------------------------------------------------------------------------------- /recovery/root/vendor/bin/ssgtzd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/bin/ssgtzd -------------------------------------------------------------------------------- /recovery/root/vendor/bin/qseecomd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/bin/qseecomd -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libdrm.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libdrm.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libgpt.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libgpt.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libidl.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libidl.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libion.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libion.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libops.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libops.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqdi.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqdi.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqmi.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqmi.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libspl.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libspl.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libssd.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libssd.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libxml.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libxml.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libGPQeSE.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libGPQeSE.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libdiag.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libdiag.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libdrmfs.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libdrmfs.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libnicm.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libnicm.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqcbor.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqcbor.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqisl.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqisl.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqrtr.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqrtr.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/librpmb.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/librpmb.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libseclog.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libseclog.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libvmmem.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libvmmem.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libc++_v35.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libc++_v35.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libconfigdb.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libconfigdb.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libdrmtime.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libdrmtime.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libdrmutils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libdrmutils.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libdsutils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libdsutils.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libnetutils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libnetutils.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libnicm_dsi.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libnicm_dsi.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqmi_cci.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqmi_cci.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqmi_csi.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqmi_csi.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/hw/libEseUtils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/hw/libEseUtils.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libGPreqcancel.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libGPreqcancel.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libQSEEComAPI.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libQSEEComAPI.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libdmabufheap.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libdmabufheap.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libdsi_netctrl.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libdsi_netctrl.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libgatekeeper.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libgatekeeper.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libmdmdetect.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libmdmdetect.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libnicm_utils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libnicm_utils.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqmi_encdec.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqmi_encdec.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqmiservices.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqmiservices.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqtikeymint.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqtikeymint.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libsoc_helper.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libsoc_helper.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libtaautoload.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libtaautoload.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libtime_genoff.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libtime_genoff.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libcppbor.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libcppbor.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libolc_vnd.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libolc_vnd.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libGPTEE_vendor.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libGPTEE_vendor.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqmi_common_so.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqmi_common_so.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/hw/libqtigatekeeper.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/hw/libqtigatekeeper.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libGPMTEEC_vendor.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libGPMTEEC_vendor.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libGPreqcancel_svc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libGPreqcancel_svc.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libboot_control_qti.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libboot_control_qti.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libkeymasterutils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libkeymasterutils.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libminkdescriptor.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libminkdescriptor.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqmi_client_qmux.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqmi_client_qmux.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqmiextservices.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqmiextservices.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/librecovery_updater.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/librecovery_updater.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/aac_richtap.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/aac_richtap.config -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/ese_weaver.nxp.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/ese_weaver.nxp.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libaacvibrator.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libaacvibrator.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libcppcose_rkp.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libcppcose_rkp.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libsivibrator.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libsivibrator.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libminksocket_vendor.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libminksocket_vendor.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libqmi_client_helper.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libqmi_client_helper.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libesesbprovision.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libesesbprovision.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libmemunreachable.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libmemunreachable.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libkeymasterdeviceutils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libkeymasterdeviceutils.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/libminkipcbinder_vendor.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/libminkipcbinder_vendor.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libcppbor_external.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libcppbor_external.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libjc_keymint3.nxp.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libjc_keymint3.nxp.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libkeymaster_portable.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libkeymaster_portable.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/liboplusvibratoreffect.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/liboplusvibratoreffect.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_0.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_0.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_1.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_1.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_2.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_2.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_3.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_3.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_4.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_4.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_5.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_5.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_6.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_6.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_7.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_7.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_8.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_8.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_9.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_9.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libsecurity_event_dcs_vnd.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libsecurity_event_dcs_vnd.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libtensorflowlite_oplus.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libtensorflowlite_oplus.so -------------------------------------------------------------------------------- /recovery/root/vendor/bin/hw/android.hardware.boot-service.qti: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/bin/hw/android.hardware.boot-service.qti -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/android.hardware.common-V2-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/android.hardware.common-V2-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/android.hardware.health-V3-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/android.hardware.health-V3-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_10.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_10.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_100.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_100.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_101.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_101.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_102.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_102.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_103.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_103.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_104.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_104.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_105.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_105.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_106.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_106.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_107.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_107.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_108.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_108.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_109.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_109.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_11.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_11.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_110.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_110.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_111.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_111.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_112.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_112.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_118.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_118.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_12.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_12.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_122.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_122.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_170.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_170.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_302.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_302.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_303.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_303.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_304.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_304.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_305.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_305.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_308.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_308.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_309.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_309.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_310.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_310.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_315.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_315.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_316.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_316.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_318.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_318.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_363.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_363.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_364.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_364.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_365.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_365.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_366.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_366.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_367.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_367.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_368.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_368.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_369.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_369.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_370.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_370.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_41.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_41.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_42.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_42.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_43.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_43.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_44.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_44.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_45.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_45.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_46.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_46.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_47.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_47.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_51.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_51.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_52.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_52.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_53.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_53.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_54.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_54.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_55.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_55.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_56.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_56.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_59.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_59.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_60.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_60.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_61.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_61.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_62.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_62.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_63.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_63.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_64.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_64.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_65.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_65.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_66.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_66.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_67.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_67.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_68.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_68.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/def/effect_69.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/def/effect_69.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_0.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_0.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_1.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_1.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_2.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_2.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_3.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_3.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_4.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_4.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_46.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_46.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_47.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_47.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_54.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_54.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_6.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_6.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_7.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_7.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_8.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_8.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/libjc_keymint_transport.nxp.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/libjc_keymint_transport.nxp.so -------------------------------------------------------------------------------- /recovery/root/vendor/bin/hw/android.hardware.health-service.qti: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/bin/hw/android.hardware.health-service.qti -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_105.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_105.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_106.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_106.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_107.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_107.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_109.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_109.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_309.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_309.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_310.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_310.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_315.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_315.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_316.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_316.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_318.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_318.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_363.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_363.bin -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_364.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/etc/vibrator/9999/soft/effect_364.bin -------------------------------------------------------------------------------- /recovery/root/vendor/etc/init/prepdecrypt.rc: -------------------------------------------------------------------------------- 1 | service prepdecrypt.vendor /vendor/bin/prepdecrypt.sh 2 | user root 3 | group root 4 | disabled 5 | oneshot 6 | seclabel u:r:recovery:s0 -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/android.hardware.secure_element@1.0.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/android.hardware.secure_element@1.0.so -------------------------------------------------------------------------------- /recovery/root/vendor/bin/hw/android.hardware.gatekeeper-service-qti: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/bin/hw/android.hardware.gatekeeper-service-qti -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/android.hardware.secure_element-V1-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/android.hardware.secure_element-V1-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/bin/hw/android.hardware.weaver-service.nxp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/bin/hw/android.hardware.weaver-service.nxp -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/android.hardware.secure_element@1.0.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/android.hardware.secure_element@1.0.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/android.hardware.secure_element@1.1.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/android.hardware.secure_element@1.1.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/android.hardware.secure_element@1.2.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/android.hardware.secure_element@1.2.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/lib_android_keymaster_keymint_utils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/lib_android_keymaster_keymint_utils.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/vendor.oplus.hardware.olc2-V2-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/vendor.oplus.hardware.olc2-V2-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/vendor.oplus.hardware.touch-V2-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/vendor.oplus.hardware.touch-V2-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/vendor.oplus.hardware.weaver-V1-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/vendor.oplus.hardware.weaver-V1-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/bin/hw/android.hardware.secure_element-service.qti: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/bin/hw/android.hardware.secure_element-service.qti -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/vendor.qti.hardware.display.config-V7-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/vendor.qti.hardware.display.config-V7-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/bin/hw/vendor.oplus.hardware.vibrator-service: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/bin/hw/vendor.oplus.hardware.vibrator-service -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/vendor.oplus.hardware.keymint-V1-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/vendor.oplus.hardware.keymint-V1-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/vendor.oplus.hardware.vibrator-V1-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/vendor.oplus.hardware.vibrator-V1-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/bin/hw/android.hardware.security.keymint-service-qti: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/bin/hw/android.hardware.security.keymint-service-qti -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/android.hardware.secure_element-V1-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/android.hardware.secure_element-V1-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/vendor.oplus.hardware.commondcs-V1-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/vendor.oplus.hardware.commondcs-V1-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/lib64/android.hardware.security.sharedsecret-V1-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/lib64/android.hardware.security.sharedsecret-V1-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/vendor.oplus.hardware.oplusvibrator-V1-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/vendor.oplus.hardware.oplusvibrator-V1-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/android.hardware.security.sharedsecret-V1-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/android.hardware.security.sharedsecret-V1-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/odm/lib64/vendor.aac.hardware.richtap.vibrator-V2-ndk.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/lib64/vendor.aac.hardware.richtap.vibrator-V2-ndk.so -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b00: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b00 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b01: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b01 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b02: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b02 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b03: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b03 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b04: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b04 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b05: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b05 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b06: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b06 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b07: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b07 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.b08 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.mdt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/05B04A44-BF30-42DF-9E2F-B366B980ED19.mdt -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b00: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b00 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b01: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b01 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b02: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b02 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b03: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b03 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b04: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b04 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b05: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b05 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b06: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b06 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b07: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b07 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b08: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.b08 -------------------------------------------------------------------------------- /recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.mdt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/firmware_mnt/image/32552B22-89FE-42B4-8A45-A0C4E2DB0326.mdt -------------------------------------------------------------------------------- /Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2025 The Android Open Source Project 3 | // Copyright (C) 2025 SebaUbuntu's TWRP device tree generator 4 | // 5 | // SPDX-License-Identifier: Apache-2.0 6 | // 7 | 8 | soong_namespace { 9 | } 10 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/bin/hw/android.hardware.security.keymint-service.strongbox-nxp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koaaN/android_device_oplus_13-orangefox/HEAD/recovery/root/vendor/odm/bin/hw/android.hardware.security.keymint-service.strongbox-nxp -------------------------------------------------------------------------------- /system.prop: -------------------------------------------------------------------------------- 1 | # Charger 2 | ro.charger.enable_suspend=true 3 | 4 | # Gatekeeper 5 | vendor.gatekeeper.is_security_level_spu=0 6 | 7 | # FUSE passthrough 8 | persist.sys.fuse.passthrough.enable=true 9 | 10 | # Display 11 | vendor.display.enable_spr=1 -------------------------------------------------------------------------------- /recovery/root/vendor/etc/init/android.hardware.secure_element-service.qti.rc: -------------------------------------------------------------------------------- 1 | service vendor.secure_element /vendor/bin/hw/android.hardware.secure_element-service.qti 2 | class hal 3 | user root 4 | group nfc root 5 | seclabel u:r:recovery:s0 6 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vintf/manifest/vibrator-default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.vibrator 4 | 2 5 | IVibrator/default 6 | 7 | 8 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vintf/manifest/manifest_oplus_weaver_aidl.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | vendor.oplus.hardware.weaver 4 | 1 5 | IWeaverExt/default 6 | 7 | 8 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vintf/manifest/manifest_oplus_keymint_aidl.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | vendor.oplus.hardware.keymint 4 | 1 5 | IKeymintExt/strongbox 6 | 7 | 8 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vintf/manifest/secure_element-service.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | android.hardware.secure_element 5 | 1 6 | ISecureElement/eSE1 7 | 8 | 9 | -------------------------------------------------------------------------------- /Android.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2025 The Android Open Source Project 3 | # Copyright (C) 2025 SebaUbuntu's TWRP device tree generator 4 | # 5 | # SPDX-License-Identifier: Apache-2.0 6 | # 7 | 8 | LOCAL_PATH := $(call my-dir) 9 | 10 | ifeq ($(TARGET_DEVICE),dodge) 11 | include $(call all-subdir-makefiles,$(LOCAL_PATH)) 12 | endif 13 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/vintf/manifest/boot-service.qti.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | android.hardware.boot 8 | IBootControl/default 9 | 10 | 11 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/init/android.hardware.boot-service.qti.rc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. 2 | # SPDX-License-Identifier: BSD-3-Clause-Clear 3 | 4 | service vendor.boot-qti /vendor/bin/hw/android.hardware.boot-service.qti 5 | class early_hal 6 | user root 7 | group root 8 | seclabel u:r:recovery:s0 9 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/init/android.hardware.gatekeeper-service-qti.rc: -------------------------------------------------------------------------------- 1 | service vendor.gatekeeper_default /vendor/bin/hw/android.hardware.gatekeeper-service-qti 2 | class early_hal 3 | user root 4 | group root 5 | disabled 6 | seclabel u:r:recovery:s0 7 | 8 | on property:vendor.gatekeeper.is_security_level_spu=0 9 | enable vendor.gatekeeper_default 10 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vintf/manifest/android.hardware.weaver-service.nxp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.weaver 4 | 2 5 | 6 | IWeaver 7 | default 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/vintf/manifest.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | android.hardware.gatekeeper 8 | IGatekeeper/default 9 | 10 | 11 | 202404 12 | 13 | 14 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/vintf/manifest/android.hardware.health-service.qti.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | android.hardware.health 8 | 3 9 | IHealth/default 10 | 11 | 12 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/vintf/manifest/vendor.qti.hardware.qseecom@1.0-service.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | vendor.qti.hardware.qseecom 8 | IQSEECom/default 9 | 10 | 11 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/init/android.hardware.weaver-service.nxp.rc: -------------------------------------------------------------------------------- 1 | #Junwei.You@BSP.Security.Basic, 2023/08/30, mv weaver hal from vendor to odm partition 2 | #Junwei.You@BSP.Security.Basic, 2023/10/25, add WAKE_ALARM capabilities for weaver hal 3 | service vendor.weaver_nxp /odm/bin/hw/android.hardware.weaver-service.nxp 4 | class hal 5 | user root 6 | group root drmrpc 7 | capabilities WAKE_ALARM 8 | seclabel u:r:recovery:s0 9 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/vintf/manifest/android.hardware.secure_element.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | android.hardware.secure_element 8 | ISecureElement/SIM1 9 | ISecureElement/SIM2 10 | 11 | 12 | -------------------------------------------------------------------------------- /AndroidProducts.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2025 The Android Open Source Project 3 | # Copyright (C) 2025 SebaUbuntu's TWRP device tree generator 4 | # 5 | # SPDX-License-Identifier: Apache-2.0 6 | # 7 | # Copyright (C) 2024 The OrangeFox Recovery Project 8 | # SPDX-License-Identifier: GPL-3.0-or-later 9 | # 10 | 11 | PRODUCT_MAKEFILES := \ 12 | $(LOCAL_DIR)/twrp_dodge.mk 13 | 14 | COMMON_LUNCH_CHOICES := \ 15 | twrp_dodge-user \ 16 | twrp_dodge-userdebug \ 17 | twrp_dodge-eng 18 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/init/android.hardware.security.keymint3-service.strongbox.nxp.qcom.rc: -------------------------------------------------------------------------------- 1 | #Junwei.You@BSP.Security.Basic, 2023/07/27, mv strongbox hal from vendor to odm partition 2 | service vendor.keymint-strongbox /odm/bin/hw/android.hardware.security.keymint-service.strongbox-nxp 3 | class early_hal 4 | user root 5 | group root nfc drmrpc 6 | capabilities WAKE_ALARM 7 | interface aidl android.hardware.security.sharedsecret.ISharedSecret/strongbox 8 | seclabel u:r:recovery:s0 9 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/init/qseecomd.rc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2019 Qualcomm Technologies, Inc. 2 | # All Rights Reserved. 3 | # Confidential and Proprietary - Qualcomm Technologies, Inc. 4 | 5 | on init 6 | start vendor.qseecomd 7 | 8 | service vendor.qseecomd /vendor/bin/qseecomd 9 | socket notify-topology stream 660 system drmrpc 10 | class core 11 | user root 12 | group root drmrpc 13 | seclabel u:r:recovery:s0 14 | 15 | on property:vendor.car.hiber=hiberExit 16 | stop vendor.qseecomd 17 | start vendor.qseecomd 18 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/init/android.hardware.health-service.qti.rc: -------------------------------------------------------------------------------- 1 | service vendor.health-default /vendor/bin/hw/android.hardware.health-service.qti 2 | class hal 3 | user root 4 | group root 5 | capabilities WAKE_ALARM BLOCK_SUSPEND 6 | file /dev/kmsg w 7 | seclabel u:r:recovery:s0 8 | 9 | service vendor.charger /vendor/bin/hw/android.hardware.health-service.qti --charger 10 | class charger 11 | seclabel u:r:recovery:s0 12 | user root 13 | group root wakelock input graphics 14 | capabilities SYS_BOOT WAKE_ALARM BLOCK_SUSPEND 15 | file /dev/kmsg w 16 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/init/android.hardware.security.keymint-service-qti.rc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2021 Qualcomm Technologies, Inc. 2 | # All Rights Reserved. 3 | # Confidential and Proprietary - Qualcomm Technologies, Inc. 4 | 5 | on init 6 | start vendor.keymint-qti 7 | 8 | service vendor.keymint-qti /vendor/bin/hw/android.hardware.security.keymint-service-qti 9 | class early_hal 10 | user root 11 | group root drmrpc 12 | seclabel u:r:recovery:s0 13 | 14 | on property:vendor.car.hiber=hiberExit 15 | stop vendor.keymint-qti 16 | start vendor.keymint-qti 17 | stop keystore2 18 | start keystore2 19 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vintf/manifest/android.hardware.security.keymint3-service.strongbox.nxp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | android.hardware.security.keymint 4 | 3 5 | IKeyMintDevice/strongbox 6 | 7 | 8 | android.hardware.security.keymint 9 | 3 10 | IRemotelyProvisionedComponent/strongbox 11 | 12 | 13 | android.hardware.security.sharedsecret 14 | ISharedSecret/strongbox 15 | 16 | 17 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/init/ssgtzd.rc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2019 Qualcomm Technologies, Inc. 2 | # All Rights Reserved. 3 | # Confidential and Proprietary - Qualcomm Technologies, Inc. 4 | 5 | 6 | # Create the directories used by qwes 7 | on post-fs-data 8 | mkdir /data/vendor/qwes 0755 system system 9 | 10 | # Start daemon on early-init 11 | on early-boot 12 | start vendor.ssgtzd 13 | 14 | # Used 'disabled' flag, so daemon won't be started until explicit start 15 | service vendor.ssgtzd /vendor/bin/ssgtzd 16 | class late_start 17 | user system 18 | group system oem_2912 wakelock 19 | capabilities WAKE_ALARM BLOCK_SUSPEND 20 | disabled 21 | socket ssgtzd stream 0660 system oem_2912 22 | socket ssgtzd_opener stream 0660 system system 23 | seclabel u:r:recovery:s0 24 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # OnePlus 13 dodge Android device tree 2 | 3 | ## Working 4 | 5 | - [X] Display 6 | - [X] Touch (Even in FastbootD) 7 | - [X] Decryption 8 | - [X] Flashing 9 | - [X] Backup & Restore 10 | - [X] MTP/OTG Storage 11 | - [X] ADB/FastbootD 12 | - [X] Factory Reset 13 | - [X] Vibrator 14 | - [X] Display & Vibration Settings 15 | 16 | ## Not working 17 | - [ ] ???????? 18 | 19 | # How To Build 20 | 21 | ### Clone & Sync Source 22 | ``` 23 | mkdir -p ~/OrangeFox_14 24 | cd ~/OrangeFox_14 25 | git clone https://gitlab.com/OrangeFox/sync.git 26 | cd sync 27 | ./orangefox_sync.sh --branch 14.1 --path ~/fox_14.1 28 | ``` 29 | ### Clone Device-tree 30 | ``` 31 | cd ~/fox_14.1/device 32 | mkdir -p oneplus 33 | cd oneplus 34 | git clone https://github.com/koaaN/android_device_oplus_13-orangefox.git dodge 35 | ``` 36 | ### BUILD! 37 | ``` 38 | cd ~/fox_14.1 39 | source build/envsetup.sh 40 | lunch twrp_dodge-ap2a-eng 41 | mka adbd recoveryimage 42 | ``` 43 | -------------------------------------------------------------------------------- /device.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2025 The Android Open Source Project 3 | # Copyright (C) 2025 SebaUbuntu's TWRP device tree generator 4 | # 5 | # SPDX-License-Identifier: Apache-2.0 6 | # 7 | # Copyright (C) 2024 The OrangeFox Recovery Project 8 | # SPDX-License-Identifier: GPL-3.0-or-later 9 | # 10 | 11 | LOCAL_PATH := device/oneplus/dodge 12 | 13 | # Shipping API level 14 | BOARD_SHIPPING_API_LEVEL := 34 15 | PRODUCT_SHIPPING_API_LEVEL := 34 16 | PRODUCT_TARGET_VNDK_VERSION := 34 17 | 18 | # Dynamic partitions 19 | PRODUCT_USE_DYNAMIC_PARTITIONS := true 20 | 21 | PRODUCT_PACKAGES += \ 22 | lpflash \ 23 | lpmake \ 24 | lpunpack 25 | 26 | # OTA certs 27 | PRODUCT_EXTRA_RECOVERY_KEYS += \ 28 | $(LOCAL_PATH)/security/local_OTA \ 29 | $(LOCAL_PATH)/security/special_OTA 30 | 31 | # Soong namespaces 32 | PRODUCT_SOONG_NAMESPACES += $(LOCAL_PATH) 33 | 34 | # some OrangeFox-specific settings 35 | $(call inherit-product, $(LOCAL_PATH)/fox_dodge.mk) 36 | # 37 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/vintf/manifest/android.hardware.security.keymint-service-qti.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | android.hardware.security.keymint 8 | 3 9 | IKeyMintDevice/default 10 | 11 | 12 | android.hardware.security.keymint 13 | 3 14 | IRemotelyProvisionedComponent/default 15 | 16 | 17 | android.hardware.security.secureclock 18 | ISecureClock/default 19 | 20 | 21 | android.hardware.security.sharedsecret 22 | ISharedSecret/default 23 | 24 | 25 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/ssg/ta_config.json: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | Copyright (c) 2018-2019,2022 Qualcomm Technologies, Inc. 3 | All Rights Reserved. 4 | Confidential and Proprietary - Qualcomm Technologies, Inc. 5 | *********************************************************************/ 6 | { 7 | // Configuration for System Clients maintained by ssgtzd 8 | // MaxSystemClients: Number of Clients Allowed in System Domain (Apk) 9 | // ObjectsPerClient: Number of Objects that can be requested by each apk 10 | // MaxObjectCap: Max Cap on the Objects that can be used by System Clients. 11 | "tz_configuration":[ 12 | { "MaxSystemClients" : 12}, 13 | { "MaxObjectsPerClient" : 15}, 14 | { "MaxObjectCap" : 100} 15 | ], 16 | "embedded_ta_images": [ 17 | { "name":"rtice"}, 18 | { "name":"qwes"}, 19 | { "name":"tzsc"}, 20 | { "name":"ConnectionSecurity"} 21 | ], 22 | "ta_images": [ 23 | { "path":"/vendor/firmware_mnt/image/qwes.mbn"}, 24 | { "path":"/vendor/firmware/image/qwes.mbn"}, 25 | { "path":"/vendor/firmware_mnt/image/haventkn.mbn"}, 26 | { "path":"/vendor/firmware/image/haventkn.mbn"}, 27 | { "path":"/vendor/firmware_mnt/image/tzsc.mbn"} 28 | ], 29 | "ta_paths": [ 30 | { "path": "/vendor/firmware_mnt/image"}, 31 | { "path": "/vendor/firmware/image/"}, 32 | ] 33 | } 34 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/ueventd.reserve.rc: -------------------------------------------------------------------------------- 1 | #ifdef OPLUS_FEATURE_PXLW_IRIS5 2 | #GouBo@ANDROID.LCD, 2022/9/7, add for iris7 calibration 3 | firmware_directories /mnt/vendor/persist/display/ 4 | #endif /* OPLUS_FEATURE_PXLW_IRIS5 */ 5 | 6 | subsystem adf 7 | devname uevent_devname 8 | 9 | #yanghao@PSW.KERNEL.Stability. change owner and ADC access 10 | /dev/block/bootdevice/by-name/oplusreserve1 0660 root system 11 | /dev/block/sdf2 0660 root system 12 | /dev/block/bootdevice/by-name/oplusreserve3 0660 root system 13 | /dev/block/sdf4 0660 root system 14 | 15 | /dev/block/bootdevice/by-name/oplusreserve5 0660 root system 16 | /dev/block/sdf6 0660 root system 17 | /dev/block/sdf5 0660 root system 18 | 19 | #Hong.Zhang@TECH.BSP.Stability.Aging2.0, 2020/07/14, Add for aging 2.0 20 | #ifdef OPLUS_FEATURE_AGINGTEST 21 | /dev/block/bootdevice/by-name/ddr 0660 root system 22 | /dev/block/sdd3 0660 root system 23 | #endif 24 | 25 | #ifdef OPLUS_FEATURE_BLUETOOTH_EAR 26 | #GaoShangxiu@Connectivity.BT, 2022/08/22, Add for ear 27 | /dev/ttyHS1 0660 bluetooth bluetooth 28 | /dev/zeku_ear_spi1 0660 bluetooth bluetooth 29 | /dev/btear 0660 bluetooth bluetooth 30 | /dev/zeku_ear_spi0 0660 system audio 31 | #endif /* OPLUS_FEATURE_BLUETOOTH_EAR */ 32 | -------------------------------------------------------------------------------- /security/local_OTA.x509.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIID7zCCAtegAwIBAgIJANl3yD3Uys+9MA0GCSqGSIb3DQEBBQUAMIGNMQswCQYD 3 | VQQGEwJDTjESMBAGA1UECAwJR3VhbmdEb25nMRYwFAYDVQQHDA1TaGVuWmhlbiBW 4 | aWV3MRAwDgYDVQQKDAdBbmRyb2lkMRAwDgYDVQQLDAdBbmRyb2lkMRAwDgYDVQQD 5 | DAdBbmRyb2lkMRwwGgYJKoZIhvcNAQkBFg1vcHBvQG9wcG8uY29tMB4XDTE5MDMy 6 | NzA3MDYzNloXDTQ2MDgxMjA3MDYzNlowgY0xCzAJBgNVBAYTAkNOMRIwEAYDVQQI 7 | DAlHdWFuZ0RvbmcxFjAUBgNVBAcMDVNoZW5aaGVuIFZpZXcxEDAOBgNVBAoMB0Fu 8 | ZHJvaWQxEDAOBgNVBAsMB0FuZHJvaWQxEDAOBgNVBAMMB0FuZHJvaWQxHDAaBgkq 9 | hkiG9w0BCQEWDW9wcG9Ab3Bwby5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw 10 | ggEKAoIBAQDmmoT456neOA47xYSpjkwQoS5q8z/El9B1pT4OhGNPrqsfTbDhBqir 11 | Gq3b2GzYhbhWnuwTz8AWl+xl84XrI7ROmrhkSCK0A5LJIctLHLrnuPjcgmWokNox 12 | SmdiRFnnavKSZi/hoPesQFpR4rYyp+hKn16Yz8oZmKCUHfiJQY7445mzsGJKqLyg 13 | 94E4I+bW9Ulzje1tilZ2ycHVMaJYurPjNHyA7XX7rssJcc2b0i3GynC1OvIZE0KY 14 | HQWxkCAxT1uQSJhxLspoDDMG+Ieq58SC1BX0x8jWzb3pmZNP6vZcmTgZFEXJGMDU 15 | DGskJSgDrl1dFx4tYQYjJ8+KXxeudUBzAgMBAAGjUDBOMB0GA1UdDgQWBBR3mKRs 16 | Jl6Z8GRQ62JcUXPDxgWbmjAfBgNVHSMEGDAWgBR3mKRsJl6Z8GRQ62JcUXPDxgWb 17 | mjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQBTm576rdIsV0jhozPV 18 | XcHHS7cN6dkQP33ntEVBa4t9uOiL6hPnKx9ajXNVSUIV3Kxndo7i3edPp1+AsMXb 19 | Xk1QapxycLRejCf/BC221C/pnuDIc/g7iXrcDDLuQmPGf1NM9/nKVeP2IrgujBnr 20 | J14GKpEKY+3gOaYNyNXjhxd1xU2w129daX8p2ys698uVHa8swHuXL52F8tWebLOQ 21 | 8QB8vouNv99MKs9tuIxIk8MEssx8hDip5LDTVhejrMExe5283drMbKPyk/cUSY8I 22 | yp4ZXoC9xychv0zSUH5aEeXMMAUI9lVP0kocWsYAIYDp+t0fMlLuaBuY2wTDsTcT 23 | FFIu 24 | -----END CERTIFICATE----- 25 | -------------------------------------------------------------------------------- /security/special_OTA.x509.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIID7zCCAtegAwIBAgIJAPjcDcuH7FdmMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYD 3 | VQQGEwJDTjESMBAGA1UECAwJR3VhbmdEb25nMRYwFAYDVQQHDA1TaGVuWmhlbiBW 4 | aWV3MRAwDgYDVQQKDAdBbmRyb2lkMRAwDgYDVQQLDAdBbmRyb2lkMRAwDgYDVQQD 5 | DAdBbmRyb2lkMRwwGgYJKoZIhvcNAQkBFg1vcHBvQG9wcG8uY29tMB4XDTE5MDMy 6 | NzA3MDY0OFoXDTQ2MDgxMjA3MDY0OFowgY0xCzAJBgNVBAYTAkNOMRIwEAYDVQQI 7 | DAlHdWFuZ0RvbmcxFjAUBgNVBAcMDVNoZW5aaGVuIFZpZXcxEDAOBgNVBAoMB0Fu 8 | ZHJvaWQxEDAOBgNVBAsMB0FuZHJvaWQxEDAOBgNVBAMMB0FuZHJvaWQxHDAaBgkq 9 | hkiG9w0BCQEWDW9wcG9Ab3Bwby5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw 10 | ggEKAoIBAQCk4bYxTRVr3m5e0OgieRfG316JWJNHo6UP+Xe6Y9G2SixOhN83CxQF 11 | /AYcXBCO+7vfzYisaSw5YIfQ8nCfPN2AeGmMBu9jdUGyfsqh6vIitvxZmeGzMQ7l 12 | FmosE3ICgnwhSoQjD35F6LeSqyJsu9Uqo9uNuc6i0CNYxGG2Hp58XKg8eOGulzli 13 | 4d+9CuRmAxbAOSMt9EkF0NBpYU9UJEWkpqPFKNyP0d/8aXaAllI237rof1xVYYQ2 14 | q92xN5YzroKTJpH99djZP2e2NjM83fcJcP0Jy2z6/JjMh9nWKnICeKokm0RaY8Zl 15 | NuVR8RP9BX1ML3YHdWv7Z6B6v8Uixu3pAgMBAAGjUDBOMB0GA1UdDgQWBBQvbH+U 16 | Qq6bkqe+lSagx+tKLVIVtjAfBgNVHSMEGDAWgBQvbH+UQq6bkqe+lSagx+tKLVIV 17 | tjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQAPazw3bxnQ9CBFizVY 18 | JIpD5cg6mDUT6MKbmbh6wdk5vq9vF0feYufVG2Agym9PTlglQFPfq2lnBd3uIn7a 19 | EETw8F0gR8bi4h05dDQ78U8KobINUWo7O91rYCnM/fstycD5OgwcBxZCoE9yrw50 20 | 3e8EJDQgydDPJgaq76zgIeoc8EQc8ZInF0BJ1xbX9GnO/S7Ao0k7RjthHDHL6TMw 21 | DEJ694zPnoEIhdf3+6vAqY+OBcThlhp1U+vvVU4ThYhNPZ+Gsuu8FLG2SvTpO5Rn 22 | 29Cl4N3uhuBlY9XCiPzkbftfWLPY0Jj9KyImsuDMsd/TvUkuISGsqdKjZ4bEJ7F2 23 | eHLl 24 | -----END CERTIFICATE----- 25 | -------------------------------------------------------------------------------- /twrp_dodge.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2025 The Android Open Source Project 3 | # Copyright (C) 2025 SebaUbuntu's TWRP device tree generator 4 | # 5 | # SPDX-License-Identifier: Apache-2.0 6 | # 7 | # Copyright (C) 2024 The OrangeFox Recovery Project 8 | # SPDX-License-Identifier: GPL-3.0-or-later 9 | # 10 | 11 | # Configure base.mk 12 | $(call inherit-product, $(SRC_TARGET_DIR)/product/base.mk) 13 | 14 | # Configure core_64_bit_only.mk 15 | $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit_only.mk) 16 | 17 | # Configure virtual_ab compression.mk 18 | $(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota/compression.mk) 19 | 20 | # Configure emulated_storage.mk 21 | $(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk) 22 | 23 | # Configure twrp common.mk 24 | $(call inherit-product, vendor/twrp/config/common.mk) 25 | 26 | # Configure full_base_telephony.mk 27 | $(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk) 28 | 29 | 30 | # Inherit from dodge device 31 | $(call inherit-product, device/oneplus/dodge/device.mk) 32 | 33 | PRODUCT_DEVICE := dodge 34 | PRODUCT_NAME := twrp_dodge 35 | PRODUCT_BRAND := oneplus 36 | PRODUCT_MODEL := OnePlus 13 37 | PRODUCT_MANUFACTURER := oneplus 38 | 39 | PRODUCT_GMS_CLIENTID_BASE := android-oplus 40 | 41 | PRODUCT_BUILD_PROP_OVERRIDES += \ 42 | PRIVATE_BUILD_DESC="sun-user 15 AP3A.240617.008 1749744156655 release-keys" 43 | 44 | BUILD_FINGERPRINT := oplus/ossi/ossi:15/AP3A.240617.008/1749744156655:user/release-keys 45 | 46 | # Theme 47 | TW_STATUS_ICONS_ALIGN := center 48 | -------------------------------------------------------------------------------- /fox_dodge.mk: -------------------------------------------------------------------------------- 1 | # 2 | # This file is part of the OrangeFox Recovery Project 3 | # Copyright (C) 2025 The OrangeFox Recovery Project 4 | # 5 | # OrangeFox is free software: you can redistribute it and/or modify 6 | # it under the terms of the GNU General Public License as published by 7 | # the Free Software Foundation, either version 3 of the License, or 8 | # any later version. 9 | # 10 | # OrangeFox is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # This software is released under GPL version 3 or any later version. 16 | # See . 17 | # 18 | # Please maintain this if you use this script or any part of it 19 | # 20 | 21 | 22 | OF_MAINTAINER := Jonas Salo & Daniel Springer 23 | OF_SCREEN_H := 2376 24 | OF_STATUS_INDENT_LEFT := 20 25 | OF_STATUS_INDENT_RIGHT := 20 26 | OF_OPTIONS_LIST_NUM := 6 27 | OF_USE_GREEN_LED := 0 28 | 29 | OF_ENABLE_ALL_PARTITION_TOOLS := 1 30 | OF_WORKAROUND_BACKUP_BUG := 1 31 | OF_USE_AIDL_BOOT_CONTROL := 1 32 | OF_FORCE_DATA_FORMAT_F2FS := 1 33 | OF_UNBIND_SDCARD_F2FS := 1 34 | OF_WIPE_METADATA_AFTER_DATAFORMAT := 1 35 | OF_DYNAMIC_FULL_SIZE := 15354134528 36 | OF_DISPLAY_FORMAT_FILESYSTEMS_DEBUG_INFO := 1 37 | OF_FORCE_PREBUILT_KERNEL := 1 38 | OF_NO_RELOAD_AFTER_DECRYPTION := 1 39 | OF_NO_TREBLE_COMPATIBILITY_CHECK := 1 40 | OF_AB_DEVICE_WITH_RECOVERY_PARTITION := 1 41 | OF_RECOVERY_AB_FULL_REFLASH_RAMDISK := 1 42 | 43 | OF_USE_LZ4_COMPRESSION := 1 44 | OF_ENABLE_FS_COMPRESSION := 1 45 | # 46 | -------------------------------------------------------------------------------- /recovery/root/system/etc/vintf/manifest.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | android.frameworks.displayservice 9 | hwbinder 10 | @1.0::IDisplayService/default 11 | 12 | 13 | android.frameworks.schedulerservice 14 | hwbinder 15 | @1.0::ISchedulingPolicyService/default 16 | 17 | 18 | android.frameworks.sensorservice 19 | ISensorManager/default 20 | 21 | 22 | android.frameworks.sensorservice 23 | hwbinder 24 | @1.0::ISensorManager/default 25 | 26 | 27 | android.hidl.memory 28 | passthrough 29 | @1.0::IMapper/ashmem 30 | 31 | 32 | android.system.net.netd 33 | hwbinder 34 | @1.1::INetd/default 35 | 36 | 37 | android.system.wifi.keystore 38 | hwbinder 39 | @1.0::IKeystore/default 40 | 41 | 42 | netutils-wrapper 43 | 1.0 44 | 45 | 46 | vendor.qti.hardware.radio.atcmdfwd 47 | hwbinder 48 | @1.0::IAtCmdFwd/AtCmdFwdService 49 | 50 | 51 | 29 52 | 30 53 | 31 54 | 32 55 | 33 56 | 34 57 | 35 58 | 59 | 60 | -------------------------------------------------------------------------------- /vendorsetup.sh: -------------------------------------------------------------------------------- 1 | # 2 | # This file is part of the OrangeFox Recovery Project 3 | # Copyright (C) 2020-2025 The OrangeFox Recovery Project 4 | # 5 | # OrangeFox is free software: you can redistribute it and/or modify 6 | # it under the terms of the GNU General Public License as published by 7 | # the Free Software Foundation, either version 3 of the License, or 8 | # any later version. 9 | # 10 | # OrangeFox is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # This software is released under GPL version 3 or any later version. 16 | # See . 17 | # 18 | # Please maintain this if you use this script or any part of it 19 | # 20 | FDEVICE="dodge" 21 | 22 | fox_get_target_device() { 23 | local chkdev=$(echo "$BASH_SOURCE" | grep -w $FDEVICE) 24 | if [ -n "$chkdev" ]; then 25 | FOX_BUILD_DEVICE="$FDEVICE" 26 | else 27 | chkdev=$(set | grep BASH_ARGV | grep -w $FDEVICE) 28 | [ -n "$chkdev" ] && FOX_BUILD_DEVICE="$FDEVICE" 29 | fi 30 | } 31 | 32 | if [ -z "$1" -a -z "$FOX_BUILD_DEVICE" ]; then 33 | fox_get_target_device 34 | fi 35 | 36 | if [ "$1" = "$FDEVICE" -o "$FOX_BUILD_DEVICE" = "$FDEVICE" ]; then 37 | export LC_ALL="C" 38 | export FOX_AB_DEVICE=1 39 | export FOX_USE_TAR_BINARY=1 40 | export FOX_USE_SED_BINARY=1 41 | export FOX_USE_LZ4_BINARY=1 42 | export FOX_USE_ZSTD_BINARY=1 43 | export FOX_USE_DATE_BINARY=1 44 | export FOX_DELETE_AROMAFM=1 45 | export FOX_VANILLA_BUILD=1 46 | export FOX_USE_GREP_BINARY=1 47 | export FOX_USE_BUSYBOX_BINARY=1 48 | export FOX_USE_XZ_UTILS=1 49 | export FOX_VIRTUAL_AB_DEVICE=1 50 | export FOX_ALLOW_EARLY_SETTINGS_LOAD=1 51 | export FOX_USE_UPDATED_MAGISKBOOT=1 52 | export FOX_MOVE_MAGISK_INSTALLER_TO_RAMDISK=1 53 | export FOX_USE_FSCK_EROFS_BINARY=1 54 | export FOX_USE_PATCHELF_BINARY=1 55 | 56 | # For OnePlus 13 57 | export TARGET_DEVICE_ALT="PJZ110,OP5D55L1,OP5D0DL1,CPH2649,CPH2653,CPH2655" 58 | export FOX_TARGET_DEVICES="$TARGET_DEVICE_ALT" 59 | export FOX_USE_DMSETUP=1 60 | export FOX_ENABLE_KERNELSU_SUPPORT=1 61 | export FOX_ENABLE_KERNELSU_NEXT_SUPPORT=1 62 | export FOX_ENABLE_SUKISU_SUPPORT=1 63 | export FOX_MAINTAINER_PATCH_VERSION=1 64 | fi 65 | # 66 | -------------------------------------------------------------------------------- /recovery/root/vendor/etc/gpfspath_oem_config.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 51 | 52 | 53 | 54 | /data/vendor/tzstorage/ 55 | /mnt/vendor/persist/data/ 56 | 4 57 | /data/system/users/ 58 | /data/misc/qsee/ 59 | /qwes 60 | /qwes/licenses 61 | 62 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/init/vibrator-default.rc: -------------------------------------------------------------------------------- 1 | on boot 2 | chmod 0666 /dev/awinic_haptic 3 | #ifeq ($(OPLUS_FEATURE_HAPTIC_VIBRATE),yes) 4 | chown audioserver audioserver /dev/awinic_haptic 5 | chown audioserver audioserver /sys/class/leds/vibrator/haptic_audio 6 | chown audioserver audioserver /sys/calss/leds/vibrator/gun_type 7 | chown audioserver audioserver /sys/class/leds/vibrator/bullet_nr 8 | chown audioserver audioserver /sys/class/leds/vibrator/register 9 | chown audioserver audioserver /sys/class/leds/vibrator/gun_mode 10 | chmod 777 /sys/class/leds/vibrator/gun_type 11 | chmod 777 /sys/class/leds/vibrator/bullet_nr 12 | chmod 777 /sys/class/leds/vibrator/gun_mode 13 | chmod 777 /sys/class/leds/vibrator/register 14 | chmod 777 /sys/class/leds/vibrator/haptic_audio 15 | #endif /* OPLUS_FEATURE_HAPTIC_VIBRATE */ 16 | #ifdef OPLUS_FEATURE_CHG_BASIC 17 | #Changhui.Wu@PSW.BSP.CHG.Basic, 2021/9/16, Add for vibration dev file 18 | chown system system /sys/class/leds/vibrator/oplus_activate 19 | chown system system /sys/class/leds/vibrator/oplus_duration 20 | chown system system /sys/class/leds/vibrator/oplus_state 21 | chown system system /sys/class/leds/vibrator/oplus_brightness 22 | chown system system /sys/class/leds/vibrator/f0 23 | chown system system /sys/class/leds/vibrator/cali 24 | chown system system /sys/class/leds/vibrator/vmax 25 | chown system system /sys/class/leds/vibrator/index 26 | chmod 0666 /sys/class/leds/vibrator/index 27 | chown system system /sys/class/leds/vibrator/loop 28 | chown system system /sys/class/leds/vibrator/lra_resistance 29 | chown system system /sys/class/leds/vibrator/ram_update 30 | chown system audio /sys/class/leds/vibrator/rtp 31 | chmod 0660 /sys/class/leds/vibrator/rtp 32 | chown system system /sys/class/leds/vibrator/seq 33 | chown system system /sys/class/leds/vibrator/motor_old 34 | chmod 0666 /sys/class/leds/vibrator/motor_old 35 | chown system system /sys/class/leds/vibrator/waveform_index 36 | chown system system /sys/class/leds/vibrator/osc_cali 37 | chmod 0660 /sys/class/leds/vibrator/osc_cali 38 | chown system system /sys/class/leds/vibrator/osc_data 39 | chown system system /sys/class/leds/vibrator/ram_test 40 | chown system system /sys/class/leds/vibrator/f0_data 41 | chown system system /sys/class/leds/vibrator/rtp_going 42 | #endif /* OPLUS_FEATURE_CHG_BASIC */ 43 | service vendor.oplus.vibrator /odm/bin/hw/vendor.oplus.hardware.vibrator-service 44 | class late_start 45 | user root 46 | group root input 47 | setenv RICHTAP_DEVICE_PATH /dev/awinic_haptic 48 | setenv ENV_RICHTAP_CONFIG_PATH /odm/etc/aac_richtap.config 49 | seclabel u:r:recovery:s0 50 | -------------------------------------------------------------------------------- /recovery/root/system/etc/twrp.flags: -------------------------------------------------------------------------------- 1 | # mount point fstype device device2 flags 2 | # Logical partitions 3 | /system_ext ext4 system_ext flags=display=System_EXT 4 | /system_dlkm ext4 system_dlkm flags=display=System_DLKM 5 | /vendor_dlkm ext4 vendor_dlkm flags=display=Vendor_DLKM 6 | 7 | # Userdata/Metadata partitions 8 | /metadata f2fs /dev/block/by-name/metadata flags=display="Metadata";backup=1;flashimg=1 9 | 10 | # Boot partitions 11 | /boot emmc /dev/block/bootdevice/by-name/boot flags=slotselect 12 | /init_boot emmc /dev/block/bootdevice/by-name/init_boot flags=slotselect;display="Init Boot";backup=1;flashimg=1 13 | /vendor_boot emmc /dev/block/bootdevice/by-name/vendor_boot flags=slotselect;display="Vendor Boot";backup=1;flashimg=1 14 | /recovery emmc /dev/block/bootdevice/by-name/recovery flags=slotselect;display="Recovery";backup=1;flashimg=1 15 | /dtbo emmc /dev/block/bootdevice/by-name/dtbo flags=slotselect;display="DTBO";backup=1;flashimg=1 16 | 17 | # AVB partitions 18 | /vbmeta emmc /dev/block/bootdevice/by-name/vbmeta flags=slotselect;display="VBMeta";backup=1;flashimg=1 19 | /vbmeta_system emmc /dev/block/bootdevice/by-name/vbmeta_system flags=slotselect;display="VBMeta System";backup=1;flashimg=1 20 | 21 | # Persistent Firmware & Properties 22 | /firmware vfat /dev/block/bootdevice/by-name/modem flags=slotselect;display="Firmware";mounttodecrypt;fsflags="ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0" 23 | /persist ext4 /dev/block/bootdevice/by-name/persist flags=display="Persist";fsflags=ro 24 | /persist_image emmc /dev/block/bootdevice/by-name/persist flags=display="Persist";backup=1 25 | 26 | # Modem partitions 27 | /modem emmc /dev/block/bootdevice/by-name/modem flags=slotselect;backup=1;display="Modem" 28 | /bluetooth emmc /dev/block/bootdevice/by-name/bluetooth flags=slotselect;backup=1;subpartitionof=/modem 29 | /dsp emmc /dev/block/bootdevice/by-name/dsp flags=slotselect;backup=1;subpartitionof=/modem 30 | 31 | # EFS partitions 32 | /efs1 emmc /dev/block/bootdevice/by-name/modemst1 flags=backup=1;display="EFS" 33 | /efs2 emmc /dev/block/bootdevice/by-name/modemst2 flags=backup=1;subpartitionof=/efs1 34 | /efsc emmc /dev/block/bootdevice/by-name/fsc flags=backup=1;subpartitionof=/efs1 35 | /efsg emmc /dev/block/bootdevice/by-name/fsg flags=backup=1;subpartitionof=/efs1 36 | 37 | # Removable storage 38 | /storage auto /data/media/0 flags=display="Internal Storage";backup=1;usermrf;fsflags="bind,utf8";removable 39 | /usb_otg vfat /dev/block/sdg1 /dev/block/sdg flags=display="USB-Storage";fsflags=utf8;storage;wipeingui;removable 40 | # 41 | -------------------------------------------------------------------------------- /recovery/root/init.recovery.qcom.rc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2017-2018,2020-2021 The Linux Foundation. All rights reserved. 2 | # 3 | # Redistribution and use in source and binary forms, with or without 4 | # modification, are permitted provided that the following conditions are met: 5 | # * Redistributions of source code must retain the above copyright 6 | # notice, this list of conditions and the following disclaimer. 7 | # * Redistributions in binary form must reproduce the above copyright 8 | # notice, this list of conditions and the following disclaimer in the 9 | # documentation and/or other materials provided with the distribution. 10 | # * Neither the name of The Linux Foundation nor 11 | # the names of its contributors may be used to endorse or promote 12 | # products derived from this software without specific prior written 13 | # permission. 14 | # 15 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 16 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17 | # IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | # NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 19 | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 20 | # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 21 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 22 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 23 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 24 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 25 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 | # 27 | 28 | on early-init 29 | start vendor.gatekeeper_default 30 | 31 | service post-boot-script /system/bin/sh -c /vendor/bin/init.kernel.post_boot-sun_default_6_2.sh 32 | user root 33 | group root 34 | oneshot 35 | seclabel u:r:recovery:s0 36 | 37 | on early-fs 38 | write /proc/sys/walt/sched_lib_name "recovery,Updater,updater,update_engine_sideload" 39 | write /proc/sys/walt/sched_lib_mask_force 255 40 | 41 | on init 42 | write /sys/class/backlight/panel0-backlight/brightness 200 43 | setprop sys.usb.configfs 1 44 | start vendor.boot-qti 45 | setprop prepdecrypt.setpatch true 46 | 47 | on property:ro.boot.usbcontroller=* 48 | setprop sys.usb.controller ${ro.boot.usbcontroller} 49 | wait /sys/bus/platform/devices/${ro.boot.usb.dwc3_msm:-a600000.ssusb}/mode 50 | write /sys/bus/platform/devices/${ro.boot.usb.dwc3_msm:-a600000.ssusb}/mode peripheral 51 | wait /sys/class/udc/${ro.boot.usbcontroller} 1 52 | 53 | on fs 54 | wait /dev/block/platform/soc/${ro.boot.bootdevice} 55 | symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice 56 | write /proc/sys/kernel/firmware_config/force_sysfs_fallback 1 57 | 58 | on property:twrp.modules.loaded=true 59 | # Mount firmware 60 | mkdir /firmware 61 | mount vfat /dev/block/bootdevice/by-name/modem${ro.boot.slot_suffix} /firmware ro 62 | # Load ADSP firmware for PMIC 63 | wait /sys/kernel/boot_adsp/ssr 64 | write /sys/kernel/boot_adsp/ssr 1 65 | wait /sys/class/power_supply/battery 66 | start vendor.health-default 67 | start vendor.oplus.vibrator 68 | umount /firmware 69 | 70 | on property:ro.crypto.state=encrypted && property:ro.boot.dynamic_partitions=true 71 | start prepdecrypt.vendor 72 | 73 | on property:hwservicemanager.ready=true 74 | setprop sys.boot_completed 1 75 | 76 | on property:vendor.sys.listeners.registered=true 77 | start vendor.ssgtzd 78 | start vendor.keymint-strongbox 79 | 80 | -------------------------------------------------------------------------------- /recovery/root/system/etc/ueventd.rc: -------------------------------------------------------------------------------- 1 | import /vendor/etc/ueventd.rc 2 | import /odm/etc/ueventd.rc 3 | import /odm/etc/ueventd.reserve.rc 4 | # ifdef OPLUS_FEATURE_WIFI_BDF 5 | # fangbinghua@CONNECTIVITY.WIFI.HARDWARE.BDF, add for mtk wifi cfg loading 6 | import /odm/etc/ueventd.wifi.rc 7 | # endif /* OPLUS_FEATURE_WIFI_BDF */ 8 | # ifndef OPLUS_FEATURE_WIFI_BDF 9 | # WuGuotian@CONNECTIVITY.WIFI.HARDWARE.BDF.1065227 , 2021/05/26, 10 | # Modify for: multi projects using different bdf, adding persist into firmware_directories 11 | # firmware_directories /etc/firmware/ /odm/firmware/ /vendor/firmware/ /firmware/image/ 12 | # else /* OPLUS_FEATURE_WIFI_BDF */ 13 | firmware_directories /etc/firmware/ /odm/firmware/ /data/vendor/firmware/update/ /vendor/firmware/ /firmware/image/ /vendor/firmware_mnt/image/qca6490/ /data/oplus/fw_update/ /mnt/vendor/persist/copy/ /mnt/vendor/persist/ /odm/etc/wifi/ /vendor/firmware_mnt/image/ 14 | # endif /* OPLUS_FEATURE_WIFI_BDF */ 15 | 16 | uevent_socket_rcvbuf_size 16M 17 | 18 | subsystem graphics 19 | devname uevent_devpath 20 | dirname /dev/graphics 21 | 22 | subsystem drm 23 | devname uevent_devpath 24 | dirname /dev/dri 25 | 26 | subsystem input 27 | devname uevent_devpath 28 | dirname /dev/input 29 | 30 | subsystem sound 31 | devname uevent_devpath 32 | dirname /dev/snd 33 | 34 | subsystem dma_heap 35 | devname uevent_devpath 36 | dirname /dev/dma_heap 37 | 38 | subsystem vfio 39 | devname uevent_devpath 40 | dirname /dev/vfio 41 | 42 | # ueventd can only set permissions on device nodes and their associated 43 | # sysfs attributes, not on arbitrary paths. 44 | # 45 | # format for /dev rules: devname mode uid gid 46 | # format for /sys rules: nodename attr mode uid gid 47 | # shortcut: "mtd@NN" expands to "/dev/mtd/mtdNN" 48 | 49 | /dev/null 0666 root root 50 | /dev/zero 0666 root root 51 | /dev/full 0666 root root 52 | /dev/ptmx 0666 root root 53 | /dev/tty 0666 root root 54 | /dev/random 0666 root root 55 | /dev/urandom 0666 root root 56 | # Aside from kernel threads, only prng_seeder needs access to HW RNG 57 | /dev/hw_random 0400 prng_seeder prng_seeder 58 | /dev/ashmem* 0666 root root 59 | /dev/binder 0666 root root 60 | /dev/hwbinder 0666 root root 61 | /dev/vndbinder 0666 root root 62 | /dev/vfio/* 0666 root root 63 | 64 | /dev/pmsg0 0222 root log 65 | /dev/dma_heap/system 0444 system system 66 | /dev/dma_heap/system-uncached 0444 system system 67 | /dev/dma_heap/system-secure 0444 system system 68 | 69 | # kms driver for drm based gpu 70 | /dev/dri/* 0666 root graphics 71 | 72 | # these should not be world writable 73 | /dev/uhid 0660 uhid uhid 74 | /dev/uinput 0660 uhid uhid 75 | /dev/rtc0 0640 system system 76 | /dev/tty0 0660 root system 77 | /dev/graphics/* 0660 root graphics 78 | /dev/input/* 0660 root input 79 | /dev/v4l-touch* 0660 root input 80 | /dev/snd/* 0660 system audio 81 | /dev/bus/usb/* 0660 root usb 82 | /dev/mtp_usb 0660 root mtp 83 | /dev/usb_accessory 0660 root usb 84 | /dev/tun 0660 system vpn 85 | /dev/hidraw* 0660 system system 86 | 87 | # CDMA radio interface MUX 88 | /dev/ppp 0660 radio vpn 89 | 90 | /dev/kvm 0666 root root 91 | /dev/vhost-vsock 0666 root root 92 | 93 | # ifdef OPLUS_FEATURE_PARAM 94 | /dev/block/by-name/param 0660 root system 95 | /dev/block/by-name/ddr 0660 root system 96 | /dev/block/bootdevice/by-name/ddr 0660 root system 97 | # endif 98 | 99 | #ifdef OPLUS_FEATURE_STORAGE_TOOL 100 | #Xuweijie1@BSP.Storage , 20200601. add for Memory Monitor 101 | /dev/sg3 0600 system system 102 | #endif /* OPLUS_FEATURE_STORAGE_TOOL */ 103 | 104 | # sysfs properties 105 | /sys/devices/platform/trusty.* trusty_version 0440 root log 106 | /sys/devices/virtual/input/input* enable 0660 root input 107 | /sys/devices/virtual/input/input* poll_delay 0660 root input 108 | /sys/devices/virtual/usb_composite/* enable 0664 root system 109 | /sys/devices/system/cpu/cpu* cpufreq/scaling_max_freq 0664 system system 110 | /sys/devices/system/cpu/cpu* cpufreq/scaling_min_freq 0664 system system 111 | /sys/devices/virtual/misc/uhid/*/leds/* brightness 0664 system system 112 | /sys/devices/virtual/misc/uhid/*/leds/* multi_intensity 0664 system system 113 | -------------------------------------------------------------------------------- /recovery/root/init.recovery.usb.rc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2011-2023, The Linux Foundation. All rights reserved. 2 | # 3 | # Redistribution and use in source and binary forms, with or without 4 | # modification, are permitted provided that the following conditions are met: 5 | # * Redistributions of source code must retain the above copyright 6 | # notice, this list of conditions and the following disclaimer. 7 | # * Redistributions in binary form must reproduce the above copyright 8 | # notice, this list of conditions and the following disclaimer in the 9 | # documentation and/or other materials provided with the distribution. 10 | # * Neither the name of The Linux Foundation nor 11 | # the names of its contributors may be used to endorse or promote 12 | # products derived from this software without specific prior written 13 | # permission. 14 | # 15 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 16 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17 | # IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | # NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 19 | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 20 | # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 21 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 22 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 23 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 24 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 25 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 | # 27 | 28 | on fs 29 | write /config/usb_gadget/g1/bcdUSB 0x0200 30 | write /config/usb_gadget/g1/os_desc/use 1 31 | write /config/usb_gadget/g1/idVendor 0x2717 32 | write /config/usb_gadget/g1/idProduct 0x4EE7 33 | mkdir /config/usb_gadget/g1/functions/mass_storage.0 34 | mkdir /config/usb_gadget/g1/functions/ffs.mtp 35 | mkdir /config/usb_gadget/g1/functions/ffs.adb 36 | mkdir /config/usb_gadget/g1/functions/ffs.fastboot 37 | write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1 38 | write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100" 39 | symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 40 | mkdir /dev/usb-ffs 0775 shell system 41 | mkdir /dev/usb-ffs/mtp 0770 shell system 42 | mkdir /dev/usb-ffs/adb 0770 shell system 43 | mkdir /dev/usb-ffs/fastboot 0770 shell system 44 | mount functionfs mtp /dev/usb-ffs/mtp uid=1024,gid=1024,rmode=0770,fmode=0660,no_disconnect=1 45 | mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=1000,rmode=0770,fmode=0660,no_disconnect=1 46 | mount functionfs fastboot /dev/usb-ffs/fastboot uid=1000,gid=1000,rmode=0770,fmode=0660,no_disconnect=1 47 | setprop sys.usb.mtp.device_type 3 48 | setprop sys.usb.mtp.batchcancel 1 49 | setprop sys.usb.configfs 1 50 | 51 | on property:sys.usb.config=none && property:sys.usb.configfs=1 52 | setprop sys.usb.ffs.ready 0 53 | setprop sys.usb.ffs.mtp.ready 0 54 | write /config/usb_gadget/g1/bDeviceClass 0 55 | write /config/usb_gadget/g1/bDeviceSubClass 0 56 | write /config/usb_gadget/g1/bDeviceProtocol 0 57 | rm /config/usb_gadget/g1/configs/b.1/f1 58 | rm /config/usb_gadget/g1/configs/b.1/f2 59 | setprop sys.usb.state ${sys.usb.config} 60 | 61 | on property:init.svc.adbd=stopped 62 | setprop sys.usb.ffs.ready 0 63 | 64 | on property:sys.usb.config=adb && property:sys.usb.configfs=1 65 | start adbd 66 | 67 | on property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 68 | start adbd 69 | 70 | on property:sys.usb.config=sideload && property:sys.usb.configfs=1 71 | start adbd 72 | 73 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=adb && property:sys.usb.configfs=1 74 | write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "adb" 75 | write /config/usb_gadget/g1/idVendor 0x18D1 76 | write /config/usb_gadget/g1/idProduct 0x4EE7 77 | symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1 78 | write /config/usb_gadget/g1/UDC ${sys.usb.controller} 79 | setprop sys.usb.state ${sys.usb.config} 80 | 81 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=sideload && property:sys.usb.configfs=1 82 | write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "adb" 83 | write /config/usb_gadget/g1/idVendor 0x18D1 84 | write /config/usb_gadget/g1/idProduct 0x4EE7 85 | symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1 86 | write /config/usb_gadget/g1/UDC ${sys.usb.controller} 87 | setprop sys.usb.state ${sys.usb.config} 88 | 89 | on property:sys.usb.config=mtp && property:sys.usb.configfs=1 90 | write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp" 91 | rm /config/usb_gadget/g1/configs/b.1/f1 92 | rm /config/usb_gadget/g1/configs/b.1/f2 93 | write /config/usb_gadget/g1/idVendor 0x2717 94 | write /config/usb_gadget/g1/idProduct 0xFF40 95 | symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 96 | write /config/usb_gadget/g1/UDC ${sys.usb.controller} 97 | setprop sys.usb.state ${sys.usb.config} 98 | 99 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 100 | write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_adb" 101 | rm /config/usb_gadget/g1/configs/b.1/f1 102 | rm /config/usb_gadget/g1/configs/b.1/f2 103 | write /config/usb_gadget/g1/idVendor 0x2717 104 | write /config/usb_gadget/g1/idProduct 0xFF48 105 | symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 106 | symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 107 | write /config/usb_gadget/g1/UDC ${sys.usb.controller} 108 | setprop sys.usb.state ${sys.usb.config} 109 | 110 | on property:sys.usb.ffs.ready=1 && property:sys.usb.config=fastboot && property:sys.usb.configfs=1 111 | write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "fastboot" 112 | rm /config/usb_gadget/g1/configs/b.1/f1 113 | rm /config/usb_gadget/g1/configs/b.1/f2 114 | write /config/usb_gadget/g1/idVendor 0x18D1 115 | write /config/usb_gadget/g1/idProduct 0xD00D 116 | symlink /config/usb_gadget/g1/functions/ffs.fastboot /config/usb_gadget/g1/configs/b.1/f1 117 | write /config/usb_gadget/g1/UDC ${sys.usb.controller} 118 | setprop sys.usb.state ${sys.usb.config} -------------------------------------------------------------------------------- /BoardConfig.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2025 The Android Open Source Project 3 | # Copyright (C) 2025 SebaUbuntu's TWRP device tree generator 4 | # 5 | # SPDX-License-Identifier: Apache-2.0 6 | # 7 | # Copyright (C) 2024-2025 The OrangeFox Recovery Project 8 | # SPDX-License-Identifier: GPL-3.0-or-later 9 | # 10 | 11 | DEVICE_PATH := device/oneplus/dodge 12 | 13 | 14 | # For building with minimal manifest 15 | ALLOW_MISSING_DEPENDENCIES := true 16 | BUILD_BROKEN_DUP_RULES := true 17 | BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true 18 | 19 | BUILD_BROKEN_NINJA_USES_ENV_VARS += RTIC_MPGEN 20 | BUILD_BROKEN_PLUGIN_VALIDATION := soong-libaosprecovery_defaults soong-libguitwrp_defaults soong-libminuitwrp_defaults soong-vold_defaults 21 | 22 | # Architecture 23 | TARGET_ARCH := arm64 24 | TARGET_ARCH_VARIANT := armv8-a 25 | TARGET_CPU_ABI := arm64-v8a 26 | TARGET_CPU_VARIANT := generic 27 | TARGET_CPU_VARIANT_RUNTIME := oryon 28 | 29 | # Power 30 | ENABLE_CPUSETS := true 31 | ENABLE_SCHEDBOOST := true 32 | 33 | # Bootloader 34 | PRODUCT_PLATFORM := sun 35 | TARGET_BOOTLOADER_BOARD_NAME := $(PRODUCT_RELEASE_NAME) 36 | TARGET_NO_BOOTLOADER := true 37 | 38 | # Platform 39 | TARGET_BOARD_PLATFORM := sm8750 40 | TARGET_BOARD_PLATFORM_GPU := qcom-adreno830 41 | QCOM_BOARD_PLATFORMS += sm8750 42 | 43 | # Kernel 44 | TARGET_KERNEL_ARCH := arm64 45 | TARGET_KERNEL_HEADER_ARCH := arm64 46 | BOARD_KERNEL_IMAGE_NAME := Image 47 | BOARD_BOOT_HEADER_VERSION := 4 48 | BOARD_KERNEL_PAGESIZE := 4096 49 | TARGET_PREBUILT_KERNEL := kernel/prebuilts/6.6/arm64/kernel-6.6 50 | BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION) 51 | BOARD_MKBOOTIMG_ARGS += --pagesize $(BOARD_KERNEL_PAGESIZE) 52 | 53 | BOARD_RAMDISK_USE_LZ4 := true 54 | 55 | # A/B 56 | AB_OTA_UPDATER := true 57 | AB_OTA_PARTITIONS := \ 58 | boot \ 59 | init_boot \ 60 | vendor_boot \ 61 | dtbo \ 62 | odm \ 63 | product \ 64 | system \ 65 | system_ext \ 66 | system_dlkm \ 67 | vbmeta \ 68 | vbmeta_system \ 69 | vbmeta_vendor \ 70 | vendor \ 71 | vendor_dlkm 72 | 73 | # AB partitions for oplus 74 | AB_OTA_PARTITIONS += \ 75 | my_bigball \ 76 | my_carrier \ 77 | my_company \ 78 | my_engineering \ 79 | my_heytap \ 80 | my_manifest \ 81 | my_preload \ 82 | my_product \ 83 | my_region \ 84 | my_stock 85 | 86 | # Verified Boot 87 | BOARD_AVB_ENABLE := true 88 | 89 | # Partitions 90 | BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true 91 | BOARD_RECOVERYIMAGE_PARTITION_SIZE := 104857600 92 | 93 | # Dynamic Partition 94 | BOARD_SUPER_PARTITION_SIZE := 15354134528 95 | BOARD_SUPER_PARTITION_GROUPS := qti_dynamic_partitions 96 | BOARD_QTI_DYNAMIC_PARTITIONS_SIZE := 15349940224 97 | BOARD_QTI_DYNAMIC_PARTITIONS_PARTITION_LIST := \ 98 | system system_ext product vendor vendor_dlkm odm 99 | BOARD_QTI_DYNAMIC_PARTITIONS_PARTITION_LIST += \ 100 | my_bigball my_carrier my_company my_engineering my_heytap my_manifest my_preload my_product my_region my_stock 101 | 102 | BOARD_PARTITION_LIST := $(call to-upper, $(BOARD_QTI_DYNAMIC_PARTITIONS_PARTITION_LIST)) 103 | $(foreach p, $(BOARD_PARTITION_LIST), $(eval BOARD_$(p)IMAGE_FILE_SYSTEM_TYPE := erofs)) 104 | $(foreach p, $(BOARD_PARTITION_LIST), $(eval TARGET_COPY_OUT_$(p) := $(call to-lower, $(p)))) 105 | BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4 106 | 107 | # File systems 108 | BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs 109 | TARGET_USERIMAGES_USE_EXT4 := true 110 | TARGET_USERIMAGES_USE_F2FS := true 111 | 112 | # Crypto 113 | BOARD_USES_METADATA_PARTITION := true 114 | BOARD_USES_QCOM_FBE_DECRYPTION := true 115 | TW_INCLUDE_CRYPTO := true 116 | TW_INCLUDE_CRYPTO_FBE := true 117 | TW_INCLUDE_FBE_METADATA_DECRYPT := true 118 | TW_USE_FSCRYPT_POLICY := 2 119 | 120 | # Recovery 121 | BOARD_EXCLUDE_KERNEL_FROM_RECOVERY_IMAGE := true 122 | TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888" 123 | TW_INCLUDE_FASTBOOTD := true 124 | TW_SKIP_ADDITIONAL_FSTAB := true 125 | 126 | # Tool 127 | TW_INCLUDE_LIBRESETPROP := true 128 | TW_INCLUDE_LPDUMP := true 129 | TW_INCLUDE_LPTOOLS := true 130 | TW_INCLUDE_REPACKTOOLS := true 131 | TW_INCLUDE_RESETPROP := true 132 | 133 | # Debug 134 | TARGET_USES_LOGD := true 135 | TWRP_INCLUDE_LOGCAT := true 136 | TARGET_RECOVERY_DEVICE_MODULES += debuggerd 137 | TARGET_RECOVERY_DEVICE_MODULES += strace 138 | RECOVERY_BINARY_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/debuggerd 139 | RECOVERY_BINARY_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/strace 140 | 141 | # TWRP display 142 | TW_BRIGHTNESS_PATH := "/sys/class/backlight/panel0-backlight/brightness" 143 | TW_DEFAULT_BRIGHTNESS := 2047 144 | TW_FRAMERATE := 120 145 | TW_MAX_BRIGHTNESS := 4094 146 | TW_NO_SCREEN_BLANK := true 147 | TW_SCREEN_BLANK_ON_BOOT := true 148 | TW_THEME := portrait_hdpi 149 | TARGET_USES_VULKAN := true 150 | 151 | # TWRP file system 152 | RECOVERY_SDCARD_ON_DATA := true 153 | TARGET_USES_MKE2FS := true 154 | TW_ENABLE_FS_COMPRESSION := true 155 | TW_INCLUDE_FUSE_EXFAT := true 156 | TW_INCLUDE_FUSE_NTFS := true 157 | TW_INCLUDE_NTFS_3G := true 158 | TW_NO_EXFAT_FUSE := true 159 | 160 | # Version 161 | PLATFORM_VERSION := 99.87.36 162 | PLATFORM_VERSION_LAST_STABLE := $(PLATFORM_VERSION) 163 | PLATFORM_SECURITY_PATCH := 2099-12-31 164 | VENDOR_SECURITY_PATCH := $(PLATFORM_SECURITY_PATCH) 165 | BOOT_SECURITY_PATCH := $(PLATFORM_SECURITY_PATCH) 166 | TW_DEVICE_VERSION := OnePlus_13 167 | 168 | # Vibrator 169 | TW_SUPPORT_INPUT_AIDL_HAPTICS := true 170 | 171 | # Other TWRP Configurations 172 | TARGET_RECOVERY_QCOM_RTC_FIX := true 173 | TW_CUSTOM_CPU_TEMP_PATH := "/sys/class/thermal/thermal_zone45/temp" # CPU-0-0-0 174 | TW_EXCLUDE_APEX := true 175 | TW_EXCLUDE_DEFAULT_USB_INIT := true 176 | TW_DEFAULT_LANGUAGE := en 177 | TW_EXTRA_LANGUAGES := true 178 | TW_LOAD_VENDOR_MODULES := "oplus_bsp_synaptics_tcm2.ko oplus_bsp_tp_common.ko oplus_bsp_tp_custom.ko oplus_bsp_tp_focal_common.ko oplus_bsp_tp_ft3518.ko oplus_bsp_tp_ft3658u_spi.ko oplus_bsp_tp_ft3681.ko oplus_bsp_tp_ft3683g.ko oplus_bsp_tp_ft8057p.ko oplus_bsp_tp_goodix_comnon.ko oplus_bsp_tp_gt9916.ko oplus_bsp_tp_gt9966.ko oplus_bsp_tp_ilitek7807s.ko oplus_bsp_tp_ilitek_common.ko oplus_bsp_tp_notify.ko oplus_bsp_tp_novatek_common.ko oplus_bsp_tp_nt36528_noflash.ko oplus_bsp_tp_nt36532_noflash.ko oplus_bsp_tp_nt36672c_noflash.ko oplus_bsp_tp_syna_common.ko oplus_bsp_tp_tcm_S3908.ko oplus_bsp_tp_tcm_S3910.ko oplus_bsp_tp_td4377_noflash.ko q6_pdr_dlkm.ko q6_notifier_dlkm.ko snd_event_dlkm.ko gpr_dlkm.ko spf_core_dlkm.ko adsp_loader_dlkm.ko oplus_chg_v2.ko stm_st54se_gpio.ko nxp-nci.ko" 179 | TW_LOAD_VENDOR_MODULES_EXCLUDE_GKI := true 180 | TW_USE_SERIALNO_PROPERTY_FOR_DEVICE_ID := true 181 | TW_USE_TOOLBOX := true 182 | TW_INPUT_BLACKLIST := "hbtp_vm" 183 | 184 | # se_omapi 185 | TW_INCLUDE_OMAPI := true 186 | # 187 | -------------------------------------------------------------------------------- /recovery/root/system/etc/recovery.fstab: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2019-2020 The Linux Foundation. All rights reserved. 2 | # 3 | # Redistribution and use in source and binary forms, with or without 4 | # modification, are permitted (subject to the limitations in the 5 | # disclaimer below) provided that the following conditions are met: 6 | # 7 | # * Redistributions of source code must retain the above copyright 8 | # notice, this list of conditions and the following disclaimer. 9 | # 10 | # * Redistributions in binary form must reproduce the above 11 | # copyright notice, this list of conditions and the following 12 | # disclaimer in the documentation and/or other materials provided 13 | # with the distribution. 14 | # 15 | # * Neither the name of The Linux Foundation nor the names of its 16 | # contributors may be used to endorse or promote products derived 17 | # from this software without specific prior written permission. 18 | # 19 | # NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE 20 | # GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT 21 | # HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED 22 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 23 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 24 | # IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 25 | # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 26 | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE 27 | # GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 28 | # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 29 | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 30 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 31 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | 33 | # Android fstab file. 34 | # The filesystem that contains the filesystem checker binary (typically /system) cannot 35 | # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK 36 | 37 | # 38 | 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 39 | system /system erofs ro wait,slotselect,avb=vbmeta_system,logical,first_stage_mount,avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey 40 | system_ext /system_ext ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount 41 | system_ext /system_ext erofs ro wait,slotselect,avb=vbmeta_system,logical,first_stage_mount 42 | product /product ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount 43 | product /product erofs ro wait,slotselect,avb=vbmeta_system,logical,first_stage_mount 44 | vendor /vendor ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_vendor,logical,first_stage_mount 45 | vendor /vendor erofs ro wait,slotselect,avb=vbmeta_vendor,logical,first_stage_mount 46 | my_product /my_product ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount 47 | my_product /my_product erofs ro wait,slotselect,logical,first_stage_mount 48 | my_company /my_company ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount,nofail 49 | my_company /my_company erofs ro wait,slotselect,logical,first_stage_mount,nofail 50 | my_carrier /my_carrier ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount,nofail 51 | my_carrier /my_carrier erofs ro wait,slotselect,logical,first_stage_mount,nofail 52 | my_region /my_region ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount,nofail 53 | my_region /my_region erofs ro wait,slotselect,logical,first_stage_mount,nofail 54 | my_bigball /my_bigball ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount,nofail 55 | my_bigball /my_bigball erofs ro wait,slotselect,logical,first_stage_mount,nofail 56 | my_heytap /my_heytap ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount,nofail 57 | my_heytap /my_heytap erofs ro wait,slotselect,logical,first_stage_mount,nofail 58 | my_stock /my_stock ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount,nofail 59 | my_stock /my_stock erofs ro wait,slotselect,logical,first_stage_mount,nofail 60 | my_preload /my_preload ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount,nofail 61 | my_preload /my_preload erofs ro wait,slotselect,logical,first_stage_mount,nofail 62 | my_manifest /my_manifest ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount,nofail 63 | my_manifest /my_manifest erofs ro wait,slotselect,logical,first_stage_mount,nofail 64 | my_engineering /my_engineering ext4 ro,barrier=1 wait,slotselect,logical,first_stage_mount 65 | my_engineering /my_engineering erofs ro wait,slotselect,logical,first_stage_mount 66 | vendor_dlkm /vendor_dlkm ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_vendor,logical,first_stage_mount 67 | vendor_dlkm /vendor_dlkm erofs ro wait,slotselect,avb=vbmeta_vendor,logical,first_stage_mount 68 | system_dlkm /system_dlkm 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 69 | system_dlkm /system_dlkm erofs ro wait,slotselect,avb=vbmeta_system,logical,first_stage_mount,avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey 70 | odm /odm ext4 ro,barrier=1,discard wait,slotselect,logical,first_stage_mount,nofail 71 | odm /odm erofs ro wait,slotselect,logical,first_stage_mount,nofail 72 | /dev/block/bootdevice/by-name/metadata /metadata f2fs noatime,nosuid,nodev,discard wait,check,formattable,first_stage_mount 73 | /dev/block/bootdevice/by-name/userdata /data f2fs noatime,nosuid,nodev,discard,reserve_root=32768,resgid=1065,fsync_mode=nobarrier,inlinecrypt latemount,resize,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=128M,sysfs_path=/sys/devices/platform/soc/1d84000.ufshc,checkpoint=fs 74 | /dev/block/bootdevice/by-name/misc /misc emmc defaults defaults 75 | /dev/block/bootdevice/by-name/vendor_boot /vendor_boot emmc defaults wait,slotselect,backup=1,flashimg=1,display="Vendor Boot" 76 | -------------------------------------------------------------------------------- /recovery/root/vendor/bin/init.kernel.post_boot-sun_default_6_2.sh: -------------------------------------------------------------------------------- 1 | #============================================================================= 2 | # Copyright (c) 2020-2024 Qualcomm Technologies, Inc. 3 | # All Rights Reserved. 4 | # Confidential and Proprietary - Qualcomm Technologies, Inc. 5 | # 6 | # Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. 7 | # 8 | # Redistribution and use in source and binary forms, with or without 9 | # modification, are permitted provided that the following conditions are met: 10 | # * Redistributions of source code must retain the above copyright 11 | # notice, this list of conditions and the following disclaimer. 12 | # * Redistributions in binary form must reproduce the above copyright 13 | # notice, this list of conditions and the following disclaimer in the 14 | # documentation and/or other materials provided with the distribution. 15 | # * Neither the name of The Linux Foundation nor 16 | # the names of its contributors may be used to endorse or promote 17 | # products derived from this software without specific prior written 18 | # permission. 19 | # 20 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 | # IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 23 | # NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 24 | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 25 | # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 26 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 27 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 28 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 29 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 30 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 | #============================================================================= 32 | 33 | rev=`cat /sys/devices/soc0/revision` 34 | 35 | # Configure RT parameters: 36 | # Long running RT task detection is confined to consolidated builds. 37 | # Set RT throttle runtime to 50ms more than long running RT 38 | # task detection time. 39 | # Set RT throttle period to 100ms more than RT throttle runtime. 40 | long_running_rt_task_ms=1200 41 | sched_rt_runtime_ms=`expr $long_running_rt_task_ms + 50` 42 | sched_rt_runtime_us=`expr $sched_rt_runtime_ms \* 1000` 43 | sched_rt_period_ms=`expr $sched_rt_runtime_ms + 100` 44 | sched_rt_period_us=`expr $sched_rt_period_ms \* 1000` 45 | echo $sched_rt_period_us > /proc/sys/kernel/sched_rt_period_us 46 | echo $sched_rt_runtime_us > /proc/sys/kernel/sched_rt_runtime_us 47 | 48 | if [ -d /proc/sys/walt ]; then 49 | # configure maximum frequency when CPUs are partially halted 50 | echo 2147483647 > /proc/sys/walt/sched_max_freq_partial_halt 51 | 52 | # Core control parameters for gold 53 | echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus 54 | echo 60 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres 55 | echo 30 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres 56 | echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms 57 | echo 6 > /sys/devices/system/cpu/cpu0/core_ctl/task_thres 58 | echo 0 0 0 0 1 1 > /sys/devices/system/cpu/cpu0/core_ctl/not_preferred 59 | echo 0xFF > /sys/devices/system/cpu/cpu0/core_ctl/nrrun_cpu_mask 60 | echo 0x00 > /sys/devices/system/cpu/cpu0/core_ctl/nrrun_cpu_misfit_mask 61 | echo 0x00 > /sys/devices/system/cpu/cpu0/core_ctl/assist_cpu_mask 62 | echo 0x00 > /sys/devices/system/cpu/cpu0/core_ctl/assist_cpu_misfit_mask 63 | 64 | # Core control parameters for gold+ 65 | echo 0 > /sys/devices/system/cpu/cpu6/core_ctl/min_cpus 66 | echo 60 > /sys/devices/system/cpu/cpu6/core_ctl/busy_up_thres 67 | echo 30 > /sys/devices/system/cpu/cpu6/core_ctl/busy_down_thres 68 | echo 100 > /sys/devices/system/cpu/cpu6/core_ctl/offline_delay_ms 69 | echo 2 > /sys/devices/system/cpu/cpu6/core_ctl/task_thres 70 | echo 0 0 > /sys/devices/system/cpu/cpu6/core_ctl/not_preferred 71 | echo 0xC0 > /sys/devices/system/cpu/cpu6/core_ctl/nrrun_cpu_mask 72 | echo 0x3F > /sys/devices/system/cpu/cpu6/core_ctl/nrrun_cpu_misfit_mask 73 | echo 0x00 > /sys/devices/system/cpu/cpu6/core_ctl/assist_cpu_mask 74 | echo 0x3F > /sys/devices/system/cpu/cpu6/core_ctl/assist_cpu_misfit_mask 75 | 76 | echo 1 > /sys/devices/system/cpu/cpu0/core_ctl/enable 77 | echo 1 > /sys/devices/system/cpu/cpu6/core_ctl/enable 78 | 79 | # Configure Single Boost Thread 80 | echo 0 > /proc/sys/walt/sched_sbt_delay_windows 81 | echo 0x00 > /proc/sys/walt/sched_sbt_pause_cpus 82 | 83 | # Setting b.L scheduler parameters 84 | echo 95 > /proc/sys/walt/sched_upmigrate 85 | echo 85 > /proc/sys/walt/sched_downmigrate 86 | 87 | # By setting group upmigrate/downmigrate to 0, colocation is disabled. 88 | echo 0 > /proc/sys/walt/sched_group_downmigrate 89 | echo 0 > /proc/sys/walt/sched_group_upmigrate 90 | echo 1 > /proc/sys/walt/sched_walt_rotate_big_tasks 91 | echo 400000000 > /proc/sys/walt/sched_coloc_downmigrate_ns 92 | echo 8500000 1000000 1000000 1000000 1000000 1000000 2000000 2000000 > /proc/sys/walt/sched_coloc_busy_hyst_cpu_ns 93 | echo 255 > /proc/sys/walt/sched_coloc_busy_hysteresis_enable_cpus 94 | echo 10 10 10 10 10 10 95 95 > /proc/sys/walt/sched_coloc_busy_hyst_cpu_busy_pct 95 | echo 8500000 1000000 1000000 1000000 1000000 1000000 2000000 2000000 > /proc/sys/walt/sched_util_busy_hyst_cpu_ns 96 | echo 255 > /proc/sys/walt/sched_util_busy_hysteresis_enable_cpus 97 | echo 30 30 30 30 30 30 15 15 > /proc/sys/walt/sched_util_busy_hyst_cpu_util 98 | echo 255 > /proc/sys/walt/sched_legacy_smart_freq_hysteresis_enable_cpus 99 | echo 8500000 4000000 4000000 4000000 4000000 4000000 2000000 2000000 > /proc/sys/walt/sched_legacy_smart_freq_hyst_cpu_ns 100 | echo 40 > /proc/sys/walt/sched_cluster_util_thres_pct 101 | echo 30 > /proc/sys/walt/sched_idle_enough 102 | echo 10 > /proc/sys/walt/sched_ed_boost 103 | 104 | #Set early upmigrate tunables 105 | sched_upmigrate=`cat /proc/sys/walt/sched_upmigrate` 106 | sched_downmigrate=`cat /proc/sys/walt/sched_downmigrate` 107 | sched_upmigrate=${sched_upmigrate:0:2} 108 | sched_downmigrate=${sched_downmigrate:0:2} 109 | gold_early_upmigrate=`expr \( 1024 \* 100 \) \/ $sched_upmigrate` 110 | gold_early_downmigrate=`expr \( 1024 \* 100 \) \/ $sched_downmigrate` 111 | echo $gold_early_downmigrate > /proc/sys/walt/sched_early_downmigrate 112 | echo $gold_early_upmigrate > /proc/sys/walt/sched_early_upmigrate 113 | 114 | # Enable Gold CPUs for pipeline 115 | echo 56 > /proc/sys/walt/sched_pipeline_cpus 116 | 117 | # set the threshold for low latency task boost feature which prioritize 118 | # binder activity tasks 119 | echo 325 > /proc/sys/walt/walt_low_latency_task_threshold 120 | 121 | # configure maximum frequency of large and medium cluster for 122 | # different smart freq ipc reasons 123 | echo 2400000 2400000 2700000 3000000 2147483647 > /proc/sys/walt/cluster0/smart_freq/ipc_freq_levels 124 | echo 3513600 3800000 4100000 4200000 2147483647 > /proc/sys/walt/cluster1/smart_freq/ipc_freq_levels 125 | 126 | # Turn off scheduler boost at the end 127 | echo 0 > /proc/sys/walt/sched_boost 128 | 129 | # configure input boost settings 130 | if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then 131 | echo 864000 0 0 0 0 0 0 0 > /proc/sys/walt/input_boost/input_boost_freq 132 | else 133 | echo 864000 0 0 0 0 0 0 0 > /proc/sys/walt/input_boost/input_boost_freq 134 | fi 135 | echo 100 > /proc/sys/walt/input_boost/input_boost_ms 136 | 137 | echo "walt" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor 138 | echo "walt" > /sys/devices/system/cpu/cpufreq/policy6/scaling_governor 139 | 140 | echo 0 > /sys/devices/system/cpu/cpufreq/policy0/walt/down_rate_limit_us 141 | echo 0 > /sys/devices/system/cpu/cpufreq/policy0/walt/up_rate_limit_us 142 | echo 0 > /sys/devices/system/cpu/cpufreq/policy6/walt/down_rate_limit_us 143 | echo 0 > /sys/devices/system/cpu/cpufreq/policy6/walt/up_rate_limit_us 144 | 145 | echo 1 > /sys/devices/system/cpu/cpufreq/policy0/walt/pl 146 | echo 1 > /sys/devices/system/cpu/cpufreq/policy6/walt/pl 147 | 148 | if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then 149 | echo 787200 > /sys/devices/system/cpu/cpufreq/policy0/walt/rtg_boost_freq 150 | echo 902400 > /sys/devices/system/cpu/cpufreq/policy6/walt/rtg_boost_freq 151 | echo 1344000 > /sys/devices/system/cpu/cpufreq/policy0/walt/hispeed_freq 152 | echo 2380800 > /sys/devices/system/cpu/cpufreq/policy6/walt/hispeed_freq 153 | else 154 | echo 787200 > /sys/devices/system/cpu/cpufreq/policy0/walt/rtg_boost_freq 155 | echo 902400 > /sys/devices/system/cpu/cpufreq/policy6/walt/rtg_boost_freq 156 | echo 1344000 > /sys/devices/system/cpu/cpufreq/policy0/walt/hispeed_freq 157 | echo 2380800 > /sys/devices/system/cpu/cpufreq/policy6/walt/hispeed_freq 158 | fi 159 | # Disable hispeed_freq while cur_freq < 748800 (fangqiurong@BSP.CPU, 2024/8/2) 160 | echo 748800 > /sys/devices/system/cpu/cpufreq/policy0/walt/hispeed_cond_freq 161 | else 162 | echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor 163 | echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy6/scaling_governor 164 | echo 1 > /proc/sys/kernel/sched_pelt_multiplier 165 | fi 166 | 167 | if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then 168 | echo 537600 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq 169 | echo 844800 > /sys/devices/system/cpu/cpufreq/policy6/scaling_min_freq 170 | echo "0:537600 6:844800" > /data/vendor/perfd/default_scaling_min_freq 171 | else 172 | echo 537600 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq 173 | echo 844800 > /sys/devices/system/cpu/cpufreq/policy6/scaling_min_freq 174 | echo "0:537600 6:844800" > /data/vendor/perfd/default_scaling_min_freq 175 | fi 176 | 177 | # Reset the RT boost, which is 1024 (max) by default. 178 | echo 0 > /proc/sys/kernel/sched_util_clamp_min_rt_default 179 | 180 | # cpuset parameters 181 | echo 0-5 > /dev/cpuset/background/cpus 182 | echo 0-5 > /dev/cpuset/system-background/cpus 183 | 184 | 185 | # configure bus-dcvs 186 | bus_dcvs="/sys/devices/system/cpu/bus_dcvs" 187 | 188 | for device in $bus_dcvs/* 189 | do 190 | cat $device/hw_min_freq > $device/boost_freq 191 | done 192 | 193 | for llccbw in $bus_dcvs/LLCC/*bwmon-llcc-* 194 | do 195 | echo "5340 8132 9155 12298 14236 16265 18478" > $llccbw/mbps_zones 196 | echo 4 > $llccbw/sample_ms 197 | echo 80 > $llccbw/io_percent 198 | echo 70 > $llccbw/second_ab_scale 199 | echo 20 > $llccbw/hist_memory 200 | echo 5 > $llccbw/hyst_length 201 | echo 1 > $llccbw/idle_length 202 | echo 30 > $llccbw/down_thres 203 | echo 0 > $llccbw/guard_band_mbps 204 | echo 250 > $llccbw/up_scale 205 | echo 1600 > $llccbw/idle_mbps 206 | echo 806000 > $llccbw/max_freq 207 | echo 40 > $llccbw/window_ms 208 | done 209 | 210 | for llccbw in $bus_dcvs/LLCC/*bwmon-llcc-gold 211 | do 212 | echo 120 > $llccbw/io_percent 213 | echo 180 > $llccbw/low_power_io_percent 214 | echo "1017600 1017600" > $llccbw/max_low_power_cluster_freqs 215 | echo 1211000 > $llccbw/sched_boost_freq 216 | echo 1 > $llccbw/use_sched_boost 217 | done 218 | 219 | for latfloor in $bus_dcvs/*/*latfloor 220 | do 221 | echo 25000 > $latfloor/ipm_ceil 222 | done 223 | 224 | for qosgold in $bus_dcvs/DDRQOS/*gold 225 | do 226 | echo 50 > $qosgold/ipm_ceil 227 | done 228 | 229 | for qosprime in $bus_dcvs/DDRQOS/*prime 230 | do 231 | echo 100 > $qosprime/ipm_ceil 232 | done 233 | 234 | for ddrprime in $bus_dcvs/DDR/*prime 235 | do 236 | echo 25 > $ddrprime/freq_scale_pct 237 | echo 1500 > $ddrprime/freq_scale_floor_mhz 238 | echo 2800 > $ddrprime/freq_scale_ceil_mhz 239 | done 240 | 241 | echo s2idle > /sys/power/mem_sleep 242 | echo N > /sys/devices/system/cpu/qcom_lpm/parameters/sleep_disabled 243 | 244 | echo 4 > /proc/sys/kernel/printk 245 | 246 | # Change console log level as per console config property 247 | console_config=`getprop persist.vendor.console.silent.config` 248 | case "$console_config" in 249 | "1") 250 | echo "Enable console config to $console_config" 251 | echo 0 > /proc/sys/kernel/printk 252 | ;; 253 | *) 254 | echo "Enable console config to $console_config" 255 | ;; 256 | esac 257 | 258 | echo 1 > /proc/oplus_scheduler/sched_assist/silver_perf_core 259 | 260 | setprop vendor.post_boot.parsed 1 261 | -------------------------------------------------------------------------------- /recovery/root/vendor/bin/prepdecrypt.sh: -------------------------------------------------------------------------------- 1 | #!/sbin/sh 2 | 3 | # The below variables shouldn't need to be changed 4 | # unless you want to call the script something else 5 | SCRIPTNAME="prepdecrypt" 6 | LOGFILE=/tmp/recovery.log 7 | 8 | # 9 | # Override default settings 10 | # 11 | # If you want to force setting of osver and patchlevel to the system/vendor version, 12 | # set the below prop in init.recovery "on init" to trigger the override function 13 | check_setpatch_override() 14 | { 15 | setpatch_prop=$(getprop $SCRIPTNAME.setpatch) 16 | if [ -z "$setpatch_prop" ]; then 17 | SETPATCH_OVERRIDE=false 18 | else 19 | SETPATCH_OVERRIDE=true 20 | log_print 2 "SETPATCH Override flag found." 21 | SETPATCH=$setpatch_prop 22 | fi 23 | } 24 | # 25 | # Default TWRP values for PLATFORM_VERSION and PLATFORM_SECURITY_PATCH 26 | # 27 | # ro.build.version.release and ro.build.version.security_patch will get 28 | # set to the below values respectively if these props are blank when 29 | # the script runs. These values should be updated to reflect the 30 | # TWRP defaults in your device's BoardConfig.mk 31 | osver_twrp="99.87.36" 32 | patchlevel_twrp="2099-12-31" 33 | 34 | # Set default log level 35 | DEFAULT_LOGLEVEL=1 36 | # 0 Errors only 37 | # 1 Errors and Information 38 | # 2 Errors, Information, and Debugging 39 | CUSTOM_LOGLEVEL=$(getprop $SCRIPTNAME.loglevel) 40 | if [ -n "$CUSTOM_LOGLEVEL" ]; then 41 | __VERBOSE="$CUSTOM_LOGLEVEL" 42 | else 43 | __VERBOSE="$DEFAULT_LOGLEVEL" 44 | fi 45 | 46 | # Exit codes: 47 | # 0 Success 48 | # 1 Unknown encryption type 49 | # 2 Temp Mount Failure 50 | 51 | # Function for logging to the recovery log 52 | log_print() 53 | { 54 | # 0 = Error; 1 = Information; 2 = Debugging 55 | case $1 in 56 | 0|error) 57 | LOG_LEVEL="E" 58 | ;; 59 | 1|info) 60 | LOG_LEVEL="I" 61 | ;; 62 | 2|debug) 63 | LOG_LEVEL="DEBUG" 64 | ;; 65 | *) 66 | LOG_LEVEL="UNKNOWN" 67 | ;; 68 | esac 69 | if [ $__VERBOSE -ge "$1" ]; then 70 | echo "$LOG_LEVEL:$SCRIPTNAME::$2" >> "$LOGFILE" 71 | fi 72 | } 73 | 74 | relink() 75 | { 76 | log_print 2 "Updating linker path for $1..." 77 | blobs=$(find "$1" -type f -exec echo '{}' \;) 78 | if [ -n "$blobs" ]; then 79 | for source in $blobs; do 80 | fname=$(basename "$source") 81 | target="/sbin/$fname" 82 | log_print 2 "Relinking $source to $target..." 83 | sed 's|/system/bin/linker|///////sbin/linker|' "$source" > "$target" 84 | chmod 755 "$target" 85 | done 86 | else 87 | log_print 2 "$1 not found. Proceeding without relinking..." 88 | fi 89 | } 90 | 91 | finish() 92 | { 93 | if [ "$SETPATCH" = "true" ]; then 94 | is_system_mounted=$(getprop $SCRIPTNAME.system_mounted) 95 | if [ "$is_system_mounted" = 1 ]; then 96 | umount "$TEMPSYS" 97 | $setprop_bin $SCRIPTNAME.system_mounted 0 98 | rmdir "$TEMPSYS" 99 | fi 100 | if [ "$MNT_VENDOR" = "true" ]; then 101 | is_vendor_mounted=$(getprop $SCRIPTNAME.vendor_mounted) 102 | if [ "$is_vendor_mounted" = 1 ]; then 103 | umount "$TEMPVEN" 104 | $setprop_bin $SCRIPTNAME.vendor_mounted 0 105 | rmdir "$TEMPVEN" 106 | fi 107 | fi 108 | fi 109 | setprop crypto.ready 1 110 | log_print 1 "crypto.ready=$(getprop crypto.ready)" 111 | log_print 1 "Script complete. Device ready for decryption." 112 | exit 0 113 | } 114 | 115 | finish_error() 116 | { 117 | if [ "$SETPATCH" = "true" ]; then 118 | is_system_mounted=$(getprop $SCRIPTNAME.system_mounted) 119 | if [ "$is_system_mounted" = 1 ]; then 120 | umount "$TEMPSYS" 121 | $setprop_bin $SCRIPTNAME.system_mounted 0 122 | rmdir "$TEMPSYS" 123 | fi 124 | if [ "$MNT_VENDOR" = "true" ]; then 125 | is_vendor_mounted=$(getprop $SCRIPTNAME.vendor_mounted) 126 | if [ "$is_vendor_mounted" = 1 ]; then 127 | umount "$TEMPVEN" 128 | $setprop_bin $SCRIPTNAME.vendor_mounted 0 129 | rmdir "$TEMPVEN" 130 | fi 131 | fi 132 | fi 133 | setprop crypto.ready 1 134 | log_print 0 "Script run incomplete. Device may not be ready for decryption." 135 | exit 2 136 | } 137 | 138 | osver_default_value() 139 | { 140 | osver_default=$(grep "$1=" /"$DEFAULTPROP") 141 | log_print 2 "$DEFAULTPROP value: $osver_default" 142 | } 143 | 144 | patchlevel_default_value() 145 | { 146 | patchlevel_default=$(grep "$1=" /"$DEFAULTPROP") 147 | log_print 2 "$DEFAULTPROP value: $patchlevel_default" 148 | finish 149 | } 150 | 151 | update_default_values() 152 | { 153 | if [ -z "$1" ]; then 154 | log_print 0 "No $3. Checking original props..." 155 | if [ -n "$2" ]; then 156 | log_print 2 "Original $3 found. $4_orig=$2" 157 | log_print 2 "Setting $3 to original value..." 158 | $setprop_bin "$4" "$2" 159 | log_print 2 "Updating $DEFAULTPROP with Original $3..." 160 | echo "$4=$2" >> "/$DEFAULTPROP"; 161 | $5 "$4" 162 | else 163 | log_print 0 "No Original $3 found. Setting default value..." 164 | osver=$osver_twrp 165 | patchlevel=$patchlevel_twrp 166 | $setprop_bin "$4" "$1" 167 | log_print 2 "Updating $DEFAULTPROP with default $3..." 168 | echo "$4=$1" >> "/$DEFAULTPROP"; 169 | $5 "$4" 170 | fi 171 | else 172 | log_print 2 "$3 exists! $4=$1" 173 | $5 "$4" 174 | fi 175 | } 176 | 177 | check_dynamic() 178 | { 179 | dynamic_partitions=$(getprop ro.boot.dynamic_partitions) 180 | if [ "$dynamic_partitions" = "true" ]; then 181 | if [[ ! -e "/dev/block/mapper/system$suffix" && ! -e "/dev/block/mapper/vendor$suffix" ]]; then 182 | log_print 1 "/dev/block/mapper/system$suffix and /dev/block/mapper/vendor$suffix not Found! unset suffix" 183 | unset suffix 184 | fi 185 | fi 186 | } 187 | 188 | check_encrypt() 189 | { 190 | if [ "$sdkver" -ge 26 ]; then 191 | sleep 1 192 | fi 193 | encrypt_type=$(getprop ro.crypto.type) 194 | if [ "$encrypt_type" = "file" ]; then 195 | log_print 1 "File Based Encryption (FBE) is present." 196 | elif [ "$encrypt_type" = "block" ]; then 197 | log_print 1 "Full Device Encryption (FDE) found." 198 | else 199 | log_print 0 "Unknown decryption type or type not set. Exiting script." 200 | exit 1 201 | fi 202 | } 203 | 204 | check_fastboot_boot() 205 | { 206 | is_fastboot_boot=$(getprop ro.boot.fastboot) 207 | twrpfastboot=$(grep twrpfastboot /proc/cmdline) 208 | skip_initramfs_present=$(grep skip_initramfs /proc/cmdline) 209 | if [ -n "$is_fastboot_boot" ]; then 210 | if [ "$SETPATCH_OVERRIDE" = "false" ]; then 211 | SETPATCH=false 212 | fi 213 | log_print 2 "Fastboot boot detected. ro.boot.fastboot=$is_fastboot_boot" 214 | elif [ -z "$is_fastboot_boot" ] && { [ -n "$twrpfastboot" ] || [ -n "$skip_initramfs_present" ]; }; then 215 | if [ "$SETPATCH_OVERRIDE" = "false" ]; then 216 | SETPATCH=false 217 | fi 218 | $setprop_bin ro.boot.fastboot 1 219 | is_fastboot_boot=$(getprop ro.boot.fastboot) 220 | log_print 2 "Fastboot boot detected. ro.boot.fastboot=$is_fastboot_boot" 221 | else 222 | log_print 2 "Recovery/Fastbootd mode boot detected." 223 | fi 224 | } 225 | 226 | check_resetprop() 227 | { 228 | if [ -e /system/bin/resetprop ] || [ -e /sbin/resetprop ]; then 229 | log_print 2 "Resetprop binary found!" 230 | setprop_bin=resetprop 231 | else 232 | log_print 2 "Resetprop binary not found. Falling back to setprop." 233 | setprop_bin=setprop 234 | fi 235 | } 236 | 237 | temp_mount() 238 | { 239 | is_mounted=$(ls -A "$1" 2>/dev/null) 240 | if [ -n "$is_mounted" ]; then 241 | log_print 1 "$2 already mounted." 242 | else 243 | mkdir "$1" 244 | if [ -d "$1" ]; then 245 | log_print 2 "Temporary $2 folder created at $1." 246 | else 247 | log_print 0 "Unable to create temporary $2 folder." 248 | finish_error 249 | fi 250 | mount -o ro "$3" "$1" 251 | is_mounted=$(ls -A "$1" 2>/dev/null) 252 | if [ -n "$is_mounted" ]; then 253 | log_print 2 "$2 mounted at $1." 254 | $setprop_bin $SCRIPTNAME."$2"_mounted 1 255 | log_print 2 "$SCRIPTNAME.$2_mounted=$(getprop "$SCRIPTNAME"."$2"_mounted)" 256 | else 257 | log_print 0 "Unable to mount $2 to temporary folder." 258 | finish_error 259 | fi 260 | fi 261 | } 262 | 263 | osver=$(getprop ro.build.version.release) 264 | osver_orig=$(getprop ro.build.version.release_orig) 265 | sdkver=$(getprop ro.build.version.sdk) 266 | patchlevel=$(getprop ro.build.version.security_patch) 267 | patchlevel_orig=$(getprop ro.build.version.security_patch_orig) 268 | 269 | log_print 2 "Running $SCRIPTNAME script for TWRP..." 270 | check_encrypt 271 | 272 | log_print 2 "SDK version: $sdkver" 273 | if [ "$sdkver" -lt 26 ]; then 274 | DEFAULTPROP=default.prop 275 | log_print 2 "Legacy device found! DEFAULTPROP variable set to $DEFAULTPROP." 276 | else 277 | DEFAULTPROP=prop.default 278 | log_print 2 "DEFAULTPROP variable set to $DEFAULTPROP." 279 | fi 280 | if [ "$sdkver" -lt 29 ]; then 281 | venbin="/vendor/bin" 282 | venlib="/vendor/lib" 283 | abi=$(getprop ro.product.cpu.abi) 284 | case "$abi" in 285 | *64*) 286 | venlib="/vendor/lib64" 287 | log_print 2 "Device is 64-bit. Vendor library path set to $venlib." 288 | ;; 289 | *) 290 | log_print 2 "Device is 32-bit. Vendor library path set to $venlib." 291 | ;; 292 | esac 293 | relink "$venbin" 294 | relink "$venlib/libQSEEComAPI.so" 295 | fi 296 | 297 | ab_device=$(getprop ro.build.ab_update) 298 | 299 | if [ -n "$ab_device" ]; then 300 | log_print 2 "A/B device detected! Finding current boot slot..." 301 | suffix=$(getprop ro.boot.slot_suffix) 302 | if [ -z "$suffix" ]; then 303 | suf=$(getprop ro.boot.slot) 304 | if [ -n "$suf" ]; then 305 | suffix="_$suf" 306 | fi 307 | fi 308 | log_print 2 "Current boot slot: $suffix" 309 | fi 310 | 311 | recpath="/dev/block/bootdevice/by-name/recovery$suffix" 312 | check_setpatch_override 313 | if [ -e "$recpath" ]; then 314 | log_print 2 "Device has recovery partition!" 315 | # This should only be set to true for devices with recovery-in-boot 316 | if [ "$SETPATCH_OVERRIDE" = "false" ]; then 317 | SETPATCH=false 318 | fi 319 | else 320 | log_print 2 "No recovery partition found." 321 | if [ "$SETPATCH_OVERRIDE" = "false" ]; then 322 | SETPATCH=true 323 | fi 324 | fi 325 | 326 | if [ "$sdkver" -ge 26 ]; then 327 | if [ -z "$setprop_bin" ]; then 328 | check_resetprop 329 | fi 330 | 331 | check_fastboot_boot 332 | 333 | check_setpatch_override 334 | log_print 1 "SETPATCH=$SETPATCH" 335 | if [ "$SETPATCH" = false ]; then 336 | update_default_values "$osver" "$osver_orig" "OS version" "ro.build.version.release" osver_default_value 337 | update_default_values "$patchlevel" "$patchlevel_orig" "Security Patch Level" "ro.build.version.security_patch" patchlevel_default_value 338 | else 339 | log_print 2 "Build tree is Oreo or above. Proceed with setting props..." 340 | 341 | check_dynamic 342 | 343 | BUILDPROP="build.prop" 344 | TEMPSYS=/s 345 | syspath="/dev/block/mapper/system$suffix" 346 | if [ ! -e "/dev/block/mapper/system$suffix" ]; then 347 | log_print 2 "No system mapper found. Trying by-name..." 348 | syspath="/dev/block/bootdevice/by-name/system$suffix" 349 | fi 350 | 351 | if [ "$sdkver" -ge 29 ]; then 352 | SAR=true 353 | MNT_VENDOR=true 354 | TEMPVEN=/v 355 | venpath="/dev/block/mapper/vendor$suffix" 356 | if [ ! -e "/dev/block/mapper/vendor$suffix" ]; then 357 | log_print 2 "No vendor mapper found. Trying by-name..." 358 | venpath="/dev/block/bootdevice/by-name/vendor$suffix" 359 | fi 360 | 361 | temp_mount "$TEMPVEN" "vendor" "$venpath" 362 | 363 | if [ -f "$TEMPVEN/$BUILDPROP" ]; then 364 | log_print 2 "Vendor Build.prop exists! Reading vendor properties from build.prop..." 365 | vensdkver=$(grep -i -m 1 'ro.vendor.build.version.sdk=' "$TEMPVEN/$BUILDPROP" | cut -f2 -d'=' -s) 366 | log_print 2 "Current vendor Android SDK version: $vensdkver" 367 | if [ "$vensdkver" -gt 25 ]; then 368 | log_print 2 "Current vendor is Oreo or above. Proceed with setting vendor security patch level..." 369 | venpatchlevel=$(getprop ro.vendor.build.security_patch) 370 | log_print 2 "Current Vendor Security Patch Level: $venpatchlevel" 371 | venpatchlevel_device=$(grep -i -m 1 'ro.vendor.build.security_patch=' "$TEMPVEN/$BUILDPROP" | cut -f2 -d'=' -s) 372 | if ! [ "$venpatchlevel" = "venpatchlevel_device" ]; then 373 | $setprop_bin "ro.vendor.build.security_patch" "$venpatchlevel_device" 374 | sed -i "s/ro.vendor.build.security_patch=.*/ro.vendor.build.security_patch=""$venpatchlevel_device""/g" "/$DEFAULTPROP" ; 375 | venpatchlevel_new=$(getprop ro.vendor.build.security_patch) 376 | venpatchlevel_default=$(grep -i -m 1 'ro.vendor.build.security_patch=' /$DEFAULTPROP | cut -f2 -d'=' -s) 377 | if [ "$venpatchlevel_device" = "$venpatchlevel_new" ]; then 378 | log_print 2 "$setprop_bin successful! New Vendor Security Patch Level: $venpatchlevel_new" 379 | else 380 | log_print 0 "$setprop_bin failed. Vendor Security Patch Level unchanged." 381 | fi 382 | if [ "$venpatchlevel_device" = "$venpatchlevel_default" ]; then 383 | log_print 2 "$DEFAULTPROP update successful! ro.vendor.build.security_patch=$venpatchlevel_default" 384 | else 385 | log_print 0 "$DEFAULTPROP update failed. Vendor Security Patch Level unchanged." 386 | fi 387 | else 388 | venpatchlevel_default=$(grep -i -m 1 'ro.vendor.build.security_patch=' /$DEFAULTPROP | cut -f2 -d'=' -s) 389 | if ! [ "$venpatchlevel_device" = "$venpatchlevel_default" ]; then 390 | sed -i "s/ro.vendor.build.security_patch=.*/ro.vendor.build.security_patch=""$venpatchlevel_device""/g" "/$DEFAULTPROP" ; 391 | fi 392 | fi 393 | else 394 | log_print 2 "Current vendor is Nougat or older. Skipping vendor security patch level setting..." 395 | fi 396 | fi 397 | else 398 | SAR=$(getprop ro.build.system_root_image) 399 | fi 400 | 401 | if [ "$SAR" = "true" ]; then 402 | log_print 2 "System-as-Root device detected! Updating build.prop path variable..." 403 | BUILDPROP="system/build.prop" 404 | log_print 2 "Build.prop location set to $BUILDPROP." 405 | fi 406 | 407 | temp_mount "$TEMPSYS" "system" "$syspath" 408 | if [ ! -f "$TEMPSYS/$BUILDPROP" ]; then 409 | log_print 2 "/s Build.prop does not exist! Trying /system_root..." 410 | TEMPSYS=/system_root 411 | temp_mount "$TEMPSYS" "system" "$syspath" 412 | fi 413 | 414 | if [ -f "$TEMPSYS/$BUILDPROP" ]; then 415 | log_print 2 "Build.prop exists! Reading system properties from build.prop..." 416 | sdkver=$(grep -i -m 1 'ro.build.version.sdk=' "$TEMPSYS/$BUILDPROP" | cut -f2 -d'=' -s) 417 | log_print 2 "Current system Android SDK version: $sdkver" 418 | if [ "$sdkver" -gt 25 ]; then 419 | log_print 2 "Current system is Oreo or above. Proceed with setting OS Version & Security Patch Level..." 420 | log_print 2 "Current OS Version: $osver" 421 | osver=$(grep -i -m 1 'ro.build.version.release=' "$TEMPSYS/$BUILDPROP" | cut -f2 -d'=' -s) 422 | if [ -n "$osver" ]; then 423 | $setprop_bin "ro.build.version.release" "$osver" 424 | sed -i "s/ro.build.version.release=.*/ro.build.version.release=""$osver""/g" "/$DEFAULTPROP" ; 425 | osver_new=$(getprop ro.build.version.release) 426 | osver_default=$(grep -i -m 1 'ro.build.version.release=' /$DEFAULTPROP | cut -f2 -d'=' -s) 427 | if [ "$osver" = "$osver_new" ]; then 428 | log_print 2 "$setprop_bin successful! New OS Version: $osver_new" 429 | else 430 | log_print 0 "$setprop_bin failed. OS Version unchanged." 431 | fi 432 | if [ "$osver" = "$osver_default" ]; then 433 | log_print 2 "$DEFAULTPROP update successful! ro.build.version.release=$osver_default" 434 | else 435 | log_print 0 "$DEFAULTPROP update failed. OS Version unchanged." 436 | fi 437 | fi 438 | log_print 2 "Current Security Patch Level: $patchlevel" 439 | patchlevel=$(grep -i -m 1 'ro.build.version.security_patch=' "$TEMPSYS/$BUILDPROP" | cut -f2 -d'=' -s) 440 | if [ -n "$patchlevel" ]; then 441 | $setprop_bin "ro.build.version.security_patch" "$patchlevel" 442 | sed -i "s/ro.build.version.security_patch=.*/ro.build.version.security_patch=""$patchlevel""/g" "/$DEFAULTPROP" ; 443 | patchlevel_new=$(getprop ro.build.version.security_patch) 444 | patchlevel_default=$(grep -i -m 1 'ro.build.version.security_patch=' /$DEFAULTPROP | cut -f2 -d'=' -s) 445 | if [ "$patchlevel" = "$patchlevel_new" ]; then 446 | log_print 2 "$setprop_bin successful! New Security Patch Level: $patchlevel_new" 447 | else 448 | log_print 0 "$setprop_bin failed. Security Patch Level unchanged." 449 | fi 450 | if [ "$patchlevel" = "$patchlevel_default" ]; then 451 | log_print 2 "$DEFAULTPROP update successful! ro.build.version.security_patch=$patchlevel_default" 452 | else 453 | log_print 0 "$DEFAULTPROP update failed. Security Patch Level unchanged." 454 | fi 455 | fi 456 | finish 457 | else 458 | log_print 2 "Current vendor is Nougat or older. Skipping vendor security patch level setting..." 459 | finish 460 | fi 461 | else 462 | TEMPSYS=/s 463 | finish_error 464 | fi 465 | fi 466 | else 467 | log_print 2 "Build tree is Nougat or older. Skip setting props." 468 | finish 469 | fi 470 | -------------------------------------------------------------------------------- /recovery/root/vendor/odm/etc/vibrator/vibrator_effect.json: -------------------------------------------------------------------------------- 1 | { 2 | "9999" : { 3 | "def_style" : [ 4 | { 5 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_0.bin", 6 | "effect_id" : 0, 7 | "play_rate_hz" : 24000 8 | }, 9 | { 10 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_1.bin", 11 | "effect_id" : 1, 12 | "play_rate_hz" : 24000 13 | }, 14 | { 15 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_2.bin", 16 | "effect_id" : 2, 17 | "play_rate_hz" : 24000 18 | }, 19 | { 20 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_3.bin", 21 | "effect_id" : 3, 22 | "play_rate_hz" : 24000 23 | }, 24 | { 25 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_4.bin", 26 | "effect_id" : 4, 27 | "play_rate_hz" : 24000 28 | }, 29 | { 30 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_5.bin", 31 | "effect_id" : 5, 32 | "play_rate_hz" : 24000 33 | }, 34 | { 35 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_6.bin", 36 | "effect_id" : 6, 37 | "play_rate_hz" : 24000 38 | }, 39 | { 40 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_7.bin", 41 | "effect_id" : 7, 42 | "play_rate_hz" : 24000 43 | }, 44 | { 45 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_8.bin", 46 | "effect_id" : 8, 47 | "play_rate_hz" : 24000 48 | }, 49 | { 50 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_9.bin", 51 | "effect_id" : 9, 52 | "play_rate_hz" : 24000 53 | }, 54 | { 55 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_10.bin", 56 | "effect_id" : 10, 57 | "play_rate_hz" : 24000 58 | }, 59 | { 60 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_11.bin", 61 | "effect_id" : 11, 62 | "play_rate_hz" : 24000 63 | }, 64 | { 65 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_12.bin", 66 | "effect_id" : 12, 67 | "play_rate_hz" : 24000 68 | }, 69 | { 70 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_41.bin", 71 | "effect_id" : 41, 72 | "play_rate_hz" : 24000 73 | }, 74 | { 75 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_42.bin", 76 | "effect_id" : 42, 77 | "play_rate_hz" : 24000 78 | }, 79 | { 80 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_43.bin", 81 | "effect_id" : 43, 82 | "play_rate_hz" : 24000 83 | }, 84 | { 85 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_44.bin", 86 | "effect_id" : 44, 87 | "play_rate_hz" : 24000 88 | }, 89 | { 90 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_45.bin", 91 | "effect_id" : 45, 92 | "play_rate_hz" : 24000 93 | }, 94 | { 95 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_46.bin", 96 | "effect_id" : 46, 97 | "play_rate_hz" : 24000 98 | }, 99 | { 100 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_47.bin", 101 | "effect_id" : 47, 102 | "play_rate_hz" : 24000 103 | }, 104 | { 105 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_51.bin", 106 | "effect_id" : 51, 107 | "play_rate_hz" : 24000 108 | }, 109 | { 110 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_52.bin", 111 | "effect_id" : 52, 112 | "play_rate_hz" : 24000 113 | }, 114 | { 115 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_53.bin", 116 | "effect_id" : 53, 117 | "play_rate_hz" : 24000 118 | }, 119 | { 120 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_54.bin", 121 | "effect_id" : 54, 122 | "play_rate_hz" : 24000 123 | }, 124 | { 125 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_55.bin", 126 | "effect_id" : 55, 127 | "play_rate_hz" : 24000 128 | }, 129 | { 130 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_56.bin", 131 | "effect_id" : 56, 132 | "play_rate_hz" : 8000 133 | }, 134 | { 135 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_59.bin", 136 | "effect_id" : 59, 137 | "play_rate_hz" : 24000 138 | }, 139 | { 140 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_60.bin", 141 | "effect_id" : 60, 142 | "play_rate_hz" : 24000 143 | }, 144 | { 145 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_61.bin", 146 | "effect_id" : 61, 147 | "play_rate_hz" : 24000 148 | }, 149 | { 150 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_62.bin", 151 | "effect_id" : 62, 152 | "play_rate_hz" : 24000 153 | }, 154 | { 155 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_63.bin", 156 | "effect_id" : 63, 157 | "play_rate_hz" : 24000 158 | }, 159 | { 160 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_64.bin", 161 | "effect_id" : 64, 162 | "play_rate_hz" : 24000 163 | }, 164 | { 165 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_65.bin", 166 | "effect_id" : 65, 167 | "play_rate_hz" : 24000 168 | }, 169 | { 170 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_66.bin", 171 | "effect_id" : 66, 172 | "play_rate_hz" : 24000 173 | }, 174 | { 175 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_67.bin", 176 | "effect_id" : 67, 177 | "play_rate_hz" : 24000 178 | }, 179 | { 180 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_68.bin", 181 | "effect_id" : 68, 182 | "play_rate_hz" : 24000 183 | }, 184 | { 185 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_69.bin", 186 | "effect_id" : 69, 187 | "play_rate_hz" : 24000 188 | }, 189 | { 190 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_100.bin", 191 | "effect_id" : 100, 192 | "play_rate_hz" : 24000 193 | }, 194 | { 195 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_101.bin", 196 | "effect_id" : 101, 197 | "play_rate_hz" : 24000 198 | }, 199 | { 200 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_102.bin", 201 | "effect_id" : 102, 202 | "play_rate_hz" : 24000 203 | }, 204 | { 205 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_103.bin", 206 | "effect_id" : 103, 207 | "play_rate_hz" : 24000 208 | }, 209 | { 210 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_104.bin", 211 | "effect_id" : 104, 212 | "play_rate_hz" : 24000 213 | }, 214 | { 215 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_105.bin", 216 | "effect_id" : 105, 217 | "play_rate_hz" : 24000 218 | }, 219 | { 220 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_106.bin", 221 | "effect_id" : 106, 222 | "play_rate_hz" : 24000 223 | }, 224 | { 225 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_107.bin", 226 | "effect_id" : 107, 227 | "play_rate_hz" : 24000 228 | }, 229 | { 230 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_108.bin", 231 | "effect_id" : 108, 232 | "play_rate_hz" : 24000 233 | }, 234 | { 235 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_109.bin", 236 | "effect_id" : 109, 237 | "play_rate_hz" : 24000 238 | }, 239 | { 240 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_110.bin", 241 | "effect_id" : 110, 242 | "play_rate_hz" : 24000 243 | }, 244 | { 245 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_111.bin", 246 | "effect_id" : 111, 247 | "play_rate_hz" : 24000 248 | }, 249 | { 250 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_112.bin", 251 | "effect_id" : 112, 252 | "play_rate_hz" : 24000 253 | }, 254 | { 255 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_118.bin", 256 | "effect_id" : 118, 257 | "play_rate_hz" : 24000 258 | }, 259 | { 260 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_122.bin", 261 | "effect_id" : 122, 262 | "play_rate_hz" : 24000 263 | }, 264 | { 265 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_170.bin", 266 | "effect_id" : 170, 267 | "play_rate_hz" : 24000 268 | }, 269 | { 270 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_302.bin", 271 | "effect_id" : 302, 272 | "play_rate_hz" : 24000 273 | }, 274 | { 275 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_303.bin", 276 | "effect_id" : 303, 277 | "play_rate_hz" : 24000 278 | }, 279 | { 280 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_304.bin", 281 | "effect_id" : 304, 282 | "play_rate_hz" : 24000 283 | }, 284 | { 285 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_305.bin", 286 | "effect_id" : 305, 287 | "play_rate_hz" : 24000 288 | }, 289 | { 290 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_308.bin", 291 | "effect_id" : 308, 292 | "play_rate_hz" : 24000 293 | }, 294 | { 295 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_309.bin", 296 | "effect_id" : 309, 297 | "play_rate_hz" : 24000 298 | }, 299 | { 300 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_310.bin", 301 | "effect_id" : 310, 302 | "play_rate_hz" : 24000 303 | }, 304 | { 305 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_315.bin", 306 | "effect_id" : 315, 307 | "play_rate_hz" : 24000 308 | }, 309 | { 310 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_316.bin", 311 | "effect_id" : 316, 312 | "play_rate_hz" : 24000 313 | }, 314 | { 315 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_318.bin", 316 | "effect_id" : 318, 317 | "play_rate_hz" : 24000 318 | }, 319 | { 320 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_363.bin", 321 | "effect_id" : 363, 322 | "play_rate_hz" : 24000 323 | }, 324 | { 325 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_364.bin", 326 | "effect_id" : 364, 327 | "play_rate_hz" : 24000 328 | }, 329 | { 330 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_365.bin", 331 | "effect_id" : 365, 332 | "play_rate_hz" : 24000 333 | }, 334 | { 335 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_366.bin", 336 | "effect_id" : 366, 337 | "play_rate_hz" : 24000 338 | }, 339 | { 340 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_367.bin", 341 | "effect_id" : 367, 342 | "play_rate_hz" : 24000 343 | }, 344 | { 345 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_368.bin", 346 | "effect_id" : 368, 347 | "play_rate_hz" : 24000 348 | }, 349 | { 350 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_369.bin", 351 | "effect_id" : 369, 352 | "play_rate_hz" : 24000 353 | }, 354 | { 355 | "effect_file" : "/odm/etc/vibrator/9999/def/effect_370.bin", 356 | "effect_id" : 370, 357 | "play_rate_hz" : 24000 358 | } 359 | ], 360 | "soft_style" : [ 361 | { 362 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_0.bin", 363 | "effect_id" : 0, 364 | "play_rate_hz" : 24000 365 | }, 366 | { 367 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_1.bin", 368 | "effect_id" : 1, 369 | "play_rate_hz" : 24000 370 | }, 371 | { 372 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_2.bin", 373 | "effect_id" : 2, 374 | "play_rate_hz" : 24000 375 | }, 376 | { 377 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_3.bin", 378 | "effect_id" : 3, 379 | "play_rate_hz" : 24000 380 | }, 381 | { 382 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_4.bin", 383 | "effect_id" : 4, 384 | "play_rate_hz" : 24000 385 | }, 386 | { 387 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_6.bin", 388 | "effect_id" : 6, 389 | "play_rate_hz" : 24000 390 | }, 391 | { 392 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_7.bin", 393 | "effect_id" : 7, 394 | "play_rate_hz" : 24000 395 | }, 396 | { 397 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_46.bin", 398 | "effect_id" : 46, 399 | "play_rate_hz" : 24000 400 | }, 401 | { 402 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_47.bin", 403 | "effect_id" : 47, 404 | "play_rate_hz" : 24000 405 | }, 406 | { 407 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_54.bin", 408 | "effect_id" : 54, 409 | "play_rate_hz" : 24000 410 | }, 411 | { 412 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_105.bin", 413 | "effect_id" : 105, 414 | "play_rate_hz" : 24000 415 | }, 416 | { 417 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_106.bin", 418 | "effect_id" : 106, 419 | "play_rate_hz" : 24000 420 | }, 421 | { 422 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_107.bin", 423 | "effect_id" : 107, 424 | "play_rate_hz" : 24000 425 | }, 426 | { 427 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_109.bin", 428 | "effect_id" : 109, 429 | "play_rate_hz" : 24000 430 | }, 431 | { 432 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_309.bin", 433 | "effect_id" : 309, 434 | "play_rate_hz" : 24000 435 | }, 436 | { 437 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_310.bin", 438 | "effect_id" : 310, 439 | "play_rate_hz" : 24000 440 | }, 441 | { 442 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_315.bin", 443 | "effect_id" : 315, 444 | "play_rate_hz" : 24000 445 | }, 446 | { 447 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_316.bin", 448 | "effect_id" : 316, 449 | "play_rate_hz" : 24000 450 | }, 451 | { 452 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_318.bin", 453 | "effect_id" : 318, 454 | "play_rate_hz" : 24000 455 | }, 456 | { 457 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_363.bin", 458 | "effect_id" : 363, 459 | "play_rate_hz" : 24000 460 | }, 461 | { 462 | "effect_file" : "/odm/etc/vibrator/9999/soft/effect_364.bin", 463 | "effect_id" : 364, 464 | "play_rate_hz" : 24000 465 | } 466 | ] 467 | }, 468 | "vibrator_arch" : "qcom-hv-haptic" 469 | } 470 | -------------------------------------------------------------------------------- /recovery/root/system/etc/task_profiles.json: -------------------------------------------------------------------------------- 1 | { 2 | "Attributes": [ 3 | { 4 | "Name": "LowCapacityCPUs", 5 | "Controller": "cpuset", 6 | "File": "background/cpus" 7 | }, 8 | { 9 | "Name": "HighCapacityCPUs", 10 | "Controller": "cpuset", 11 | "File": "foreground/cpus" 12 | }, 13 | { 14 | "Name": "MaxCapacityCPUs", 15 | "Controller": "cpuset", 16 | "File": "top-app/cpus" 17 | }, 18 | { 19 | "Name": "AudioAppCapacityCPUs", 20 | "Controller": "cpuset", 21 | "File": "audio-app/cpus" 22 | }, 23 | 24 | { 25 | "Name": "DisplayCapacityCPUs", 26 | "Controller": "cpuset", 27 | "File": "display/cpus" 28 | }, 29 | { 30 | "Name": "MemStats", 31 | "Controller": "memory", 32 | "File": "memory.stat" 33 | }, 34 | { 35 | "Name": "MemLimit", 36 | "Controller": "memory", 37 | "File": "memory.limit_in_bytes", 38 | "FileV2": "memory.max" 39 | }, 40 | { 41 | "Name": "MemSoftLimit", 42 | "Controller": "memory", 43 | "File": "memory.soft_limit_in_bytes", 44 | "FileV2": "memory.low" 45 | }, 46 | { 47 | "Name": "MemSwappiness", 48 | "Controller": "memory", 49 | "File": "memory.swappiness" 50 | }, 51 | { 52 | "Name": "MemUsage", 53 | "Controller": "memory", 54 | "File": "memory.usage_in_bytes" 55 | }, 56 | { 57 | "Name": "MemAndSwapUsage", 58 | "Controller": "memory", 59 | "File": "memory.memsw.usage_in_bytes" 60 | }, 61 | { 62 | "Name": "MemPressureLevel", 63 | "Controller": "memory", 64 | "File": "memory.pressure_level" 65 | }, 66 | { 67 | "Name": "MemCgroupEventControl", 68 | "Controller": "memory", 69 | "File": "cgroup.event_control" 70 | }, 71 | { 72 | "Name": "UClampMin", 73 | "Controller": "cpu", 74 | "File": "cpu.uclamp.min" 75 | }, 76 | { 77 | "Name": "UClampMax", 78 | "Controller": "cpu", 79 | "File": "cpu.uclamp.max" 80 | }, 81 | { 82 | "Name": "UClampLatencySensitive", 83 | "Controller": "cpu", 84 | "File": "cpu.uclamp.latency_sensitive" 85 | }, 86 | { 87 | "Name": "Shares", 88 | "Controller": "cpu", 89 | "File": "cpu.shares" 90 | }, 91 | { 92 | "Name": "FreezerState", 93 | "Controller": "freezer", 94 | "File": "cgroup.freeze" 95 | }, 96 | { 97 | "Name": "BfqWeight", 98 | "Controller": "io", 99 | "File": "blkio.bfq.weight", 100 | "FileV2": "io.bfq.weight" 101 | }, 102 | { 103 | "Name": "CfqGroupIdle", 104 | "Controller": "io", 105 | "File": "blkio.group_idle", 106 | "FileV2": "io.group_idle" 107 | }, 108 | { 109 | "Name": "CfqWeight", 110 | "Controller": "io", 111 | "File": "blkio.weight", 112 | "FileV2": "io.weight" 113 | } 114 | ], 115 | 116 | "Profiles": [ 117 | { 118 | "Name": "HighEnergySaving", 119 | "Actions": [ 120 | { 121 | "Name": "JoinCgroup", 122 | "Params": 123 | { 124 | "Controller": "cpu", 125 | "Path": "background" 126 | } 127 | } 128 | ] 129 | }, 130 | { 131 | "Name": "Frozen", 132 | "Actions": [ 133 | { 134 | "Name": "SetAttribute", 135 | "Params": 136 | { 137 | "Name": "FreezerState", 138 | "Value": "1" 139 | } 140 | } 141 | ] 142 | }, 143 | { 144 | "Name": "Unfrozen", 145 | "Actions": [ 146 | { 147 | "Name": "SetAttribute", 148 | "Params": 149 | { 150 | "Name": "FreezerState", 151 | "Value": "0" 152 | } 153 | } 154 | ] 155 | }, 156 | { 157 | "Name": "NormalPerformance", 158 | "Actions": [ 159 | { 160 | "Name": "JoinCgroup", 161 | "Params": 162 | { 163 | "Controller": "cpu", 164 | "Path": "system" 165 | } 166 | } 167 | ] 168 | }, 169 | { 170 | "Name": "ServicePerformance", 171 | "Actions": [ 172 | { 173 | "Name": "JoinCgroup", 174 | "Params": 175 | { 176 | "Controller": "cpu", 177 | "Path": "system-background" 178 | } 179 | } 180 | ] 181 | }, 182 | { 183 | "Name": "HighPerformance", 184 | "Actions": [ 185 | { 186 | "Name": "JoinCgroup", 187 | "Params": 188 | { 189 | "Controller": "cpu", 190 | "Path": "foreground" 191 | } 192 | } 193 | ] 194 | }, 195 | { 196 | "Name": "MaxPerformance", 197 | "Actions": [ 198 | { 199 | "Name": "JoinCgroup", 200 | "Params": 201 | { 202 | "Controller": "cpu", 203 | "Path": "top-app" 204 | } 205 | } 206 | ] 207 | }, 208 | { 209 | "Name": "RealtimePerformance", 210 | "Actions": [ 211 | { 212 | "Name": "JoinCgroup", 213 | "Params": 214 | { 215 | "Controller": "cpu", 216 | "Path": "rt" 217 | } 218 | } 219 | ] 220 | }, 221 | { 222 | "Name": "CameraServicePerformance", 223 | "Actions": [ 224 | { 225 | "Name": "JoinCgroup", 226 | "Params": 227 | { 228 | "Controller": "cpu", 229 | "Path": "camera-daemon" 230 | } 231 | } 232 | ] 233 | }, 234 | 235 | { 236 | "Name": "CpuctlMem", 237 | "Actions": [ 238 | { 239 | "Name": "JoinCgroup", 240 | "Params": 241 | { 242 | "Controller": "cpu", 243 | "Path": "mem" 244 | } 245 | } 246 | ] 247 | }, 248 | 249 | { 250 | "Name": "CpuctlMultimedia", 251 | "Actions": [ 252 | { 253 | "Name": "JoinCgroup", 254 | "Params": 255 | { 256 | "Controller": "cpu", 257 | "Path": "multimedia" 258 | } 259 | } 260 | ] 261 | }, 262 | 263 | { 264 | "Name": "CpuctlCamera", 265 | "Actions": [ 266 | { 267 | "Name": "JoinCgroup", 268 | "Params": 269 | { 270 | "Controller": "cpu", 271 | "Path": "camera" 272 | } 273 | } 274 | ] 275 | }, 276 | 277 | { 278 | "Name": "CpuctlDisplay", 279 | "Actions": [ 280 | { 281 | "Name": "JoinCgroup", 282 | "Params": 283 | { 284 | "Controller": "cpu", 285 | "Path": "display" 286 | } 287 | } 288 | ] 289 | }, 290 | 291 | { 292 | "Name": "CpuctlSstop", 293 | "Actions": [ 294 | { 295 | "Name": "JoinCgroup", 296 | "Params": 297 | { 298 | "Controller": "cpu", 299 | "Path": "sstop" 300 | } 301 | } 302 | ] 303 | }, 304 | 305 | { 306 | "Name": "CpuctlSsfg", 307 | "Actions": [ 308 | { 309 | "Name": "JoinCgroup", 310 | "Params": 311 | { 312 | "Controller": "cpu", 313 | "Path": "ssfg" 314 | } 315 | } 316 | ] 317 | }, 318 | 319 | { 320 | "Name": "CpuctlLog", 321 | "Actions": [ 322 | { 323 | "Name": "JoinCgroup", 324 | "Params": 325 | { 326 | "Controller": "cpu", 327 | "Path": "log" 328 | } 329 | } 330 | ] 331 | }, 332 | 333 | { 334 | "Name": "CpuctlShares1024", 335 | "Actions": [ 336 | { 337 | "Name": "SetAttribute", 338 | "Params": 339 | { 340 | "Name": "Shares", 341 | "Value": "1024" 342 | } 343 | } 344 | ] 345 | }, 346 | 347 | { 348 | "Name": "CpuctlShare2048", 349 | "Actions": [ 350 | { 351 | "Name": "SetAttribute", 352 | "Params": 353 | { 354 | "Name": "Shares", 355 | "Value": "2048" 356 | } 357 | } 358 | ] 359 | }, 360 | 361 | { 362 | "Name": "CpuctlShares512", 363 | "Actions": [ 364 | { 365 | "Name": "SetAttribute", 366 | "Params": 367 | { 368 | "Name": "Shares", 369 | "Value": "512" 370 | } 371 | } 372 | ] 373 | }, 374 | 375 | { 376 | "Name": "CpuctlTouch", 377 | "Actions": [ 378 | { 379 | "Name": "JoinCgroup", 380 | "Params": 381 | { 382 | "Controller": "cpu", 383 | "Path": "touch" 384 | } 385 | } 386 | ] 387 | }, 388 | 389 | { 390 | "Name": "AudioAppPerformance", 391 | "Actions" : [ 392 | { 393 | "Name" : "JoinCgroup", 394 | "Params" : 395 | { 396 | "Controller": "schedtune", 397 | "Path": "audio-app" 398 | } 399 | } 400 | ] 401 | }, 402 | { 403 | "Name": "NNApiHALPerformance", 404 | "Actions": [ 405 | { 406 | "Name": "JoinCgroup", 407 | "Params": 408 | { 409 | "Controller": "cpu", 410 | "Path": "nnapi-hal" 411 | } 412 | } 413 | ] 414 | }, 415 | { 416 | "Name": "Dex2oatPerformance", 417 | "Actions": [ 418 | { 419 | "Name": "JoinCgroup", 420 | "Params": 421 | { 422 | "Controller": "cpu", 423 | "Path": "dex2oat" 424 | } 425 | } 426 | ] 427 | }, 428 | { 429 | "Name": "CpuPolicySpread", 430 | "Actions": [ 431 | { 432 | "Name": "SetAttribute", 433 | "Params": 434 | { 435 | "Name": "UClampLatencySensitive", 436 | "Value": "1" 437 | } 438 | } 439 | ] 440 | }, 441 | { 442 | "Name": "CpuPolicyPack", 443 | "Actions": [ 444 | { 445 | "Name": "SetAttribute", 446 | "Params": 447 | { 448 | "Name": "UClampLatencySensitive", 449 | "Value": "0" 450 | } 451 | } 452 | ] 453 | }, 454 | 455 | { 456 | "Name": "VrKernelCapacity", 457 | "Actions": [ 458 | { 459 | "Name": "JoinCgroup", 460 | "Params": 461 | { 462 | "Controller": "cpuset", 463 | "Path": "" 464 | } 465 | } 466 | ] 467 | }, 468 | { 469 | "Name": "VrServiceCapacityLow", 470 | "Actions": [ 471 | { 472 | "Name": "JoinCgroup", 473 | "Params": 474 | { 475 | "Controller": "cpuset", 476 | "Path": "system/background" 477 | } 478 | } 479 | ] 480 | }, 481 | { 482 | "Name": "VrServiceCapacityNormal", 483 | "Actions": [ 484 | { 485 | "Name": "JoinCgroup", 486 | "Params": 487 | { 488 | "Controller": "cpuset", 489 | "Path": "system" 490 | } 491 | } 492 | ] 493 | }, 494 | { 495 | "Name": "VrServiceCapacityHigh", 496 | "Actions": [ 497 | { 498 | "Name": "JoinCgroup", 499 | "Params": 500 | { 501 | "Controller": "cpuset", 502 | "Path": "system/performance" 503 | } 504 | } 505 | ] 506 | }, 507 | { 508 | "Name": "VrProcessCapacityLow", 509 | "Actions": [ 510 | { 511 | "Name": "JoinCgroup", 512 | "Params": 513 | { 514 | "Controller": "cpuset", 515 | "Path": "application/background" 516 | } 517 | } 518 | ] 519 | }, 520 | { 521 | "Name": "VrProcessCapacityNormal", 522 | "Actions": [ 523 | { 524 | "Name": "JoinCgroup", 525 | "Params": 526 | { 527 | "Controller": "cpuset", 528 | "Path": "application" 529 | } 530 | } 531 | ] 532 | }, 533 | { 534 | "Name": "VrProcessCapacityHigh", 535 | "Actions": [ 536 | { 537 | "Name": "JoinCgroup", 538 | "Params": 539 | { 540 | "Controller": "cpuset", 541 | "Path": "application/performance" 542 | } 543 | } 544 | ] 545 | }, 546 | 547 | { 548 | "Name": "ProcessCapacityLow", 549 | "Actions": [ 550 | { 551 | "Name": "JoinCgroup", 552 | "Params": 553 | { 554 | "Controller": "cpuset", 555 | "Path": "background" 556 | } 557 | } 558 | ] 559 | }, 560 | { 561 | "Name": "ProcessCapacityNormal", 562 | "Actions": [ 563 | { 564 | "Name": "JoinCgroup", 565 | "Params": 566 | { 567 | "Controller": "cpuset", 568 | "Path": "" 569 | } 570 | } 571 | ] 572 | }, 573 | { 574 | "Name": "ProcessCapacityHigh", 575 | "Actions": [ 576 | { 577 | "Name": "JoinCgroup", 578 | "Params": 579 | { 580 | "Controller": "cpuset", 581 | "Path": "foreground" 582 | } 583 | } 584 | ] 585 | }, 586 | { 587 | "Name": "ProcessCapacityMax", 588 | "Actions": [ 589 | { 590 | "Name": "JoinCgroup", 591 | "Params": 592 | { 593 | "Controller": "cpuset", 594 | "Path": "top-app" 595 | } 596 | } 597 | ] 598 | }, 599 | 600 | { 601 | "Name": "CpuSetHBackground", 602 | "Actions": [ 603 | { 604 | "Name": "JoinCgroup", 605 | "Params": 606 | { 607 | "Controller": "cpuset", 608 | "Path": "h-background" 609 | } 610 | } 611 | ] 612 | }, 613 | { 614 | "Name": "CpuSetLBackground", 615 | "Actions": [ 616 | { 617 | "Name": "JoinCgroup", 618 | "Params": 619 | { 620 | "Controller": "cpuset", 621 | "Path": "l-background" 622 | } 623 | } 624 | ] 625 | }, 626 | 627 | { 628 | "Name": "ServiceCapacityLow", 629 | "Actions": [ 630 | { 631 | "Name": "JoinCgroup", 632 | "Params": 633 | { 634 | "Controller": "cpuset", 635 | "Path": "system-background" 636 | } 637 | } 638 | ] 639 | }, 640 | { 641 | "Name": "ServiceCapacityRestricted", 642 | "Actions": [ 643 | { 644 | "Name": "JoinCgroup", 645 | "Params": 646 | { 647 | "Controller": "cpuset", 648 | "Path": "restricted" 649 | } 650 | } 651 | ] 652 | }, 653 | 654 | { 655 | "Name": "CameraServiceCapacity", 656 | "Actions": [ 657 | { 658 | "Name": "JoinCgroup", 659 | "Params": 660 | { 661 | "Controller": "cpuset", 662 | "Path": "camera-daemon" 663 | } 664 | } 665 | ] 666 | }, 667 | { 668 | "Name": "AudioAppCapacity", 669 | "Actions" : [ 670 | { 671 | "Name" : "JoinCgroup", 672 | "Params" : 673 | { 674 | "Controller": "cpuset", 675 | "Path": "audio-app" 676 | } 677 | } 678 | ] 679 | }, 680 | { 681 | "Name": "DisplayCapacity", 682 | "Actions" : [ 683 | { 684 | "Name" : "JoinCgroup", 685 | "Params" : 686 | { 687 | "Controller": "cpuset", 688 | "Path": "display" 689 | } 690 | } 691 | ] 692 | }, 693 | 694 | { 695 | "Name": "BlkIoLBackground", 696 | "Actions": [ 697 | { 698 | "Name": "JoinCgroup", 699 | "Params": 700 | { 701 | "Controller": "blkio", 702 | "Path": "l-background" 703 | } 704 | }, 705 | { 706 | "Name": "SetAttribute", 707 | "Params": 708 | { 709 | "Name": "CfqGroupIdle", 710 | "Value": "0", 711 | "Optional": "true" 712 | } 713 | }, 714 | { 715 | "Name": "SetAttribute", 716 | "Params": 717 | { 718 | "Name": "CfqWeight", 719 | "Value": "800", 720 | "Optional": "true" 721 | } 722 | } 723 | ] 724 | }, 725 | { 726 | "Name": "BlkIoHBackground", 727 | "Actions": [ 728 | { 729 | "Name": "JoinCgroup", 730 | "Params": 731 | { 732 | "Controller": "blkio", 733 | "Path": "h-background" 734 | } 735 | }, 736 | { 737 | "Name": "SetAttribute", 738 | "Params": 739 | { 740 | "Name": "CfqGroupIdle", 741 | "Value": "0", 742 | "Optional": "true" 743 | } 744 | }, 745 | { 746 | "Name": "SetAttribute", 747 | "Params": 748 | { 749 | "Name": "CfqWeight", 750 | "Value": "1000", 751 | "Optional": "true" 752 | } 753 | } 754 | ] 755 | }, 756 | 757 | { 758 | "Name": "BlkIOForeground", 759 | "Actions" : [ 760 | { 761 | "Name" : "JoinCgroup", 762 | "Params" : 763 | { 764 | "Controller": "blkio", 765 | "Path": "" 766 | } 767 | } 768 | ] 769 | }, 770 | { 771 | "Name": "BlkIOBackground", 772 | "Actions" : [ 773 | { 774 | "Name" : "JoinCgroup", 775 | "Params" : 776 | { 777 | "Controller": "blkio", 778 | "Path": "bg" 779 | } 780 | }, 781 | { 782 | "Name": "SetAttribute", 783 | "Params": 784 | { 785 | "Name": "BfqWeight", 786 | "Value": "10", 787 | "Optional": "true" 788 | } 789 | }, 790 | { 791 | "Name": "SetAttribute", 792 | "Params": 793 | { 794 | "Name": "CfqGroupIdle", 795 | "Value": "0", 796 | "Optional": "true" 797 | } 798 | }, 799 | { 800 | "Name": "SetAttribute", 801 | "Params": 802 | { 803 | "Name": "CfqWeight", 804 | "Value": "200", 805 | "Optional": "true" 806 | } 807 | } 808 | ] 809 | }, 810 | 811 | { 812 | "Name": "LowIoPriority", 813 | "Actions": [ 814 | { 815 | "Name": "JoinCgroup", 816 | "Params": 817 | { 818 | "Controller": "blkio", 819 | "Path": "background" 820 | } 821 | }, 822 | { 823 | "Name": "SetAttribute", 824 | "Params": 825 | { 826 | "Name": "BfqWeight", 827 | "Value": "10", 828 | "Optional": "true" 829 | } 830 | }, 831 | { 832 | "Name": "SetAttribute", 833 | "Params": 834 | { 835 | "Name": "CfqGroupIdle", 836 | "Value": "0", 837 | "Optional": "true" 838 | } 839 | }, 840 | { 841 | "Name": "SetAttribute", 842 | "Params": 843 | { 844 | "Name": "CfqWeight", 845 | "Value": "200", 846 | "Optional": "true" 847 | } 848 | } 849 | ] 850 | }, 851 | { 852 | "Name": "NormalIoPriority", 853 | "Actions": [ 854 | { 855 | "Name": "JoinCgroup", 856 | "Params": 857 | { 858 | "Controller": "blkio", 859 | "Path": "" 860 | } 861 | }, 862 | { 863 | "Name": "SetAttribute", 864 | "Params": 865 | { 866 | "Name": "BfqWeight", 867 | "Value": "100", 868 | "Optional": "true" 869 | } 870 | }, 871 | { 872 | "Name": "SetAttribute", 873 | "Params": 874 | { 875 | "Name": "CfqGroupIdle", 876 | "Value": "0", 877 | "Optional": "true" 878 | } 879 | }, 880 | { 881 | "Name": "SetAttribute", 882 | "Params": 883 | { 884 | "Name": "CfqWeight", 885 | "Value": "1000", 886 | "Optional": "true" 887 | } 888 | } 889 | ] 890 | }, 891 | { 892 | "Name": "HighIoPriority", 893 | "Actions": [ 894 | { 895 | "Name": "JoinCgroup", 896 | "Params": 897 | { 898 | "Controller": "blkio", 899 | "Path": "" 900 | } 901 | }, 902 | { 903 | "Name": "SetAttribute", 904 | "Params": 905 | { 906 | "Name": "BfqWeight", 907 | "Value": "100", 908 | "Optional": "true" 909 | } 910 | }, 911 | { 912 | "Name": "SetAttribute", 913 | "Params": 914 | { 915 | "Name": "CfqGroupIdle", 916 | "Value": "0", 917 | "Optional": "true" 918 | } 919 | }, 920 | { 921 | "Name": "SetAttribute", 922 | "Params": 923 | { 924 | "Name": "CfqWeight", 925 | "Value": "1000", 926 | "Optional": "true" 927 | } 928 | } 929 | ] 930 | }, 931 | { 932 | "Name": "MaxIoPriority", 933 | "Actions": [ 934 | { 935 | "Name": "JoinCgroup", 936 | "Params": 937 | { 938 | "Controller": "blkio", 939 | "Path": "" 940 | } 941 | }, 942 | { 943 | "Name": "SetAttribute", 944 | "Params": 945 | { 946 | "Name": "BfqWeight", 947 | "Value": "100", 948 | "Optional": "true" 949 | } 950 | }, 951 | { 952 | "Name": "SetAttribute", 953 | "Params": 954 | { 955 | "Name": "CfqGroupIdle", 956 | "Value": "0", 957 | "Optional": "true" 958 | } 959 | }, 960 | { 961 | "Name": "SetAttribute", 962 | "Params": 963 | { 964 | "Name": "CfqWeight", 965 | "Value": "1000", 966 | "Optional": "true" 967 | } 968 | } 969 | ] 970 | }, 971 | 972 | { 973 | "Name": "TimerSlackHigh", 974 | "Actions": [ 975 | { 976 | "Name": "SetTimerSlack", 977 | "Params": 978 | { 979 | "Slack": "5000000" 980 | } 981 | } 982 | ] 983 | }, 984 | { 985 | "Name": "TimerSlackNormal", 986 | "Actions": [ 987 | { 988 | "Name": "SetTimerSlack", 989 | "Params": 990 | { 991 | "Slack": "50000" 992 | } 993 | } 994 | ] 995 | }, 996 | 997 | { 998 | "Name": "SFMainPolicy", 999 | "Actions": [ 1000 | { 1001 | "Name": "JoinCgroup", 1002 | "Params": 1003 | { 1004 | "Controller": "cpuset", 1005 | "Path": "sf" 1006 | } 1007 | } 1008 | ] 1009 | }, 1010 | { 1011 | "Name": "SFRenderEnginePolicy", 1012 | "Actions": [ 1013 | { 1014 | "Name": "JoinCgroup", 1015 | "Params": 1016 | { 1017 | "Controller": "cpuset", 1018 | "Path": "sf" 1019 | } 1020 | } 1021 | ] 1022 | }, 1023 | { 1024 | "Name": "CpuSetCameraBackground", 1025 | "Actions": [ 1026 | { 1027 | "Name": "JoinCgroup", 1028 | "Params": 1029 | { 1030 | "Controller": "cpuset", 1031 | "Path": "camera-background" 1032 | } 1033 | } 1034 | ] 1035 | }, 1036 | { 1037 | "Name": "CpuctlCameraBackground", 1038 | "Actions": [ 1039 | { 1040 | "Name": "JoinCgroup", 1041 | "Params": 1042 | { 1043 | "Controller": "cpu", 1044 | "Path": "camera-background" 1045 | } 1046 | } 1047 | ] 1048 | }, 1049 | { 1050 | "Name": "PerfBoost", 1051 | "Actions": [ 1052 | { 1053 | "Name": "SetClamps", 1054 | "Params": 1055 | { 1056 | "Boost": "50%", 1057 | "Clamp": "0" 1058 | } 1059 | } 1060 | ] 1061 | }, 1062 | { 1063 | "Name": "PerfClamp", 1064 | "Actions": [ 1065 | { 1066 | "Name": "SetClamps", 1067 | "Params": 1068 | { 1069 | "Boost": "0", 1070 | "Clamp": "30%" 1071 | } 1072 | } 1073 | ] 1074 | }, 1075 | 1076 | { 1077 | "Name": "LowMemoryUsage", 1078 | "Actions": [ 1079 | { 1080 | "Name": "SetAttribute", 1081 | "Params": 1082 | { 1083 | "Name": "MemSoftLimit", 1084 | "Value": "16MB" 1085 | } 1086 | }, 1087 | { 1088 | "Name": "SetAttribute", 1089 | "Params": 1090 | { 1091 | "Name": "MemSwappiness", 1092 | "Value": "150" 1093 | 1094 | } 1095 | } 1096 | ] 1097 | }, 1098 | { 1099 | "Name": "HighMemoryUsage", 1100 | "Actions": [ 1101 | { 1102 | "Name": "SetAttribute", 1103 | "Params": 1104 | { 1105 | "Name": "MemSoftLimit", 1106 | "Value": "512MB" 1107 | } 1108 | }, 1109 | { 1110 | "Name": "SetAttribute", 1111 | "Params": 1112 | { 1113 | "Name": "MemSwappiness", 1114 | "Value": "100" 1115 | } 1116 | } 1117 | ] 1118 | }, 1119 | { 1120 | "Name": "SystemMemoryProcess", 1121 | "Actions": [ 1122 | { 1123 | "Name": "JoinCgroup", 1124 | "Params": 1125 | { 1126 | "Controller": "memory", 1127 | "Path": "system" 1128 | } 1129 | } 1130 | ] 1131 | } 1132 | ], 1133 | 1134 | "AggregateProfiles": [ 1135 | { 1136 | "Name": "SCHED_SP_DEFAULT", 1137 | "Profiles": [ "TimerSlackNormal" ] 1138 | }, 1139 | { 1140 | "Name": "SCHED_SP_BACKGROUND", 1141 | "Profiles": [ "HighEnergySaving", "LowIoPriority", "TimerSlackHigh" ] 1142 | }, 1143 | { 1144 | "Name": "SCHED_SP_FOREGROUND", 1145 | "Profiles": [ "HighPerformance", "HighIoPriority", "TimerSlackNormal" ] 1146 | }, 1147 | { 1148 | "Name": "SCHED_SP_TOP_APP", 1149 | "Profiles": [ "MaxPerformance", "MaxIoPriority", "TimerSlackNormal" ] 1150 | }, 1151 | { 1152 | "Name": "SCHED_SP_SYSTEM", 1153 | "Profiles": [ "ServicePerformance", "LowIoPriority", "TimerSlackNormal" ] 1154 | }, 1155 | { 1156 | "Name": "SCHED_SP_RT_APP", 1157 | "Profiles": [ "RealtimePerformance", "MaxIoPriority", "TimerSlackNormal" ] 1158 | }, 1159 | { 1160 | "Name": "SCHED_SP_DISPLAY", 1161 | "Profiles": [ "HighPerformance", "HighIoPriority", "TimerSlackNormal" ] 1162 | }, 1163 | { 1164 | "Name": "SCHED_SP_MEM", 1165 | "Profiles": [ "CpuctlMem" ] 1166 | }, 1167 | { 1168 | "Name": "SCHED_SP_MULTIMEDIA", 1169 | "Profiles": [ "CpuctlMultimedia" ] 1170 | }, 1171 | { 1172 | "Name": "SCHED_SP_CAMERA", 1173 | "Profiles": [ "CpuctlCamera" ] 1174 | }, 1175 | { 1176 | "Name": "SCHED_SP_DISPLAY", 1177 | "Profiles": [ "CpuctlDisplay" ] 1178 | }, 1179 | { 1180 | "Name": "SCHED_SP_SSTOP", 1181 | "Profiles": [ "CpuctlSstop", "MaxIoPriority", "TimerSlackNormal" ] 1182 | }, 1183 | { 1184 | "Name": "SCHED_SP_SSFG", 1185 | "Profiles": [ "CpuctlSsfg", "HighIoPriority", "TimerSlackNormal" ] 1186 | }, 1187 | { 1188 | "Name": "SCHED_SP_LOG", 1189 | "Profiles": [ "CpuctlLog" ] 1190 | }, 1191 | { 1192 | "Name": "SCHED_SP_CPU_SHARES_1024", 1193 | "Profiles": [ "CpuctlShares1024" ] 1194 | }, 1195 | { 1196 | "Name": "SCHED_SP_CPU_SHARES_2048", 1197 | "Profiles": [ "CpuctlShare2048" ] 1198 | }, 1199 | { 1200 | "Name": "SCHED_SP_CPU_SHARES_512", 1201 | "Profiles": [ "CpuctlShares512" ] 1202 | }, 1203 | { 1204 | "Name": "SCHED_SP_TOUCH", 1205 | "Profiles": [ "CpuctlTouch" ] 1206 | }, 1207 | { 1208 | "Name": "CPUSET_SP_DEFAULT", 1209 | "Profiles": [ "TimerSlackNormal" ] 1210 | }, 1211 | { 1212 | "Name": "CPUSET_SP_BACKGROUND", 1213 | "Profiles": [ "HighEnergySaving", "ProcessCapacityLow", "LowIoPriority", "TimerSlackHigh" ] 1214 | }, 1215 | { 1216 | "Name": "CPUSET_SP_FOREGROUND", 1217 | "Profiles": [ "HighPerformance", "ProcessCapacityHigh", "HighIoPriority", "TimerSlackNormal" ] 1218 | }, 1219 | { 1220 | "Name": "CPUSET_SP_TOP_APP", 1221 | "Profiles": [ "MaxPerformance", "ProcessCapacityMax", "MaxIoPriority", "TimerSlackNormal" ] 1222 | }, 1223 | { 1224 | "Name": "CPUSET_SP_SYSTEM", 1225 | "Profiles": [ "ServiceCapacityLow", "TimerSlackNormal" ] 1226 | }, 1227 | { 1228 | "Name": "CPUSET_SP_DISPLAY", 1229 | "Profiles": [ "HighEnergySaving", "ProcessCapacityLow", "LowIoPriority", "TimerSlackHigh" ] 1230 | }, 1231 | { 1232 | "Name": "CPUSET_SP_RESTRICTED", 1233 | "Profiles": [ "ServiceCapacityRestricted", "TimerSlackNormal" ] 1234 | }, 1235 | { 1236 | "Name": "Dex2OatBootComplete", 1237 | "Profiles": [ "Dex2oatPerformance", "LowIoPriority", "TimerSlackHigh" ] 1238 | }, 1239 | { 1240 | "Name": "Dex2OatBackground", 1241 | "Profiles": [ "HighEnergySaving", "ProcessCapacityLow", "LowIoPriority", "TimerSlackHigh" ] 1242 | }, 1243 | { 1244 | "Name": "OtaProfiles", 1245 | "Profiles": [ "ServiceCapacityLow", "LowIoPriority", "HighEnergySaving" ] 1246 | }, 1247 | { 1248 | "Name": "CPUSET_SP_LBACKGROUND", 1249 | "Profiles": [ "CpuSetLBackground", "BlkIoLBackground"] 1250 | }, 1251 | { 1252 | "Name": "CPUSET_SP_HBACKGROUND", 1253 | "Profiles": [ "CpuSetHBackground", "BlkIoHBackground"] 1254 | }, 1255 | { 1256 | "Name": "CPUSET_SP_CAMERA_BACKGROUND", 1257 | "Profiles": [ "CpuSetCameraBackground", "CpuctlCameraBackground", "LowIoPriority", "TimerSlackHigh" ] 1258 | } 1259 | ] 1260 | } 1261 | --------------------------------------------------------------------------------