aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2015-01-23 15:43:00 +0100
committerSergiu Cozma <lssjbrolli@gmail.com>2015-03-28 11:43:47 +0200
commita64b69fef2c7d8ff811281dd262e3ce6af19d12b (patch)
treeafa3d2ec05bc2c37d6565fd956249dffa2b1ca97
parentae670de4ff0e2633ffdfc076714953e09414c2cd (diff)
audio: Fix ril_set_call_audio_path() to match libsecril-client API.
Change-Id: I52fa79da1cd54114cece05f69c51c390868c930c Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
-rw-r--r--audio/audio_hw.c4
-rw-r--r--audio/ril_interface.c8
-rw-r--r--audio/ril_interface.h18
3 files changed, 23 insertions, 7 deletions
diff --git a/audio/audio_hw.c b/audio/audio_hw.c
index 8607413..6f97a83 100644
--- a/audio/audio_hw.c
+++ b/audio/audio_hw.c
@@ -566,7 +566,9 @@ static void adev_set_call_audio_path(struct audio_device *adev)
}
ALOGV("%s: ril_set_call_audio_path(%d)", __func__, device_type);
- ril_set_call_audio_path(&adev->ril, device_type);
+
+ /* TODO: Figure out which devices need EXTRA_VOLUME_PATH set */
+ ril_set_call_audio_path(&adev->ril, device_type, ORIGINAL_PATH);
}
/* Helper functions */
diff --git a/audio/ril_interface.c b/audio/ril_interface.c
index 69d40a5..ad7448e 100644
--- a/audio/ril_interface.c
+++ b/audio/ril_interface.c
@@ -35,7 +35,7 @@ int (*_ril_connect)(void *);
int (*_ril_is_connected)(void *);
int (*_ril_disconnect)(void *);
int (*_ril_set_call_volume)(void *, enum ril_sound_type, int);
-int (*_ril_set_call_audio_path)(void *, enum ril_audio_path);
+int (*_ril_set_call_audio_path)(void *, enum ril_audio_path, int);
int (*_ril_set_call_clock_sync)(void *, enum ril_clock_state);
int (*_ril_set_mute)(void *, int);
int (*_ril_set_two_mic_control)(void *, enum ril_two_mic_device, enum ril_two_mic_state);
@@ -170,12 +170,14 @@ int ril_set_call_volume(struct ril_handle *ril, enum ril_sound_type sound_type,
(int)(volume * ril->volume_steps_max));
}
-int ril_set_call_audio_path(struct ril_handle *ril, enum ril_audio_path path)
+int ril_set_call_audio_path(struct ril_handle *ril,
+ enum ril_audio_path path,
+ enum ril_extra_volume mode)
{
if (ril_connect_if_required(ril))
return 0;
- return _ril_set_call_audio_path(ril->client, path);
+ return _ril_set_call_audio_path(ril->client, path, mode);
}
int ril_set_call_clock_sync(struct ril_handle *ril, enum ril_clock_state state)
diff --git a/audio/ril_interface.h b/audio/ril_interface.h
index 697d04e..f69ad23 100644
--- a/audio/ril_interface.h
+++ b/audio/ril_interface.h
@@ -47,12 +47,22 @@ enum ril_sound_type {
};
enum ril_audio_path {
- SOUND_AUDIO_PATH_HANDSET,
+ SOUND_AUDIO_PATH_EARPIECE,
SOUND_AUDIO_PATH_HEADSET,
SOUND_AUDIO_PATH_SPEAKER,
SOUND_AUDIO_PATH_BLUETOOTH,
+ SOUND_AUDIO_PATH_STEREO_BT,
+ SOUND_AUDIO_PATH_HEADPHONE,
SOUND_AUDIO_PATH_BLUETOOTH_NO_NR,
- SOUND_AUDIO_PATH_HEADPHONE
+ SOUND_AUDIO_PATH_MIC1,
+ SOUND_AUDIO_PATH_MIC2,
+ SOUND_AUDIO_PATH_BLUETOOTH_WB,
+ SOUND_AUDIO_PATH_BLUETOOTH_WB_NO_NR
+};
+
+enum ril_extra_volume {
+ ORIGINAL_PATH,
+ EXTRA_VOLUME_PATH
};
enum ril_clock_state {
@@ -84,7 +94,9 @@ int ril_open(struct ril_handle *ril);
int ril_close(struct ril_handle *ril);
int ril_set_call_volume(struct ril_handle *ril, enum ril_sound_type sound_type,
float volume);
-int ril_set_call_audio_path(struct ril_handle *ril, enum ril_audio_path path);
+int ril_set_call_audio_path(struct ril_handle *ril,
+ enum ril_audio_path path,
+ enum ril_extra_volume mode);
int ril_set_call_clock_sync(struct ril_handle *ril, enum ril_clock_state state);
int ril_set_mute(struct ril_handle *ril, enum ril_mute_state state);
void ril_register_set_wb_amr_callback(void *function, void *data);