Merge changes from topic "artd-sepolicy-b254013425"

* changes:
  Allow artd to scan directories for cleaning up obsolete managed files.
  Allow system_server to read /data/misc/profman.
diff --git a/build/soong/service_fuzzer_bindings.go b/build/soong/service_fuzzer_bindings.go
index 104ac81..91231a4 100644
--- a/build/soong/service_fuzzer_bindings.go
+++ b/build/soong/service_fuzzer_bindings.go
@@ -115,6 +115,7 @@
 		"android.hardware.soundtrigger3.ISoundTriggerHw/default":                  EXCEPTION_NO_FUZZER,
 		"android.hardware.thermal.IThermal/default":                               EXCEPTION_NO_FUZZER,
 		"android.hardware.tv.cec.IHdmiCec/default":                                EXCEPTION_NO_FUZZER,
+		"android.hardware.tv.earc.IEArc/default":                                  EXCEPTION_NO_FUZZER,
 		"android.hardware.tv.hdmi.IHdmi/default":                                  EXCEPTION_NO_FUZZER,
 		"android.hardware.tv.input.ITvInput/default":                              EXCEPTION_NO_FUZZER,
 		"android.hardware.tv.tuner.ITuner/default":                                EXCEPTION_NO_FUZZER,
diff --git a/prebuilts/api/33.0/private/property_contexts b/prebuilts/api/33.0/private/property_contexts
index 4eda4a1..db71be4 100644
--- a/prebuilts/api/33.0/private/property_contexts
+++ b/prebuilts/api/33.0/private/property_contexts
@@ -347,6 +347,11 @@
 audio.offload.video             u:object_r:audio_config_prop:s0 exact bool
 audio.offload.min.duration.secs u:object_r:audio_config_prop:s0 exact int
 
+# spatializer tuning
+audio.spatializer.priority               u:object_r:audio_config_prop:s0 exact int
+audio.spatializer.effect.affinity        u:object_r:audio_config_prop:s0 exact int
+audio.spatializer.effect.util_clamp_min  u:object_r:audio_config_prop:s0 exact int
+
 ro.audio.ignore_effects   u:object_r:audio_config_prop:s0 exact bool
 ro.audio.monitorRotation  u:object_r:audio_config_prop:s0 exact bool
 ro.audio.offload_wakelock u:object_r:audio_config_prop:s0 exact bool
diff --git a/prebuilts/api/33.0/public/hal_audio.te b/prebuilts/api/33.0/public/hal_audio.te
index 52caa00..aabc884 100644
--- a/prebuilts/api/33.0/public/hal_audio.te
+++ b/prebuilts/api/33.0/public/hal_audio.te
@@ -23,6 +23,9 @@
 # Needed to allow sound trigger hal to access shared memory from apps.
 allow hal_audio_server appdomain:fd use;
 
+# allow self to set scheduler (and allows Binder RT PI)
+allow hal_audio_server self:global_capability_class_set sys_nice;
+
 # allow hal audio to use vnbinder
 vndbinder_use(hal_audio)
 
diff --git a/private/compat/33.0/33.0.ignore.cil b/private/compat/33.0/33.0.ignore.cil
index 89afef2..c16fcab 100644
--- a/private/compat/33.0/33.0.ignore.cil
+++ b/private/compat/33.0/33.0.ignore.cil
@@ -24,6 +24,7 @@
     hal_thermal_service
     hal_usb_gadget_service
     hal_tv_input_service
+    hal_tv_earc_service
     hal_tv_hdmi_service
     hal_tv_hdmi_cec_service
     hal_wifi_service
diff --git a/private/property_contexts b/private/property_contexts
index 32746cd..f208e52 100644
--- a/private/property_contexts
+++ b/private/property_contexts
@@ -363,6 +363,11 @@
 audio.offload.video             u:object_r:audio_config_prop:s0 exact bool
 audio.offload.min.duration.secs u:object_r:audio_config_prop:s0 exact int
 
+# spatializer tuning
+audio.spatializer.priority               u:object_r:audio_config_prop:s0 exact int
+audio.spatializer.effect.affinity        u:object_r:audio_config_prop:s0 exact int
+audio.spatializer.effect.util_clamp_min  u:object_r:audio_config_prop:s0 exact int
+
 ro.audio.ignore_effects   u:object_r:audio_config_prop:s0 exact bool
 ro.audio.monitorRotation  u:object_r:audio_config_prop:s0 exact bool
 ro.audio.offload_wakelock u:object_r:audio_config_prop:s0 exact bool
diff --git a/private/service_contexts b/private/service_contexts
index 04615c0..b6722c5 100644
--- a/private/service_contexts
+++ b/private/service_contexts
@@ -90,6 +90,7 @@
 android.hardware.soundtrigger3.ISoundTriggerHw/default               u:object_r:hal_audio_service:s0
 android.hardware.thermal.IThermal/default                            u:object_r:hal_thermal_service:s0
 android.hardware.tv.cec.IHdmiCec/default                             u:object_r:hal_tv_hdmi_cec_service:s0
+android.hardware.tv.earc.IEArc/default                               u:object_r:hal_tv_earc_service:s0
 android.hardware.tv.hdmi.IHdmi/default                               u:object_r:hal_tv_hdmi_service:s0
 android.hardware.tv.tuner.ITuner/default                             u:object_r:hal_tv_tuner_service:s0
 android.hardware.tv.input.ITvInput/default                           u:object_r:hal_tv_input_service:s0
