Browse Source

dm2q: Introduce crypto support

Signed-off-by: Edgars Cīrulis <edgarsscirulis@gmail.com>
Edgars Cīrulis 2 years ago
parent
commit
88a5a84d77
50 changed files with 799 additions and 0 deletions
  1. 3 0
      BoardConfig.mk
  2. 14 0
      device.mk
  3. 13 0
      recovery/root/init.recovery.qcom.rc
  4. BIN
      recovery/root/system/bin/android.hardware.gatekeeper@1.0-service
  5. BIN
      recovery/root/system/bin/android.hardware.keymaster@4.0-strongbox-service-qti
  6. BIN
      recovery/root/system/bin/android.hardware.security.keymint-service
  7. BIN
      recovery/root/system/bin/qseecomd
  8. 146 0
      recovery/root/system/etc/vintf/manifest.xml
  9. 6 0
      recovery/root/vendor/etc/init/android.hardware.keymaster@4.0-strongbox-service-qti.rc
  10. 15 0
      recovery/root/vendor/etc/init/android.hardware.security.keymint-service.rc
  11. 593 0
      recovery/root/vendor/etc/vintf/manifest.xml
  12. BIN
      recovery/root/vendor/lib64/android.hardware.gatekeeper@1.0.so
  13. BIN
      recovery/root/vendor/lib64/android.hardware.keymaster@3.0.so
  14. BIN
      recovery/root/vendor/lib64/android.hardware.keymaster@4.1.so
  15. BIN
      recovery/root/vendor/lib64/android.hardware.security.keymint-V2-ndk.so
  16. BIN
      recovery/root/vendor/lib64/android.hardware.security.secureclock-V1-ndk.so
  17. BIN
      recovery/root/vendor/lib64/android.hardware.security.sharedsecret-V1-ndk.so
  18. BIN
      recovery/root/vendor/lib64/android.hardware.weaver@1.0.so
  19. BIN
      recovery/root/vendor/lib64/hw/android.hardware.gatekeeper@1.0-impl.so
  20. BIN
      recovery/root/vendor/lib64/hw/gatekeeper.mdfpp.so
  21. BIN
      recovery/root/vendor/lib64/libGPreqcancel.so
  22. BIN
      recovery/root/vendor/lib64/libGPreqcancel_svc.so
  23. BIN
      recovery/root/vendor/lib64/libQSEEComAPI.so
  24. BIN
      recovery/root/vendor/lib64/libdiag.so
  25. BIN
      recovery/root/vendor/lib64/libdisplayconfig.qti.so
  26. BIN
      recovery/root/vendor/lib64/libdrm.so
  27. BIN
      recovery/root/vendor/lib64/libdrmfs.so
  28. BIN
      recovery/root/vendor/lib64/libdrmtime.so
  29. BIN
      recovery/root/vendor/lib64/libgpt.so
  30. BIN
      recovery/root/vendor/lib64/libhermes_cred.so
  31. BIN
      recovery/root/vendor/lib64/libkeymasterdeviceutils.so
  32. BIN
      recovery/root/vendor/lib64/libkeymasterutils.so
  33. BIN
      recovery/root/vendor/lib64/libminkdescriptor.so
  34. BIN
      recovery/root/vendor/lib64/libops.so
  35. BIN
      recovery/root/vendor/lib64/libqcbor.so
  36. BIN
      recovery/root/vendor/lib64/libqisl.so
  37. BIN
      recovery/root/vendor/lib64/libqtikeymaster4.so
  38. BIN
      recovery/root/vendor/lib64/librpmb.so
  39. BIN
      recovery/root/vendor/lib64/libskeymint10device.so
  40. BIN
      recovery/root/vendor/lib64/libskeymint_cli.so
  41. BIN
      recovery/root/vendor/lib64/libspcom.so
  42. BIN
      recovery/root/vendor/lib64/libspl.so
  43. BIN
      recovery/root/vendor/lib64/libssd.so
  44. BIN
      recovery/root/vendor/lib64/libtime_genoff.so
  45. BIN
      recovery/root/vendor/lib64/libvmmem.so
  46. BIN
      recovery/root/vendor/lib64/vendor.display.config@1.0.so
  47. BIN
      recovery/root/vendor/lib64/vendor.display.config@2.0.so
  48. BIN
      recovery/root/vendor/lib64/vendor.qti.hardware.tui_comm@1.0.so
  49. BIN
      recovery/root/vendor/lib64/vendor.samsung.hardware.keymint-V2-ndk.so
  50. 9 0
      vendor.prop

