Home | History | Annotate | Download | only in hal

Lines Matching refs:usecase

286 struct mixer_card *uc_get_mixer_for_card(struct audio_usecase *usecase, int card)
291 list_for_each(node, &usecase->mixer_list) {
292 mixer_card = node_to_item(node, struct mixer_card, uc_list_node[usecase->id]);
407 struct audio_usecase *usecase;
411 usecase = node_to_item(node, struct audio_usecase, adev_list_node);
412 if (usecase->id == uc_id)
413 return usecase;
421 struct audio_usecase *usecase;
425 usecase = node_to_item(node, struct audio_usecase, adev_list_node);
426 if (usecase->type & type)
427 return usecase;
523 struct audio_usecase *usecase;
525 usecase = get_usecase_from_type(adev, PCM_CAPTURE|VOICE_CALL);
526 if (usecase != NULL) {
527 active_input = (struct stream_in *)usecase->stream;
678 int64_t render_latency(audio_usecase_t usecase)
680 (void)usecase;
752 struct audio_usecase *usecase = NULL;
759 ALOGV("%s: usecase(%d)", __func__, uc_id);
764 usecase = get_usecase_from_type(adev, PCM_CAPTURE|VOICE_CALL);
765 if (usecase != NULL) {
766 active_input = (struct stream_in *)usecase->stream;
769 usecase = get_usecase_from_id(adev, uc_id);
770 if (usecase == NULL) {
771 ALOGE("%s: Could not find the usecase(%d)", __func__, uc_id);
774 active_out = (struct stream_out *)usecase->stream;
776 if (usecase->type == VOICE_CALL) {
779 usecase->devices = active_out->devices;
782 * If the voice call is active, use the sound devices of voice call usecase
785 * usecase.
789 if (usecase == NULL) {
790 ALOGE("%s: Could not find the voice call usecase", __func__);
796 if (usecase->type == PCM_PLAYBACK) {
797 usecase->devices = active_out->devices;
804 select_devices(adev, active_input->usecase);
807 } else if (usecase->type == PCM_CAPTURE) {
808 usecase->devices = ((struct stream_in *)usecase->stream)->devices;
821 if (out_snd_device == usecase->out_snd_device &&
822 in_snd_device == usecase->in_snd_device) {
832 if (usecase->out_snd_device != SND_DEVICE_NONE) {
833 disable_snd_device(adev, usecase, usecase->out_snd_device, false);
836 if (usecase->in_snd_device != SND_DEVICE_NONE) {
837 disable_snd_device(adev, usecase, usecase->in_snd_device, false);
842 enable_snd_device(adev, usecase, out_snd_device, false);
846 enable_snd_device(adev, usecase, in_snd_device, false);
849 list_for_each(node, &usecase->mixer_list) {
850 mixer_card = node_to_item(node, struct mixer_card, uc_list_node[usecase->id]);
854 usecase->in_snd_device = in_snd_device;
855 usecase->out_snd_device = out_snd_device;
1282 ALOGV("%s: enter: usecase(%d: %s)", __func__,
1283 in->usecase, use_case_table[in->usecase]);
1284 uc_info = get_usecase_from_id(adev, in->usecase);
1286 ALOGE("%s: Could not find the usecase (%d) in the list",
1287 __func__, in->usecase);
1318 ALOGV("%s: enter: usecase(%d)", __func__, in->usecase);
1322 ALOGE("%s: Could not find PCM device id for the usecase(%d)",
1323 __func__, in->usecase);
1335 uc_info->id = in->usecase;
1354 select_devices(adev, in->usecase);
1474 static int uc_release_pcm_devices(struct audio_usecase *usecase)
1476 struct stream_out *out = (struct stream_out *)usecase->stream;
1486 list_init(&usecase->mixer_list);
1491 static int uc_select_pcm_devices(struct audio_usecase *usecase)
1494 struct stream_out *out = (struct stream_out *)usecase->stream;
1498 audio_devices_t devices = usecase->devices;
1500 list_init(&usecase->mixer_list);
1503 pcm_profile = get_pcm_device(usecase->type, devices);
1508 mixer_card = uc_get_mixer_for_card(usecase, pcm_profile->card);
1511 list_add_tail(&usecase->mixer_list, &mixer_card->uc_list_node[usecase->id]);
1515 ALOGE("usecase type=%d, devices=%d did not find exact match",
1516 usecase->type, devices);
1619 uc_info = get_usecase_from_id(adev, out->usecase);
1621 ALOGE("%s: Could not find the usecase (%d) in the list",
1622 __func__, out->usecase);
1639 uc_info->id = out->usecase;
1649 select_devices(adev, out->usecase);
1658 ALOGV("%s: enter: usecase(%d: %s)", __func__,
1659 out->usecase, use_case_table[out->usecase]);
1672 ALOGV("%s: enter: usecase(%d: %s) devices(%#x) channels(%d)",
1673 __func__, out->usecase, use_case_table[out->usecase], out->devices, out->config.channels);
1698 ALOGE("%s: Could not find the usecase (%d) in the list",
1860 ALOGV("%s: enter: usecase(%d: %s)", __func__,
1861 out->usecase, use_case_table[out->usecase]);
1885 struct audio_usecase *usecase;
1897 ALOGV("%s: enter: usecase(%d: %s) kvpairs: %s out->devices(%d) adev->mode(%d)",
1898 __func__, out->usecase, use_case_table[out->usecase], kvpairs, out->devices, adev->mode);
1908 (out->usecase == USECASE_AUDIO_PLAYBACK)) {
1926 select_devices(adev, out->usecase);
2017 if (out->usecase == USECASE_AUDIO_PLAYBACK_MULTI_CH) {
2261 (render_latency(out->usecase) * out->sample_rate / 1000000LL);
2439 uc_info = get_usecase_from_id(adev, in->usecase);
2441 ALOGE("%s: Could not find the usecase (%d) in the list",
2442 __func__, in->usecase);
2457 ret = select_devices(adev, in->usecase);
2538 if (in->usecase == USECASE_AUDIO_CAPTURE_HOTWORD) {
2607 select_devices(in->dev, in->usecase);
2711 out->usecase = USECASE_AUDIO_PLAYBACK_DEEP_BUFFER;
2716 out->usecase = USECASE_AUDIO_PLAYBACK;
2730 /* Check if this usecase is already existing */
2732 if (get_usecase_from_id(adev, out->usecase) != NULL) {
2733 ALOGE("%s: Usecase (%d) is already present", __func__, out->usecase);
3063 in->usecase = USECASE_AUDIO_CAPTURE_HOTWORD;
3065 in->usecase = USECASE_AUDIO_CAPTURE;