Merge "hal: disable volume boost if device is not supported during call"

This commit is contained in:
qctecmdr 2020-10-22 11:28:49 -07:00 committed by Gerrit - the friendly Code Review server
commit 82722427ce
3 changed files with 20 additions and 0 deletions

View File

@ -4975,6 +4975,7 @@ int route_output_stream(struct stream_out *out,
ret = voice_start_call(adev); ret = voice_start_call(adev);
} }
} else { } else {
platform_is_volume_boost_supported_device(adev->platform, &new_devices);
adev->current_call_output = out; adev->current_call_output = out;
voice_update_devices_for_all_voice_usecases(adev); voice_update_devices_for_all_voice_usecases(adev);
} }

View File

@ -5575,6 +5575,24 @@ int platform_switch_voice_call_enable_device_config(void *platform,
return ret; return ret;
} }
void platform_is_volume_boost_supported_device(void *platform,
struct listnode *devices)
{
struct platform_data *my_data = (struct platform_data *)platform;
if (my_data->voice_feature_set &&
!(compare_device_type(devices,
AUDIO_DEVICE_OUT_SPEAKER)) &&
!(compare_device_type(devices,
AUDIO_DEVICE_OUT_EARPIECE)) &&
!(my_data->adev->voice.tty_mode == TTY_MODE_HCO)) {
if(!my_data->acdb_reload_vocvoltable(VOICE_FEATURE_SET_DEFAULT)) {
my_data->voice_feature_set = 0;
ALOGD("%s: Unsupported volume boost device", __func__);
}
}
}
int platform_switch_voice_call_device_post(void *platform, int platform_switch_voice_call_device_post(void *platform,
snd_device_t out_snd_device, snd_device_t out_snd_device,
snd_device_t in_snd_device) snd_device_t in_snd_device)

View File

@ -433,4 +433,5 @@ int platform_set_power_mode_on_device(struct audio_device* adev, snd_device_t sn
int platform_set_island_cfg_on_device(struct audio_device* adev, snd_device_t snd_device, int platform_set_island_cfg_on_device(struct audio_device* adev, snd_device_t snd_device,
bool enable); bool enable);
void platform_reset_island_power_status(void *platform, snd_device_t snd_device); void platform_reset_island_power_status(void *platform, snd_device_t snd_device);
void platform_is_volume_boost_supported_device(void *platform, struct listnode *devices);
#endif // AUDIO_PLATFORM_API_H #endif // AUDIO_PLATFORM_API_H