Loading hal/audio_hw.c +1 −16 Original line number Diff line number Diff line Loading @@ -551,21 +551,6 @@ static int read_hdmi_channel_masks(struct stream_out *out) return ret; } static void update_devices_for_all_voice_usecases(struct audio_device *adev) { struct listnode *node; struct audio_usecase *usecase; list_for_each(node, &adev->usecase_list) { usecase = node_to_item(node, struct audio_usecase, list); if (usecase->type == VOICE_CALL) { ALOGV("%s: updating device for usecase:%s", __func__, use_case_table[usecase->id]); select_devices(adev, usecase->id); } } } static audio_usecase_t get_voice_usecase_id_from_list(struct audio_device *adev) { struct audio_usecase *usecase; Loading Loading @@ -1457,7 +1442,7 @@ static int out_set_parameters(struct audio_stream *stream, const char *kvpairs) } else if ((adev->mode == AUDIO_MODE_IN_CALL) && voice_is_in_call(adev) && (out == adev->primary_output)) { update_devices_for_all_voice_usecases(adev); voice_update_devices_for_all_voice_usecases(adev); } } Loading hal/voice.c +16 −2 Original line number Diff line number Diff line Loading @@ -397,8 +397,7 @@ int voice_set_parameters(struct audio_device *adev, struct str_parms *parms) adev->voice.tty_mode = tty_mode; adev->acdb_settings = (adev->acdb_settings & TTY_MODE_CLEAR) | tty_mode; if (voice_is_in_call(adev)) //todo: what about voice2, volte and qchat usecases? select_devices(adev, USECASE_VOICE_CALL); voice_update_devices_for_all_voice_usecases(adev); } } Loading Loading @@ -438,4 +437,19 @@ void voice_init(struct audio_device *adev) voice_extn_init(adev); } void voice_update_devices_for_all_voice_usecases(struct audio_device *adev) { struct listnode *node; struct audio_usecase *usecase; list_for_each(node, &adev->usecase_list) { usecase = node_to_item(node, struct audio_usecase, list); if (usecase->type == VOICE_CALL) { ALOGV("%s: updating device for usecase:%s", __func__, use_case_table[usecase->id]); select_devices(adev, usecase->id); } } } hal/voice.h +1 −0 Original line number Diff line number Diff line Loading @@ -86,4 +86,5 @@ int voice_check_and_set_incall_music_usecase(struct audio_device *adev, struct stream_out *out); int voice_check_and_stop_incall_rec_usecase(struct audio_device *adev, struct stream_in *in); void voice_update_devices_for_all_voice_usecases(struct audio_device *adev); #endif //VOICE_H Loading
hal/audio_hw.c +1 −16 Original line number Diff line number Diff line Loading @@ -551,21 +551,6 @@ static int read_hdmi_channel_masks(struct stream_out *out) return ret; } static void update_devices_for_all_voice_usecases(struct audio_device *adev) { struct listnode *node; struct audio_usecase *usecase; list_for_each(node, &adev->usecase_list) { usecase = node_to_item(node, struct audio_usecase, list); if (usecase->type == VOICE_CALL) { ALOGV("%s: updating device for usecase:%s", __func__, use_case_table[usecase->id]); select_devices(adev, usecase->id); } } } static audio_usecase_t get_voice_usecase_id_from_list(struct audio_device *adev) { struct audio_usecase *usecase; Loading Loading @@ -1457,7 +1442,7 @@ static int out_set_parameters(struct audio_stream *stream, const char *kvpairs) } else if ((adev->mode == AUDIO_MODE_IN_CALL) && voice_is_in_call(adev) && (out == adev->primary_output)) { update_devices_for_all_voice_usecases(adev); voice_update_devices_for_all_voice_usecases(adev); } } Loading
hal/voice.c +16 −2 Original line number Diff line number Diff line Loading @@ -397,8 +397,7 @@ int voice_set_parameters(struct audio_device *adev, struct str_parms *parms) adev->voice.tty_mode = tty_mode; adev->acdb_settings = (adev->acdb_settings & TTY_MODE_CLEAR) | tty_mode; if (voice_is_in_call(adev)) //todo: what about voice2, volte and qchat usecases? select_devices(adev, USECASE_VOICE_CALL); voice_update_devices_for_all_voice_usecases(adev); } } Loading Loading @@ -438,4 +437,19 @@ void voice_init(struct audio_device *adev) voice_extn_init(adev); } void voice_update_devices_for_all_voice_usecases(struct audio_device *adev) { struct listnode *node; struct audio_usecase *usecase; list_for_each(node, &adev->usecase_list) { usecase = node_to_item(node, struct audio_usecase, list); if (usecase->type == VOICE_CALL) { ALOGV("%s: updating device for usecase:%s", __func__, use_case_table[usecase->id]); select_devices(adev, usecase->id); } } }
hal/voice.h +1 −0 Original line number Diff line number Diff line Loading @@ -86,4 +86,5 @@ int voice_check_and_set_incall_music_usecase(struct audio_device *adev, struct stream_out *out); int voice_check_and_stop_incall_rec_usecase(struct audio_device *adev, struct stream_in *in); void voice_update_devices_for_all_voice_usecases(struct audio_device *adev); #endif //VOICE_H