diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2015-08-16 23:56:30 -0600 |
---|---|---|
committer | Linux Build Service Account <lnxbuild@localhost> | 2015-08-16 23:56:30 -0600 |
commit | f24cb8f626d96006822c91ca596fa7c184fb6685 (patch) | |
tree | 493ee28679ebddbbcb3cb747e859dc1984e66852 /hal/voice_extn | |
parent | 4cda53519a4df0d96e3aceb828754b7c5a88bbbc (diff) | |
parent | 495740890441c1ec16623e745f83da06bea3e2c5 (diff) | |
download | hardware_qcom_audio-f24cb8f626d96006822c91ca596fa7c184fb6685.tar.gz hardware_qcom_audio-f24cb8f626d96006822c91ca596fa7c184fb6685.tar.bz2 hardware_qcom_audio-f24cb8f626d96006822c91ca596fa7c184fb6685.zip |
Merge 495740890441c1ec16623e745f83da06bea3e2c5 on remote branch
Change-Id: Ie006885b5cd9774b13cfee8f0a510a36107b0d25
Diffstat (limited to 'hal/voice_extn')
-rw-r--r-- | hal/voice_extn/voice_extn.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/hal/voice_extn/voice_extn.c b/hal/voice_extn/voice_extn.c index 960b46e6..3cf370df 100644 --- a/hal/voice_extn/voice_extn.c +++ b/hal/voice_extn/voice_extn.c @@ -42,6 +42,7 @@ #define AUDIO_PARAMETER_KEY_DEVICE_MUTE "device_mute" #define AUDIO_PARAMETER_KEY_DIRECTION "direction" #define AUDIO_PARAMETER_KEY_IN_CALL "in_call" +#define AUDIO_PARAMETER_KEY_CALL_TYPE "call_type" #define VOICE_EXTN_PARAMETER_VALUE_MAX_LEN 256 @@ -515,6 +516,20 @@ int voice_extn_set_parameters(struct audio_device *adev, } } + err = str_parms_get_str(parms, AUDIO_PARAMETER_KEY_CALL_TYPE, str_value, + sizeof(str_value)); + if (err >= 0) { + str_parms_del(parms, AUDIO_PARAMETER_KEY_CALL_TYPE); + ALOGD("%s: call type is %s",__func__,str_value); + + /* Expected call types are CDMA/GSM/WCDMA/LTE/TDSDMA/WLAN/UNKNOWN */ + if (!strncmp("GSM", str_value, sizeof("GSM"))) { + platform_set_gsm_mode(adev->platform, true); + } else { + platform_set_gsm_mode(adev->platform, false); + } + } + done: ALOGV("%s: exit with code(%d)", __func__, ret); free(kv_pairs); |