hal: fix routing issue for voip use case

During device switch, all the use cases on a shared backend will
be derouted before disabling the current device and rerouted after
enabling the new sound device. Rerouting of voip use cases
was not taken care properly which is fixed now.

Change-Id: I394c0d34fe36d42ce615414ea0524a58c10a5f79
This commit is contained in:
Narsinga Rao Chella 2015-01-28 15:23:34 -08:00
parent ca4688b303
commit e7f33c1d2e
1 changed files with 3 additions and 4 deletions

View File

@ -326,8 +326,7 @@ static int enable_audio_route_for_voice_usecases(struct audio_device *adev,
specified usecase to new snd devices */
list_for_each(node, &adev->usecase_list) {
usecase = node_to_item(node, struct audio_usecase, list);
if ((usecase->type == VOICE_CALL || usecase->type == VOIP_CALL) &&
(usecase != uc_info))
if ((usecase->type == VOICE_CALL) && (usecase != uc_info))
enable_audio_route(adev, usecase);
}
return 0;
@ -597,7 +596,7 @@ static void check_usecases_codec_backend(struct audio_device *adev,
/* Update the out_snd_device only before enabling the audio route */
if (switch_device[usecase->id] ) {
usecase->out_snd_device = snd_device;
if (usecase->type != VOICE_CALL && usecase->type != VOIP_CALL)
if (usecase->type != VOICE_CALL)
enable_audio_route(adev, usecase);
}
}
@ -667,7 +666,7 @@ static void check_and_route_capture_usecases(struct audio_device *adev,
/* Update the in_snd_device only before enabling the audio route */
if (switch_device[usecase->id] ) {
usecase->in_snd_device = snd_device;
if (usecase->type != VOICE_CALL && usecase->type != VOIP_CALL)
if (usecase->type != VOICE_CALL)
enable_audio_route(adev, usecase);
}
}