Add missing definition for clearkey service.
android.hardware.drm@1.2-service.clearkey is not
started on boot, subsequently causing timeout error when
we run CTS test during TreeHugger presubmit test.
Test: adb shell ps -A | grep drm
confirm service is started
Test: run CTS test
atest CtsMediaTestCases:android.media.cts.MediaDrmMetricsTest -- --abi x86
bug: 139479420
Change-Id: I777555e74e6d18b30f396ebb751bee4c81982dfb
diff --git a/shared/config/CleanSpec.mk b/shared/config/CleanSpec.mk
index aa2a605..6551673 100644
--- a/shared/config/CleanSpec.mk
+++ b/shared/config/CleanSpec.mk
@@ -43,4 +43,5 @@
# Remove gps.vsoc.so and android.hardware.gnss@1.0-impl.so
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/lib/hw/gps.vsoc.so)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/lib/hw/android.hardware.gnss@1.0-impl.so)
-$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/bin/hw/android.hardware.gnss@1.0-service)
\ No newline at end of file
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/bin/hw/android.hardware.gnss@1.0-service)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/bin/hw/android.hardware.drm@1.2-service.clearkey)
diff --git a/shared/config/manifest.xml b/shared/config/manifest.xml
index 0588bb9..892635e 100644
--- a/shared/config/manifest.xml
+++ b/shared/config/manifest.xml
@@ -139,17 +139,10 @@
<hal format="hidl">
<name>android.hardware.drm</name>
<transport>hwbinder</transport>
- <version>1.2</version>
- <interface>
- <name>ICryptoFactory</name>
- <instance>clearkey</instance>
- <instance>default</instance>
- </interface>
- <interface>
- <name>IDrmFactory</name>
- <instance>clearkey</instance>
- <instance>default</instance>
- </interface>
+ <fqname>@1.0::ICryptoFactory/default</fqname>
+ <fqname>@1.0::IDrmFactory/default</fqname>
+ <fqname>@1.2::ICryptoFactory/clearkey</fqname>
+ <fqname>@1.2::IDrmFactory/clearkey</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.dumpstate</name>
diff --git a/shared/device.mk b/shared/device.mk
index 1f59971..2a5fb08 100644
--- a/shared/device.mk
+++ b/shared/device.mk
@@ -216,6 +216,7 @@
# Drm HAL
#
PRODUCT_PACKAGES += \
+ android.hardware.drm@1.0-service \
android.hardware.drm@1.2-service.clearkey
#
diff --git a/shared/sepolicy/vendor/file_contexts b/shared/sepolicy/vendor/file_contexts
index e46880a..963ebe6 100644
--- a/shared/sepolicy/vendor/file_contexts
+++ b/shared/sepolicy/vendor/file_contexts
@@ -57,7 +57,8 @@
/vendor/bin/hw/libcuttlefish-rild u:object_r:libcuttlefish_rild_exec:s0
/vendor/bin/hw/android\.hardware\.power\.stats@1\.0-service\.mock u:object_r:hal_power_stats_default_exec:s0
/vendor/bin/hw/android\.hardware\.bluetooth@1\.0-service\.sim u:object_r:hal_bluetooth_sim_exec:s0
-/vendor/bin/hw/android\.hardware\.drm@1\.1-service\.clearkey u:object_r:hal_drm_default_exec:s0
+/vendor/bin/hw/android\.hardware\.drm@1\.2-service\.clearkey u:object_r:hal_drm_clearkey_exec:s0
+/vendor/bin/hw/android\.hardware\.drm@1\.2-service-lazy\.clearkey u:object_r:hal_drm_clearkey_exec:s0
/vendor/bin/hw/android\.hardware\.dumpstate@1\.0-service\.cuttlefish u:object_r:hal_dumpstate_impl_exec:s0
/vendor/bin/hw/android\.hardware\.gatekeeper@1\.0-service\.software u:object_r:hal_gatekeeper_default_exec:s0
/vendor/bin/hw/android\.hardware\.health@2\.0-service\.cuttlefish u:object_r:hal_health_default_exec:s0
diff --git a/shared/sepolicy/vendor/hal_drm_clearkey.te b/shared/sepolicy/vendor/hal_drm_clearkey.te
new file mode 100644
index 0000000..2da9420
--- /dev/null
+++ b/shared/sepolicy/vendor/hal_drm_clearkey.te
@@ -0,0 +1,10 @@
+# policy for /vendor/bin/hw/android.hardware.drm clearkey service
+type hal_drm_clearkey, domain;
+type hal_drm_clearkey_exec, exec_type, vendor_file_type, file_type;
+
+init_daemon_domain(hal_drm_clearkey)
+
+hal_server_domain(hal_drm_clearkey, hal_drm)
+
+vndbinder_use(hal_drm_clearkey);
+