+ 3 - 0
BoardConfig.mk

@@ -136,6 +136,9 @@ BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1
 BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flag 2
 
 # Crypto
+TW_INCLUDE_CRYPTO := true
+TW_INCLUDE_RESETPROP := true
+BOARD_USES_QCOM_FBE_DECRYPTION := true
 BOARD_USES_METADATA_PARTITION := true
 
 # Recovery

+ 14 - 0
device.mk

@@ -21,3 +21,17 @@ PRODUCT_USE_DYNAMIC_PARTITIONS := true
 PRODUCT_PACKAGES += \
     android.hardware.fastboot@1.0-impl-mock \
     fastbootd
+
+# qcom decryption
+PRODUCT_PACKAGES += \
+    qcom_decrypt \
+    qcom_decrypt_fbe
+
+# Dependencies
+TARGET_RECOVERY_DEVICE_MODULES += \
+    libion \
+    libdmabufheap
+
+RECOVERY_LIBRARY_SOURCE_FILES += \
+    $(TARGET_OUT_SHARED_LIBRARIES)/libion.so \
+    $(TARGET_OUT_SHARED_LIBRARIES)/libdmabufheap.so

+ 13 - 0
recovery/root/init.recovery.qcom.rc

@@ -25,6 +25,8 @@
 # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #
 
+import /init.recovery.qcom_decrypt.rc
+
 on init
     # to cut charging battery path
     write /sys/class/power_supply/battery/siop_level 0
@@ -42,3 +44,14 @@ on fs
 
 on boot
     start health-hal-2-1
+
+on property:crypto.ready=1
+    start keymint-default
+    start keymaster-sb-4-0
+
+on property:crypto.ready=0
+    stop keymaster-sb-4-0
+    stop keymint-default
+
+on property:twrp.user.0.decrypt=0
+    umount /vendor/firmware_mnt

BIN
recovery/root/system/bin/android.hardware.gatekeeper@1.0-service


BIN
recovery/root/system/bin/android.hardware.keymaster@4.0-strongbox-service-qti


BIN
recovery/root/system/bin/android.hardware.security.keymint-service


BIN
recovery/root/system/bin/qseecomd


+ 146 - 0
recovery/root/system/etc/vintf/manifest.xml

@@ -0,0 +1,146 @@
+<!--
+    Input:
+        manifest.xml
+        framework_manifest.xml
+        manifest.xml
+        qcc_manifest.xml
+-->
+<manifest version="4.0" type="framework">
+    <hal format="hidl" max-level="6">
+        <name>android.frameworks.displayservice</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IDisplayService</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::IDisplayService/default</fqname>
+    </hal>
+    <hal format="hidl" max-level="5">
+        <name>android.frameworks.schedulerservice</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISchedulingPolicyService</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISchedulingPolicyService/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.frameworks.sensorservice</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISensorManager</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISensorManager/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.hidl.manager</name>
+        <transport>hwbinder</transport>
+        <version>1.2</version>
+        <interface>
+            <name>IServiceManager</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.2::IServiceManager/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.hidl.memory</name>
+        <transport arch="32+64">passthrough</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IMapper</name>
+            <instance>ashmem</instance>
+        </interface>
+        <fqname>@1.0::IMapper/ashmem</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.hidl.token</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ITokenManager</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ITokenManager/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.system.net.netd</name>
+        <transport>hwbinder</transport>
+        <version>1.1</version>
+        <interface>
+            <name>INetd</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.1::INetd/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.system.wifi.keystore</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IKeystore</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::IKeystore/default</fqname>
+    </hal>
+    <hal format="native">
+        <name>netutils-wrapper</name>
+        <version>1.0</version>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.qccsyshal</name>
+        <transport>hwbinder</transport>
+        <version>1.2</version>
+        <interface>
+            <name>IQccsyshal</name>
+            <instance>qccsyshal</instance>
+        </interface>
+        <fqname>@1.2::IQccsyshal/qccsyshal</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.radio.atcmdfwd</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IAtCmdFwd</name>
+            <instance>AtCmdFwdService</instance>
+        </interface>
+        <fqname>@1.0::IAtCmdFwd/AtCmdFwdService</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.systemhelper</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISystemEvent</name>
+            <instance>default</instance>
+        </interface>
+        <interface>
+            <name>ISystemResource</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISystemEvent/default</fqname>
+        <fqname>@1.0::ISystemResource/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.samsung.frameworks.security.ucm.crypto</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISehUcmKeystore</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISehUcmKeystore/default</fqname>
+    </hal>
+    <system-sdk>
+        <version>28</version>
+        <version>29</version>
+        <version>30</version>
+        <version>31</version>
+        <version>32</version>
+        <version>33</version>
+    </system-sdk>
+</manifest>

