Loading hal/audio_hw.c +2 −0 Original line number Diff line number Diff line Loading @@ -5676,6 +5676,8 @@ static int adev_open(const hw_module_t *module, const char *name, } } adev->mic_break_enabled = property_get_bool("vendor.audio.mic_break", false); // commented as full set of app type cfg is sent from platform // audio_extn_utils_send_default_app_type_cfg(adev->platform, adev->mixer); audio_device_ref_count++; Loading hal/audio_hw.h +1 −0 Original line number Diff line number Diff line Loading @@ -328,6 +328,7 @@ struct audio_device { bool mic_muted; bool enable_voicerx; bool enable_hfp; bool mic_break_enabled; int snd_card; void *platform; Loading hal/msm8916/platform.c +5 −0 Original line number Diff line number Diff line Loading @@ -1621,6 +1621,11 @@ int platform_stop_voice_call(void *platform __unused, uint32_t vsid __unused) return 0; } int platform_set_mic_break_det(void *platform __unused, bool enable __unused) { return 0; } int platform_get_sample_rate(void *platform __unused, uint32_t *rate __unused) { return 0; Loading hal/msm8974/platform.c +20 −0 Original line number Diff line number Diff line Loading @@ -2311,6 +2311,26 @@ int platform_stop_voice_call(void *platform, uint32_t vsid) return ret; } int platform_set_mic_break_det(void *platform, bool enable) { int ret = 0; struct platform_data *my_data = (struct platform_data *)platform; struct audio_device *adev = my_data->adev; const char *mixer_ctl_name = "Voice Mic Break Enable"; struct mixer_ctl *ctl = mixer_get_ctl_by_name(adev->mixer, mixer_ctl_name); if (!ctl) { ALOGE("%s: Could not get ctl for mixer cmd - %s", __func__, mixer_ctl_name); return -EINVAL; } ret = mixer_ctl_set_value(ctl, 0, enable); if(ret) ALOGE("%s: Failed to set mixer ctl: %s", __func__, mixer_ctl_name); return ret; } int platform_get_sample_rate(void *platform, uint32_t *rate) { struct platform_data *my_data = (struct platform_data *)platform; Loading hal/platform_api.h +1 −0 Original line number Diff line number Diff line Loading @@ -73,6 +73,7 @@ int platform_switch_voice_call_usecase_route_post(void *platform, snd_device_t in_snd_device); int platform_start_voice_call(void *platform, uint32_t vsid); int platform_stop_voice_call(void *platform, uint32_t vsid); int platform_set_mic_break_det(void *platform, bool enable); int platform_set_voice_volume(void *platform, int volume); void platform_set_speaker_gain_in_combo(struct audio_device *adev, snd_device_t snd_device, Loading Loading
hal/audio_hw.c +2 −0 Original line number Diff line number Diff line Loading @@ -5676,6 +5676,8 @@ static int adev_open(const hw_module_t *module, const char *name, } } adev->mic_break_enabled = property_get_bool("vendor.audio.mic_break", false); // commented as full set of app type cfg is sent from platform // audio_extn_utils_send_default_app_type_cfg(adev->platform, adev->mixer); audio_device_ref_count++; Loading
hal/audio_hw.h +1 −0 Original line number Diff line number Diff line Loading @@ -328,6 +328,7 @@ struct audio_device { bool mic_muted; bool enable_voicerx; bool enable_hfp; bool mic_break_enabled; int snd_card; void *platform; Loading
hal/msm8916/platform.c +5 −0 Original line number Diff line number Diff line Loading @@ -1621,6 +1621,11 @@ int platform_stop_voice_call(void *platform __unused, uint32_t vsid __unused) return 0; } int platform_set_mic_break_det(void *platform __unused, bool enable __unused) { return 0; } int platform_get_sample_rate(void *platform __unused, uint32_t *rate __unused) { return 0; Loading
hal/msm8974/platform.c +20 −0 Original line number Diff line number Diff line Loading @@ -2311,6 +2311,26 @@ int platform_stop_voice_call(void *platform, uint32_t vsid) return ret; } int platform_set_mic_break_det(void *platform, bool enable) { int ret = 0; struct platform_data *my_data = (struct platform_data *)platform; struct audio_device *adev = my_data->adev; const char *mixer_ctl_name = "Voice Mic Break Enable"; struct mixer_ctl *ctl = mixer_get_ctl_by_name(adev->mixer, mixer_ctl_name); if (!ctl) { ALOGE("%s: Could not get ctl for mixer cmd - %s", __func__, mixer_ctl_name); return -EINVAL; } ret = mixer_ctl_set_value(ctl, 0, enable); if(ret) ALOGE("%s: Failed to set mixer ctl: %s", __func__, mixer_ctl_name); return ret; } int platform_get_sample_rate(void *platform, uint32_t *rate) { struct platform_data *my_data = (struct platform_data *)platform; Loading
hal/platform_api.h +1 −0 Original line number Diff line number Diff line Loading @@ -73,6 +73,7 @@ int platform_switch_voice_call_usecase_route_post(void *platform, snd_device_t in_snd_device); int platform_start_voice_call(void *platform, uint32_t vsid); int platform_stop_voice_call(void *platform, uint32_t vsid); int platform_set_mic_break_det(void *platform, bool enable); int platform_set_voice_volume(void *platform, int volume); void platform_set_speaker_gain_in_combo(struct audio_device *adev, snd_device_t snd_device, Loading