From bfd82ed620864ac8e90bb8b73e61e7379395c7b9 Mon Sep 17 00:00:00 2001 From: Majaahh Date: Thu, 25 Sep 2025 12:34:45 +0200 Subject: [PATCH] s5e8825-common: Drop unnecessary vaultkeeper blobs * Vaultkeeper is working fine without them Change-Id: I1838d844f728ad2f03d3bf358f74dfce93f8f058 Signed-off-by: Majaahh --- Android.bp | 68 ------------------ ...sung.hardware.security.vaultkeeper-service | Bin 24864 -> 0 bytes ...hardware.security.vaultkeeper-manifest.xml | 7 -- ...re.security.vaultkeeper-V1-ndk_platform.so | Bin 46128 -> 0 bytes s5e8825-common-vendor.mk | 5 +- 5 files changed, 1 insertion(+), 79 deletions(-) delete mode 100755 proprietary/vendor/bin/vendor.samsung.hardware.security.vaultkeeper-service delete mode 100644 proprietary/vendor/etc/vintf/manifest/vendor.samsung.hardware.security.vaultkeeper-manifest.xml delete mode 100644 proprietary/vendor/lib64/vendor.samsung.hardware.security.vaultkeeper-V1-ndk_platform.so diff --git a/Android.bp b/Android.bp index 3896c69..3323b17 100644 --- a/Android.bp +++ b/Android.bp @@ -2287,31 +2287,6 @@ cc_prebuilt_library_shared { soc_specific: true, } -cc_prebuilt_library_shared { - name: "vendor.samsung.hardware.security.vaultkeeper-V1-ndk_platform", - owner: "samsung", - strip: { - none: true, - }, - target: { - android_arm64: { - srcs: [ - "proprietary/vendor/lib64/vendor.samsung.hardware.security.vaultkeeper-V1-ndk_platform.so", - ], - shared_libs: [ - "libbinder_ndk", - "libc++", - "libc", - "libm", - "libdl", - ], - }, - }, - compile_multilib: "64", - prefer: true, - soc_specific: true, -} - cc_prebuilt_library_shared { name: "vendor.samsung.hardware.thermal@1.0", owner: "samsung", @@ -2378,15 +2353,6 @@ prebuilt_etc_xml { soc_specific: true, } -prebuilt_etc_xml { - name: "vendor.samsung.hardware.security.vaultkeeper-manifest.xml", - owner: "samsung", - src: "proprietary/vendor/etc/vintf/manifest/vendor.samsung.hardware.security.vaultkeeper-manifest.xml", - filename_from_src: true, - sub_dir: "vintf/manifest", - soc_specific: true, -} - prebuilt_etc_xml { name: "vendor.samsung.hardware.sehradio_manifest_2_33.xml", owner: "samsung", @@ -2754,40 +2720,6 @@ cc_prebuilt_binary { soc_specific: true, } -cc_prebuilt_binary { - name: "vendor.samsung.hardware.security.vaultkeeper-service", - owner: "samsung", - target: { - android_arm64: { - srcs: [ - "proprietary/vendor/bin/vendor.samsung.hardware.security.vaultkeeper-service", - ], - shared_libs: [ - "vendor.samsung.hardware.security.vaultkeeper-V1-ndk_platform", - "libbinder_ndk", - "liblog", - "libbase", - "libutils", - "libcutils", - "libhardware", - "libhidlbase", - "libbinder", - "libvkmanager_vendor", - "libc++", - "libc", - "libm", - "libdl", - ], - }, - }, - compile_multilib: "64", - strip: { - none: true, - }, - prefer: true, - soc_specific: true, -} - install_symlink { name: "vendor_lib64_libOpenCL_so", soc_specific: true, diff --git a/proprietary/vendor/bin/vendor.samsung.hardware.security.vaultkeeper-service b/proprietary/vendor/bin/vendor.samsung.hardware.security.vaultkeeper-service deleted file mode 100755 index 742f3668868b56035f738f409c8d1e70a8e158a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24864 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 diff --git a/proprietary/vendor/etc/vintf/manifest/vendor.samsung.hardware.security.vaultkeeper-manifest.xml b/proprietary/vendor/etc/vintf/manifest/vendor.samsung.hardware.security.vaultkeeper-manifest.xml deleted file mode 100644 index 153e06e..0000000 --- a/proprietary/vendor/etc/vintf/manifest/vendor.samsung.hardware.security.vaultkeeper-manifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - vendor.samsung.hardware.security.vaultkeeper - 1 - ISehVaultKeeper/default - - diff --git a/proprietary/vendor/lib64/vendor.samsung.hardware.security.vaultkeeper-V1-ndk_platform.so b/proprietary/vendor/lib64/vendor.samsung.hardware.security.vaultkeeper-V1-ndk_platform.so deleted file mode 100644 index b5ad712ba41fc4cc98cda71b0042d8512a756316..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46128 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