audio-hal: use powerHAL 1.2 to do performance hint
1) Add PowerHAL 1.2 client
2) call PowerHAL powerhint on msm8998 instead of perfd
Test: Play audio and see powerhint handled
Bug: 62041945
Change-Id: I33ab8eaa7a3a3a953fb6531e0864b4ed62387ba2
(cherry picked from commit f4837d5bbe73df6f33aee2d0f733f72cc635de6a)
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 41a3d5d..59b0072 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -69,6 +69,7 @@
#include <audio_effects/effect_ns.h>
#include <audio_utils/format.h>
#include "audio_hw.h"
+#include "audio_perf.h"
#include "platform_api.h"
#include <platform.h>
#include "audio_extn.h"
@@ -2706,6 +2707,7 @@
uc_info->out_snd_device = SND_DEVICE_NONE;
list_add_tail(&adev->usecase_list, &uc_info->list);
+ audio_streaming_hint_start();
audio_extn_perf_lock_acquire(&adev->perf_lock_handle, 0,
adev->perf_lock_opts,
adev->perf_lock_opts_size);
@@ -2808,14 +2810,17 @@
audio_extn_audiozoom_set_microphone_field_dimension(in, in->direction);
done_open:
+ audio_streaming_hint_end();
audio_extn_perf_lock_release(&adev->perf_lock_handle);
ALOGD("%s: exit", __func__);
enable_gcov();
return ret;
error_open:
+ audio_streaming_hint_end();
audio_extn_perf_lock_release(&adev->perf_lock_handle);
stop_input_stream(in);
+
error_config:
adev->active_input = get_next_active_input(adev);
/*
@@ -3369,6 +3374,7 @@
list_add_tail(&adev->usecase_list, &uc_info->list);
+ audio_streaming_hint_start();
audio_extn_perf_lock_acquire(&adev->perf_lock_handle, 0,
adev->perf_lock_opts,
adev->perf_lock_opts_size);
@@ -3562,7 +3568,7 @@
goto error_open;
}
}
-
+ audio_streaming_hint_end();
audio_extn_perf_lock_release(&adev->perf_lock_handle);
ALOGD("%s: exit", __func__);
@@ -3587,6 +3593,7 @@
pcm_close(adev->haptic_pcm);
adev->haptic_pcm = NULL;
}
+ audio_streaming_hint_end();
audio_extn_perf_lock_release(&adev->perf_lock_handle);
stop_output_stream(out);
error_config: