diff --git a/Android.bp b/Android.bp index dc7d3e0..8227f39 100644 --- a/Android.bp +++ b/Android.bp @@ -1004,6 +1004,15 @@ dex_import { system_ext_specific: true, } +prebuilt_etc_xml { + name: "manifest_android.hardware.drm@1.4-service.widevine", + owner: "xiaomi", + src: "proprietary/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.4-service.widevine.xml", + filename_from_src: true, + sub_dir: "vintf/manifest", + soc_specific: true, +} + prebuilt_etc_xml { name: "vendor.qti.gnss@4.0-service", owner: "xiaomi", diff --git a/proprietary/vendor/bin/hw/android.hardware.drm@1.4-service.widevine b/proprietary/vendor/bin/hw/android.hardware.drm@1.4-service.widevine new file mode 100644 index 0000000..85526c9 Binary files /dev/null and b/proprietary/vendor/bin/hw/android.hardware.drm@1.4-service.widevine differ diff --git a/proprietary/vendor/etc/init/android.hardware.drm@1.4-service.widevine.rc b/proprietary/vendor/etc/init/android.hardware.drm@1.4-service.widevine.rc new file mode 100644 index 0000000..3d8198a --- /dev/null +++ b/proprietary/vendor/etc/init/android.hardware.drm@1.4-service.widevine.rc @@ -0,0 +1,28 @@ +on property:init.svc.mediadrm=running + mkdir /data/vendor/mediadrm 0770 media mediadrm + start vendor.move_data_sh + +service vendor.move_data_sh /system/bin/move_widevine_data.sh + class late_start + user media + group media mediadrm system + disabled + oneshot + +service vendor.drm-widevine-hal-1-4 /vendor/bin/hw/android.hardware.drm@1.4-service.widevine + interface android.hardware.drm@1.0::ICryptoFactory widevine + interface android.hardware.drm@1.0::IDrmFactory widevine + interface android.hardware.drm@1.1::ICryptoFactory widevine + interface android.hardware.drm@1.1::IDrmFactory widevine + interface android.hardware.drm@1.2::ICryptoFactory widevine + interface android.hardware.drm@1.2::IDrmFactory widevine + interface android.hardware.drm@1.3::ICryptoFactory widevine + interface android.hardware.drm@1.3::IDrmFactory widevine + interface android.hardware.drm@1.4::ICryptoFactory widevine + interface android.hardware.drm@1.4::IDrmFactory widevine + interface android.hidl.base@1.0::IBase widevine + class hal + user media + group media mediadrm drmrpc system + ioprio rt 4 + writepid /dev/cpuset/foreground/tasks diff --git a/proprietary/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.4-service.widevine.xml b/proprietary/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.4-service.widevine.xml new file mode 100644 index 0000000..78618dc --- /dev/null +++ b/proprietary/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.4-service.widevine.xml @@ -0,0 +1,23 @@ + + + + + android.hardware.drm + hwbinder + @1.4::ICryptoFactory/widevine + @1.4::IDrmFactory/widevine + + diff --git a/proprietary/vendor/lib64/libwvhidl.so b/proprietary/vendor/lib64/libwvhidl.so new file mode 100644 index 0000000..8cf9ebc Binary files /dev/null and b/proprietary/vendor/lib64/libwvhidl.so differ diff --git a/proprietary/vendor/lib64/mediadrm/libwvdrmengine.so b/proprietary/vendor/lib64/mediadrm/libwvdrmengine.so new file mode 100644 index 0000000..b812928 Binary files /dev/null and b/proprietary/vendor/lib64/mediadrm/libwvdrmengine.so differ diff --git a/sdm660-common-vendor.mk b/sdm660-common-vendor.mk index 7185b45..c727ee1 100644 --- a/sdm660-common-vendor.mk +++ b/sdm660-common-vendor.mk @@ -233,6 +233,7 @@ PRODUCT_COPY_FILES += \ vendor/xiaomi/sdm660-common/proprietary/vendor/bin/garden_app:$(TARGET_COPY_OUT_VENDOR)/bin/garden_app \ vendor/xiaomi/sdm660-common/proprietary/vendor/bin/hvdcp_opti:$(TARGET_COPY_OUT_VENDOR)/bin/hvdcp_opti \ vendor/xiaomi/sdm660-common/proprietary/vendor/bin/hw/android.hardware.bluetooth@1.0-service-qti:$(TARGET_COPY_OUT_VENDOR)/bin/hw/android.hardware.bluetooth@1.0-service-qti \ + vendor/xiaomi/sdm660-common/proprietary/vendor/bin/hw/android.hardware.drm@1.4-service.widevine:$(TARGET_COPY_OUT_VENDOR)/bin/hw/android.hardware.drm@1.4-service.widevine \ vendor/xiaomi/sdm660-common/proprietary/vendor/bin/hw/android.hardware.gatekeeper@1.0-service-qti:$(TARGET_COPY_OUT_VENDOR)/bin/hw/android.hardware.gatekeeper@1.0-service-qti \ vendor/xiaomi/sdm660-common/proprietary/vendor/bin/hw/android.hardware.keymaster@3.0-service-qti:$(TARGET_COPY_OUT_VENDOR)/bin/hw/android.hardware.keymaster@3.0-service-qti \ vendor/xiaomi/sdm660-common/proprietary/vendor/bin/hw/android.hardware.keymaster@4.0-service-qti:$(TARGET_COPY_OUT_VENDOR)/bin/hw/android.hardware.keymaster@4.0-service-qti \ @@ -314,6 +315,7 @@ PRODUCT_COPY_FILES += \ vendor/xiaomi/sdm660-common/proprietary/vendor/etc/diracvdd.bin:$(TARGET_COPY_OUT_VENDOR)/etc/diracvdd.bin \ vendor/xiaomi/sdm660-common/proprietary/vendor/etc/gpfspath_oem_config.xml:$(TARGET_COPY_OUT_VENDOR)/etc/gpfspath_oem_config.xml \ vendor/xiaomi/sdm660-common/proprietary/vendor/etc/init/android.hardware.bluetooth@1.0-service-qti.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/android.hardware.bluetooth@1.0-service-qti.rc \ + vendor/xiaomi/sdm660-common/proprietary/vendor/etc/init/android.hardware.drm@1.4-service.widevine.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/android.hardware.drm@1.4-service.widevine.rc \ vendor/xiaomi/sdm660-common/proprietary/vendor/etc/init/android.hardware.gatekeeper@1.0-service-qti.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/android.hardware.gatekeeper@1.0-service-qti.rc \ vendor/xiaomi/sdm660-common/proprietary/vendor/etc/init/cnd.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/cnd.rc \ vendor/xiaomi/sdm660-common/proprietary/vendor/etc/init/dataadpl.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/dataadpl.rc \ @@ -760,10 +762,12 @@ PRODUCT_COPY_FILES += \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/libtzdrmgenprov.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libtzdrmgenprov.so \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/libwms.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libwms.so \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/libwqe.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libwqe.so \ + vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/libwvhidl.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libwvhidl.so \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/libxml.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libxml.so \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/libxtadapter.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libxtadapter.so \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/libxtwifi_server_protocol.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libxtwifi_server_protocol.so \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/libxtwifi_server_protocol_uri_v3.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libxtwifi_server_protocol_uri_v3.so \ + vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/mediadrm/libwvdrmengine.so:$(TARGET_COPY_OUT_VENDOR)/lib64/mediadrm/libwvdrmengine.so \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/qcrild_librilutils.so:$(TARGET_COPY_OUT_VENDOR)/lib64/qcrild_librilutils.so \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/qtibus.so:$(TARGET_COPY_OUT_VENDOR)/lib64/qtibus.so \ vendor/xiaomi/sdm660-common/proprietary/vendor/lib64/qtimutex.so:$(TARGET_COPY_OUT_VENDOR)/lib64/qtimutex.so \ @@ -1003,6 +1007,7 @@ PRODUCT_PACKAGES += \ vendor.qti.latency-V2.2-java \ vendor.qti.latencyaidlservice-V1-java \ vendor.qti.voiceprint-V1.0-java \ + manifest_android.hardware.drm@1.4-service.widevine \ vendor.qti.gnss@4.0-service ifeq ($(BOARD_HAVE_IR),true)