+ 6 - 0
recovery/root/vendor/etc/init/android.hardware.keymaster@4.0-strongbox-service-qti.rc

@@ -0,0 +1,6 @@
+service keymaster-sb-4-0 /system/bin/android.hardware.keymaster@4.0-strongbox-service-qti
+    user root
+    group root
+    setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
+    disabled
+    seclabel u:r:recovery:s0

+ 15 - 0
recovery/root/vendor/etc/init/android.hardware.security.keymint-service.rc

@@ -0,0 +1,15 @@
+service keymint-default /system/bin/android.hardware.security.keymint-service
+    user root
+    group root
+    setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
+    disabled
+    seclabel u:r:recovery:s0
+
+on post-fs
+    mkdir /mnt/vendor/efs/DAK 0775 system system
+    restorecon -R /mnt/vendor/efs/DAK
+    chown system system /mnt/vendor/efs/DAK/gakkeybox
+    chmod 0644 /mnt/vendor/efs/DAK/gakkeybox
+
+on post-fs-data
+    mkdir /data/vendor/keymaster 0775 system system

+ 593 - 0
recovery/root/vendor/etc/vintf/manifest.xml

@@ -0,0 +1,593 @@
+<!--
+    Input:
+        manifest_kalama.xml
+        manifest_launched_with_T.xml
+        manifest.xml
+        manifest.xml
+        manifest.xml
+        manifest.xml
+        face-default-sec.xml
+        rkp_skeymint_v200_manifest.xml
+        strongbox_km_v40_manifest.xml
+        iweaver_v1_manifest.xml
+        manifest.xml
+        manifest.xml
+        manifest.xml
+        manifest.xml
+        manifest.xml
+        manifest.xml
+        manifest.xml
+        manifest.xml
+        radio_manifest_ds.xml
+        radio_manifest_ds.xml
+        manifest_chip.xml
+-->
+<manifest version="2.0" type="device" target-level="7">
+    <hal format="hidl">
+        <name>android.hardware.audio</name>
+        <transport>hwbinder</transport>
+        <version>7.1</version>
+        <interface>
+            <name>IDevicesFactory</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@7.1::IDevicesFactory/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.hardware.audio.effect</name>
+        <transport>hwbinder</transport>
+        <version>7.0</version>
+        <interface>
+            <name>IEffectsFactory</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@7.0::IEffectsFactory/default</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>android.hardware.biometrics.face</name>
+        <version>2</version>
+        <fqname>IFace/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.hardware.bluetooth</name>
+        <transport>hwbinder</transport>
+        <version>1.1</version>
+        <interface>
+            <name>IBluetoothHci</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.1::IBluetoothHci/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.hardware.gatekeeper</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IGatekeeper</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::IGatekeeper/default</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>android.hardware.keymaster</name>
+        <transport>hwbinder</transport>
+        <version>4.0</version>
+        <interface>
+            <name>IKeymasterDevice</name>
+            <instance>strongbox</instance>
+        </interface>
+        <fqname>@4.0::IKeymasterDevice/strongbox</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.hardware.media.omx</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IOmx</name>
+            <instance>default</instance>
+        </interface>
+        <interface>
+            <name>IOmxStore</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::IOmx/default</fqname>
+        <fqname>@1.0::IOmxStore/default</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>android.hardware.radio</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>android.hardware.radio</name>
+        <transport>hwbinder</transport>
+        <fqname>@1.2::ISap/slot1</fqname>
+        <fqname>@1.2::ISap/slot2</fqname>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.radio.config</name>
+        <interface>
+            <name>IRadioConfig</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>IRadioConfig/default</fqname>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.radio.data</name>
+        <interface>
+            <name>IRadioData</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>IRadioData/slot1</fqname>
+        <fqname>IRadioData/slot2</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>android.hardware.radio.deprecated</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.radio.messaging</name>
+        <interface>
+            <name>IRadioMessaging</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>IRadioMessaging/slot1</fqname>
+        <fqname>IRadioMessaging/slot2</fqname>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.radio.modem</name>
+        <interface>
+            <name>IRadioModem</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>IRadioModem/slot1</fqname>
+        <fqname>IRadioModem/slot2</fqname>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.radio.network</name>
+        <interface>
+            <name>IRadioNetwork</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>IRadioNetwork/slot1</fqname>
+        <fqname>IRadioNetwork/slot2</fqname>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.radio.sim</name>
+        <interface>
+            <name>IRadioSim</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>IRadioSim/slot1</fqname>
+        <fqname>IRadioSim/slot2</fqname>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.radio.voice</name>
+        <interface>
+            <name>IRadioVoice</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>IRadioVoice/slot1</fqname>
+        <fqname>IRadioVoice/slot2</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>android.hardware.secure_element</name>
+        <transport>hwbinder</transport>
+        <version>1.2</version>
+        <interface>
+            <name>ISecureElement</name>
+            <instance>eSE1</instance>
+        </interface>
+        <fqname>@1.2::ISecureElement/eSE1</fqname>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.security.keymint</name>
+        <version>2</version>
+        <interface>
+            <name>IKeyMintDevice</name>
+            <instance>default</instance>
+        </interface>
+        <interface>
+            <name>IRemotelyProvisionedComponent</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>IKeyMintDevice/default</fqname>
+        <fqname>IRemotelyProvisionedComponent/default</fqname>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.security.secureclock</name>
+        <interface>
+            <name>ISecureClock</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>ISecureClock/default</fqname>
+    </hal>
+    <hal format="aidl" override="true">
+        <name>android.hardware.security.sharedsecret</name>
+        <interface>
+            <name>ISharedSecret</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>ISharedSecret/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.hardware.tetheroffload.config</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IOffloadConfig</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::IOffloadConfig/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>android.hardware.tetheroffload.control</name>
+        <transport>hwbinder</transport>
+        <version>1.1</version>
+        <interface>
+            <name>IOffloadControl</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.1::IOffloadControl/default</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>android.hardware.weaver</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IWeaver</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::IWeaver/default</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>com.qualcomm.qti.dpm.api</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>com.qualcomm.qti.imscmservice</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>com.qualcomm.qti.uceservice</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.data.factory</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.capabilityconfigstore</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ICapabilityConfigStore</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ICapabilityConfigStore/default</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.data.connection</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.data.latency</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.dpmservice</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.dsp</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IDspService</name>
+            <instance>dspservice</instance>
+        </interface>
+        <fqname>@1.0::IDspService/dspservice</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.embmssl</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.factory</name>
+        <transport>hwbinder</transport>
+        <version>1.1</version>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.fm</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IFmHci</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::IFmHci/default</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.mwqemadapter</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.qccvndhal</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IQccvndhal</name>
+            <instance>qccvndhal</instance>
+        </interface>
+        <fqname>@1.0::IQccvndhal/qccvndhal</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.qseecom</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IQSEECom</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::IQSEECom/default</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.radio.am</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.radio.ims</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.radio.internal.deviceinfo</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.radio.lpa</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.radio.qcrilhook</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.radio.qtiradio</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.radio.uim</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.radio.uim_remote_client</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.hardware.radio.uim_remote_server</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.trustedui</name>
+        <transport>hwbinder</transport>
+        <fqname>@1.1::ITrustedInput/default</fqname>
+        <fqname>@1.1::ITrustedInput/qtee-vm</fqname>
+        <fqname>@1.2::ITrustedUI/default</fqname>
+        <fqname>@1.2::ITrustedUI/qtee-vm</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.ims.callinfo</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.qti.imsrtpservice</name>
+        <transport>hwbinder</transport>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.samsung.hardware.audio</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISehDevicesFactory</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISehDevicesFactory/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.samsung.hardware.bluetooth</name>
+        <transport>hwbinder</transport>
+        <version>2.0</version>
+        <interface>
+            <name>ISehBluetooth</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@2.0::ISehBluetooth/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.samsung.hardware.bluetooth.a2dpsink</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISehBluetoothA2dpSinkProvidersFactory</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISehBluetoothA2dpSinkProvidersFactory/default</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>vendor.samsung.hardware.keymint</name>
+        <version>2</version>
+        <interface>
+            <name>ISehKeyMintExtension</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>ISehKeyMintExtension/default</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>vendor.samsung.hardware.keymint</name>
+        <version>2</version>
+        <interface>
+            <name>ISehKeyMintFactory</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>ISehKeyMintFactory/default</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>vendor.samsung.hardware.media.converter</name>
+        <fqname>ISehColorConverterStore/default</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>vendor.samsung.hardware.radio.bridge</name>
+        <interface>
+            <name>ISehRadioBridge</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>ISehRadioBridge/slot1</fqname>
+        <fqname>ISehRadioBridge/slot2</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>vendor.samsung.hardware.radio.channel</name>
+        <interface>
+            <name>ISehRadioChannel</name>
+            <instance>epdgd</instance>
+            <instance>epdgd2</instance>
+            <instance>imsd</instance>
+            <instance>imsd2</instance>
+        </interface>
+        <fqname>ISehRadioChannel/epdgd</fqname>
+        <fqname>ISehRadioChannel/epdgd2</fqname>
+        <fqname>ISehRadioChannel/imsd</fqname>
+        <fqname>ISehRadioChannel/imsd2</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>vendor.samsung.hardware.radio.data</name>
+        <interface>
+            <name>ISehRadioData</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>ISehRadioData/slot1</fqname>
+        <fqname>ISehRadioData/slot2</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>vendor.samsung.hardware.radio.messaging</name>
+        <interface>
+            <name>ISehRadioMessaging</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>ISehRadioMessaging/slot1</fqname>
+        <fqname>ISehRadioMessaging/slot2</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>vendor.samsung.hardware.radio.network</name>
+        <interface>
+            <name>ISehRadioNetwork</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>ISehRadioNetwork/slot1</fqname>
+        <fqname>ISehRadioNetwork/slot2</fqname>
+    </hal>
+    <hal format="aidl">
+        <name>vendor.samsung.hardware.radio.sim</name>
+        <interface>
+            <name>ISehRadioSim</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
+        </interface>
+        <fqname>ISehRadioSim/slot1</fqname>
+        <fqname>ISehRadioSim/slot2</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.samsung.hardware.security.drk</name>
+        <transport>hwbinder</transport>
+        <version>2.0</version>
+        <interface>
+            <name>ISehDrk</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@2.0::ISehDrk/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.samsung.hardware.security.hdcp.keyprovisioning</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISehHdcpKeyProvisioning</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISehHdcpKeyProvisioning/default</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.samsung.hardware.security.sem</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISehSem</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISehSem/default</fqname>
+    </hal>
+    <hal format="hidl" override="true">
+        <name>vendor.samsung.hardware.security.skpm</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISehSkpm</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISehSkpm/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.samsung.hardware.sysinput</name>
+        <transport>hwbinder</transport>
+        <version>1.3</version>
+        <interface>
+            <name>ISehSysInputCallback</name>
+        </interface>
+        <interface>
+            <name>ISehSysInputDev</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.3::ISehSysInputDev/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.samsung.hardware.tlc.blockchain</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISehBlockchain</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISehBlockchain/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.samsung.hardware.tlc.payment</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ISehTlcPayment</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@1.0::ISehTlcPayment/default</fqname>
+    </hal>
+    <hal format="hidl">
+        <name>vendor.samsung.hardware.tlc.ucm</name>
+        <transport>hwbinder</transport>
+        <version>2.0</version>
+        <interface>
+            <name>ISehUcm</name>
+            <instance>default</instance>
+        </interface>
+        <fqname>@2.0::ISehUcm/default</fqname>
+    </hal>
+    <sepolicy>
+        <version>33.0</version>
+    </sepolicy>
+</manifest>

BIN
recovery/root/vendor/lib64/android.hardware.gatekeeper@1.0.so


BIN
recovery/root/vendor/lib64/android.hardware.keymaster@3.0.so


BIN
recovery/root/vendor/lib64/android.hardware.keymaster@4.1.so


BIN
recovery/root/vendor/lib64/android.hardware.security.keymint-V2-ndk.so


BIN
recovery/root/vendor/lib64/android.hardware.security.secureclock-V1-ndk.so


BIN
recovery/root/vendor/lib64/android.hardware.security.sharedsecret-V1-ndk.so


BIN
recovery/root/vendor/lib64/android.hardware.weaver@1.0.so


BIN
recovery/root/vendor/lib64/hw/android.hardware.gatekeeper@1.0-impl.so


BIN
recovery/root/vendor/lib64/hw/gatekeeper.mdfpp.so


BIN
recovery/root/vendor/lib64/libGPreqcancel.so


BIN
recovery/root/vendor/lib64/libGPreqcancel_svc.so


BIN
recovery/root/vendor/lib64/libQSEEComAPI.so


BIN
recovery/root/vendor/lib64/libdiag.so


BIN
recovery/root/vendor/lib64/libdisplayconfig.qti.so


BIN
recovery/root/vendor/lib64/libdrm.so