diff --git a/private/system_server.te b/private/system_server.te
index 8a3cca9..576da94 100644
--- a/private/system_server.te
+++ b/private/system_server.te
@@ -331,6 +331,7 @@
 hal_client_domain(system_server, hal_tetheroffload)
 hal_client_domain(system_server, hal_thermal)
 hal_client_domain(system_server, hal_tv_cec)
+hal_client_domain(system_server, hal_tv_earc)
 hal_client_domain(system_server, hal_tv_hdmi)
 hal_client_domain(system_server, hal_tv_hdmi_cec)
 hal_client_domain(system_server, hal_tv_input)
diff --git a/public/attributes b/public/attributes
index 0478874..ebc199c 100644
--- a/public/attributes
+++ b/public/attributes
@@ -370,6 +370,7 @@
 hal_attribute(tetheroffload);
 hal_attribute(thermal);
 hal_attribute(tv_cec);
+hal_attribute(tv_earc);
 hal_attribute(tv_hdmi);
 hal_attribute(tv_hdmi_cec);
 hal_attribute(tv_input);
diff --git a/public/hal_audio.te b/public/hal_audio.te
index 52caa00..aabc884 100644
--- a/public/hal_audio.te
+++ b/public/hal_audio.te
@@ -23,6 +23,9 @@
 # Needed to allow sound trigger hal to access shared memory from apps.
 allow hal_audio_server appdomain:fd use;
 
+# allow self to set scheduler (and allows Binder RT PI)
+allow hal_audio_server self:global_capability_class_set sys_nice;
+
 # allow hal audio to use vnbinder
 vndbinder_use(hal_audio)
 
diff --git a/public/hal_tv_earc.te b/public/hal_tv_earc.te
new file mode 100644
index 0000000..419d16e
--- /dev/null
+++ b/public/hal_tv_earc.te
@@ -0,0 +1,7 @@
+# Binder IPC from clients into server, and callbacks
+binder_call(hal_tv_earc_client, hal_tv_earc_server)
+binder_call(hal_tv_earc_server, hal_tv_earc_client)
+binder_use(hal_tv_earc_client)
+binder_use(hal_tv_earc_server)
+
+hal_attribute_service(hal_tv_earc, hal_tv_earc_service)
diff --git a/public/service.te b/public/service.te
index b4745bb..154905d 100644
--- a/public/service.te
+++ b/public/service.te
@@ -315,6 +315,7 @@
 type hal_sharedsecret_service, protected_service, hal_service_type, service_manager_type;
 type hal_system_suspend_service, protected_service, hal_service_type, service_manager_type;
 type hal_thermal_service, protected_service, hal_service_type, service_manager_type;
+type hal_tv_earc_service, protected_service, hal_service_type, service_manager_type;
 type hal_tv_hdmi_service, protected_service, hal_service_type, service_manager_type;
 type hal_tv_hdmi_cec_service, protected_service, hal_service_type, service_manager_type;
 type hal_tv_input_service, protected_service, hal_service_type, service_manager_type;
diff --git a/public/su.te b/public/su.te
index 730c1e0..60d0230 100644
--- a/public/su.te
+++ b/public/su.te
@@ -97,6 +97,7 @@
   typeattribute su hal_tetheroffload_client;
   typeattribute su hal_thermal_client;
   typeattribute su hal_tv_cec_client;
+  typeattribute su hal_tv_earc_client;
   typeattribute su hal_tv_hdmi_client;
   typeattribute su hal_tv_hdmi_cec_client;
   typeattribute su hal_tv_input_client;
diff --git a/vendor/file_contexts b/vendor/file_contexts
index 2c9a74a..7f3cc88 100644
--- a/vendor/file_contexts
+++ b/vendor/file_contexts
@@ -100,6 +100,7 @@
 /(vendor|system/vendor)/bin/hw/android\.hardware\.thermal-service\.example       u:object_r:hal_thermal_default_exec:s0
 /(vendor|system/vendor)/bin/hw/android\.hardware\.tv\.cec@1\.[01]-service        u:object_r:hal_tv_cec_default_exec:s0
 /(vendor|system/vendor)/bin/hw/android\.hardware\.tv\.cec-service             u:object_r:hal_tv_hdmi_cec_default_exec:s0
+/(vendor|system/vendor)/bin/hw/android\.hardware\.tv\.earc-service            u:object_r:hal_tv_earc_default_exec:s0
 /(vendor|system/vendor)/bin/hw/android\.hardware\.tv\.hdmi-service            u:object_r:hal_tv_hdmi_default_exec:s0
 /(vendor|system/vendor)/bin/hw/android\.hardware\.tv\.input@1\.0-service      u:object_r:hal_tv_input_default_exec:s0
 /(vendor|system/vendor)/bin/hw/android\.hardware\.tv\.input-service\.example  u:object_r:hal_tv_input_default_exec:s0
diff --git a/vendor/hal_tv_earc_default.te b/vendor/hal_tv_earc_default.te
new file mode 100644
index 0000000..0f5814a
--- /dev/null
+++ b/vendor/hal_tv_earc_default.te
@@ -0,0 +1,5 @@
+type hal_tv_earc_default, domain;
+hal_server_domain(hal_tv_earc_default, hal_tv_earc)
+
+type hal_tv_earc_default_exec, exec_type, vendor_file_type, file_type;
+init_daemon_domain(hal_tv_earc_default)