hal: Add support to send playback events to sound trigger hal
Send events to sound trigger hal based on usecase. Also add
playback offload2 to the list of usecases that need an event.
Change-Id: I4953c8bddbe839479e5ece16223097b989838908
diff --git a/hal/msm8916/platform.c b/hal/msm8916/platform.c
index 73689eb..57f0621 100644
--- a/hal/msm8916/platform.c
+++ b/hal/msm8916/platform.c
@@ -4764,6 +4764,7 @@
case USECASE_AUDIO_PLAYBACK_DEEP_BUFFER:
case USECASE_AUDIO_PLAYBACK_MULTI_CH:
case USECASE_AUDIO_PLAYBACK_OFFLOAD:
+ case USECASE_AUDIO_PLAYBACK_OFFLOAD2:
needs_event = true;
break;
/* concurrent playback in low latency allowed */
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 0bdebff..4d9e272 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -4697,9 +4697,55 @@
return needs_event;
}
-bool platform_sound_trigger_usecase_needs_event(audio_usecase_t uc_id __unused)
+bool platform_sound_trigger_usecase_needs_event(audio_usecase_t uc_id)
{
- return false;
+ bool needs_event = false;
+
+ switch(uc_id){
+ /* concurrent playback usecases needs event */
+ case USECASE_AUDIO_PLAYBACK_DEEP_BUFFER:
+ case USECASE_AUDIO_PLAYBACK_MULTI_CH:
+ case USECASE_AUDIO_PLAYBACK_OFFLOAD:
+ case USECASE_AUDIO_PLAYBACK_OFFLOAD2:
+ needs_event = true;
+ break;
+ /* concurrent playback in low latency allowed */
+ case USECASE_AUDIO_PLAYBACK_LOW_LATENCY:
+ break;
+ /* concurrent playback FM needs event */
+ case USECASE_AUDIO_PLAYBACK_FM:
+ needs_event = true;
+ break;
+
+ /* concurrent capture usecases, no event, capture handled by device
+ * USECASE_AUDIO_RECORD:
+ * USECASE_AUDIO_RECORD_COMPRESS:
+ * USECASE_AUDIO_RECORD_LOW_LATENCY:
+
+ * USECASE_VOICE_CALL:
+ * USECASE_VOICE2_CALL:
+ * USECASE_VOLTE_CALL:
+ * USECASE_QCHAT_CALL:
+ * USECASE_VOWLAN_CALL:
+ * USECASE_VOICEMMODE1_CALL:
+ * USECASE_VOICEMMODE2_CALL:
+ * USECASE_COMPRESS_VOIP_CALL:
+ * USECASE_AUDIO_RECORD_FM_VIRTUAL:
+ * USECASE_INCALL_REC_UPLINK:
+ * USECASE_INCALL_REC_DOWNLINK:
+ * USECASE_INCALL_REC_UPLINK_AND_DOWNLINK:
+ * USECASE_INCALL_REC_UPLINK_COMPRESS:
+ * USECASE_INCALL_REC_DOWNLINK_COMPRESS:
+ * USECASE_INCALL_REC_UPLINK_AND_DOWNLINK_COMPRESS:
+ * USECASE_INCALL_MUSIC_UPLINK:
+ * USECASE_INCALL_MUSIC_UPLINK2:
+ * USECASE_AUDIO_SPKR_CALIB_RX:
+ * USECASE_AUDIO_SPKR_CALIB_TX:
+ */
+ default:
+ ALOGV("%s:usecase_id[%d] no need to raise event.", __func__, uc_id);
+ }
+ return needs_event;
}
/* Read offload buffer size from a property.