BIN
recovery/root/vendor/lib64/libdrmfs.so


BIN
recovery/root/vendor/lib64/libdrmtime.so


BIN
recovery/root/vendor/lib64/libgpt.so


BIN
recovery/root/vendor/lib64/libhermes_cred.so


BIN
recovery/root/vendor/lib64/libkeymasterdeviceutils.so


BIN
recovery/root/vendor/lib64/libkeymasterutils.so


BIN
recovery/root/vendor/lib64/libminkdescriptor.so


BIN
recovery/root/vendor/lib64/libops.so


BIN
recovery/root/vendor/lib64/libqcbor.so


BIN
recovery/root/vendor/lib64/libqisl.so


BIN
recovery/root/vendor/lib64/libqtikeymaster4.so


BIN
recovery/root/vendor/lib64/librpmb.so


BIN
recovery/root/vendor/lib64/libskeymint10device.so


BIN
recovery/root/vendor/lib64/libskeymint_cli.so


BIN
recovery/root/vendor/lib64/libspcom.so


BIN
recovery/root/vendor/lib64/libspl.so


BIN
recovery/root/vendor/lib64/libssd.so


BIN
recovery/root/vendor/lib64/libtime_genoff.so


BIN
recovery/root/vendor/lib64/libvmmem.so


BIN
recovery/root/vendor/lib64/vendor.display.config@1.0.so


BIN
recovery/root/vendor/lib64/vendor.display.config@2.0.so


BIN
recovery/root/vendor/lib64/vendor.qti.hardware.tui_comm@1.0.so


BIN
recovery/root/vendor/lib64/vendor.samsung.hardware.keymint-V2-ndk.so


+ 9 - 0
vendor.prop

@@ -0,0 +1,9 @@
+# Crypto
+ro.crypto.allow_encrypt_override=true
+ro.crypto.dm_default_key.options_format.version=2
+ro.crypto.volume.metadata.method=dm-default-key
+ro.crypto.volume.filenames_mode=aes-256-cts
+ro.crypto.volume.options=aes-256-xts:aes-256-cts:v2
+ro.security.keystore.keytype=sakv2,gak,sgak,rkp
+ro.hardware.keystore=mdfpp
+ro.hardware.gatekeeper=mdfpp