diff options
author | Dheeraj CVR <cvr.dheeraj@gmail.com> | 2015-06-17 00:45:04 +0200 |
---|---|---|
committer | Ziyan <jaraidaniel@gmail.com> | 2015-06-18 14:21:43 +0200 |
commit | b48cbe2963aca9b2e9bcb16ba4942dc4ae58ed29 (patch) | |
tree | 47213d40fffd97fefa4e04b8bd4d73e7c22650a2 /audio/ril_interface.c | |
parent | 9d0a8bcdf5675ebd95597dabca2014da76a3705e (diff) | |
download | device_samsung_tuna-b48cbe2963aca9b2e9bcb16ba4942dc4ae58ed29.zip device_samsung_tuna-b48cbe2963aca9b2e9bcb16ba4942dc4ae58ed29.tar.gz device_samsung_tuna-b48cbe2963aca9b2e9bcb16ba4942dc4ae58ed29.tar.bz2 |
audio: forward call mute to RIL client interface
Diffstat (limited to 'audio/ril_interface.c')
-rw-r--r-- | audio/ril_interface.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/audio/ril_interface.c b/audio/ril_interface.c index 3d7ce06..0f9cb30 100644 --- a/audio/ril_interface.c +++ b/audio/ril_interface.c @@ -38,6 +38,7 @@ int (*_ril_set_call_volume)(void *, enum ril_sound_type, int); int (*_ril_set_call_audio_path)(void *, enum ril_audio_path); int (*_ril_register_unsolicited_handler)(void *, int, void *); int (*_ril_get_wb_amr)(void *, void *); +int (*_ril_set_mic_mute)(void *, enum ril_mic_mute); /* Audio WB AMR callback */ void (*_audio_set_wb_amr_callback)(void *, int); @@ -104,6 +105,7 @@ int ril_open(struct ril_handle *ril) _ril_disconnect = dlsym(ril->handle, "Disconnect_RILD"); _ril_set_call_volume = dlsym(ril->handle, "SetCallVolume"); _ril_set_call_audio_path = dlsym(ril->handle, "SetCallAudioPath"); + _ril_set_mic_mute = dlsym(ril->handle, "SetMute"); _ril_register_unsolicited_handler = dlsym(ril->handle, "RegisterUnsolicitedHandler"); /* since this function is not supported in all RILs, don't require it */ @@ -111,7 +113,8 @@ int ril_open(struct ril_handle *ril) if (!_ril_open_client || !_ril_close_client || !_ril_connect || !_ril_is_connected || !_ril_disconnect || !_ril_set_call_volume || - !_ril_set_call_audio_path || !_ril_register_unsolicited_handler) { + !_ril_set_call_audio_path || !_ril_register_unsolicited_handler || + !_ril_set_mic_mute) { ALOGE("Cannot get symbols from '%s'", RIL_CLIENT_LIBPATH); dlclose(ril->handle); return -1; @@ -170,3 +173,11 @@ int ril_set_call_audio_path(struct ril_handle *ril, enum ril_audio_path path) return _ril_set_call_audio_path(ril->client, path); } + +int ril_set_mic_mute(struct ril_handle *ril, enum ril_mic_mute state) +{ + if (ril_connect_if_required(ril)) + return 0; + + return _ril_set_mic_mute(ril->client, state); +} |