diff options
Diffstat (limited to 'audio-ril-interface/audio-ril-interface.c')
-rw-r--r-- | audio-ril-interface/audio-ril-interface.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/audio-ril-interface/audio-ril-interface.c b/audio-ril-interface/audio-ril-interface.c index 6170c63..2c0f781 100644 --- a/audio-ril-interface/audio-ril-interface.c +++ b/audio-ril-interface/audio-ril-interface.c @@ -172,6 +172,28 @@ int SetCallAudioPath(void *data, enum ril_audio_path path) return RIL_CLIENT_ERR_SUCCESS; } +int SetMute(void *data, enum ril_mic_mute mute) +{ + struct srs_client *client; + struct srs_snd_mic_mute_data mic_mute_state; + int rc; + + ALOGD("%s(%p, %d)", __func__, data, mute); + + if (data == NULL) + return RIL_CLIENT_ERR_INVAL; + + client = (struct srs_client *) data; + + mic_mute_state.mute = mute; + + rc = srs_client_send(client, SRS_SND_SET_MIC_MUTE, &mic_mute_state, sizeof(mic_mute_state)); + if (rc < 0) + return RIL_CLIENT_ERR_UNKNOWN; + + return RIL_CLIENT_ERR_SUCCESS; +} + int SetCallClockSync(void *data, enum ril_clock_state condition) { struct srs_client *client; |