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);
+