Lines Matching refs:ucm
84 static pa_alsa_jack* ucm_get_jack(pa_alsa_ucm_config *ucm, pa_alsa_ucm_device *device);
91 static void ucm_port_data_init(pa_alsa_ucm_port_data *port, pa_alsa_ucm_config *ucm, pa_device_port…
758 int pa_alsa_ucm_query_profiles(pa_alsa_ucm_config *ucm, int card_index) { in pa_alsa_ucm_query_profiles() argument
765 err = snd_use_case_mgr_open(&ucm->ucm_mgr, card_name); in pa_alsa_ucm_query_profiles()
776 err = snd_use_case_mgr_open(&ucm->ucm_mgr, card_name); in pa_alsa_ucm_query_profiles()
784 err = snd_use_case_get(ucm->ucm_mgr, "=Linked", &value); in pa_alsa_ucm_query_profiles()
798 num_verbs = snd_use_case_verb_list(ucm->ucm_mgr, &verb_list); in pa_alsa_ucm_query_profiles()
810 err = pa_alsa_ucm_get_verb(ucm->ucm_mgr, verb_list[i], verb_list[i+1], &verb); in pa_alsa_ucm_query_profiles()
816 PA_LLIST_PREPEND(pa_alsa_ucm_verb, ucm->verbs, verb); in pa_alsa_ucm_query_profiles()
819 if (!ucm->verbs) { in pa_alsa_ucm_query_profiles()
828 snd_use_case_mgr_close(ucm->ucm_mgr); in pa_alsa_ucm_query_profiles()
829 ucm->ucm_mgr = NULL; in pa_alsa_ucm_query_profiles()
1026 jack = ucm_get_jack(context->ucm, dev); in ucm_add_port_combination()
1047 jack2 = ucm_get_jack(context->ucm, dev); in ucm_add_port_combination()
1086 ucm_port_data_init(data, context->ucm, port, pdevices, num); in ucm_add_port_combination()
1323 probe_volumes(*p, is_sink, pcm_handle, context->ucm->mixers, ignore_dB); in pa_alsa_ucm_add_ports()
1349 int pa_alsa_ucm_set_profile(pa_alsa_ucm_config *ucm, pa_card *card, const char *new_profile, const … in pa_alsa_ucm_set_profile() argument
1368 if ((snd_use_case_set(ucm->ucm_mgr, "_verb", profile)) < 0) { in pa_alsa_ucm_set_profile()
1374 ucm->active_verb = NULL; in pa_alsa_ucm_set_profile()
1375 PA_LLIST_FOREACH(verb, ucm->verbs) { in pa_alsa_ucm_set_profile()
1379 ucm->active_verb = verb; in pa_alsa_ucm_set_profile()
1396 pa_alsa_ucm_config *ucm; in pa_alsa_ucm_set_port() local
1402 pa_assert(context && context->ucm); in pa_alsa_ucm_set_port()
1404 ucm = context->ucm; in pa_alsa_ucm_set_port()
1405 pa_assert(ucm->ucm_mgr); in pa_alsa_ucm_set_port()
1417 if (snd_use_case_set(ucm->ucm_mgr, "_disdev", dev_name) > 0) { in pa_alsa_ucm_set_port()
1427 if (snd_use_case_set(ucm->ucm_mgr, "_enadev", enable_devs[i]) < 0) { in pa_alsa_ucm_set_port()
1542 pa_alsa_ucm_config *ucm, in ucm_create_mapping_direction() argument
1572 m->ucm_context.ucm = ucm; in ucm_create_mapping_direction()
1599 pa_alsa_ucm_config *ucm, in ucm_create_mapping_for_modifier() argument
1625 m->ucm_context.ucm = ucm; in ucm_create_mapping_for_modifier()
1644 pa_alsa_ucm_config *ucm, in ucm_create_mapping() argument
1661 ret = ucm_create_mapping_direction(ucm, ps, p, device, verb_name, device_name, sink, true); in ucm_create_mapping()
1663 … ret = ucm_create_mapping_direction(ucm, ps, p, device, verb_name, device_name, source, false); in ucm_create_mapping()
1668 static pa_alsa_jack* ucm_get_jack(pa_alsa_ucm_config *ucm, pa_alsa_ucm_device *device) { in ucm_get_jack() argument
1675 pa_assert(ucm); in ucm_get_jack()
1711 PA_LLIST_FOREACH(j, ucm->jacks) in ucm_get_jack()
1723 PA_LLIST_PREPEND(pa_alsa_jack, ucm->jacks, j); in ucm_get_jack()
1732 pa_alsa_ucm_config *ucm, in ucm_create_profile() argument
1793 ucm_create_mapping(ucm, ps, p, dev, verb_name, name, sink, source); in ucm_create_profile()
1795 jack = ucm_get_jack(ucm, dev); in ucm_create_profile()
1817 PA_LLIST_FOREACH(verb2, ucm->verbs) { in ucm_create_profile()
1844 ucm_create_mapping_for_modifier(ucm, ps, p, mod, verb_name, name, sink, true); in ucm_create_profile()
1846 ucm_create_mapping_for_modifier(ucm, ps, p, mod, verb_name, name, source, false); in ucm_create_profile()
1881 static snd_pcm_t* mapping_open_pcm(pa_alsa_ucm_config *ucm, pa_alsa_mapping *m, int mode) { in mapping_open_pcm() argument
1883 pa_sample_spec try_ss = ucm->core->default_sample_spec; in mapping_open_pcm()
1895 pa_usec_to_bytes(ucm->core->default_fragment_size_msec * PA_USEC_PER_MSEC, &try_ss) / in mapping_open_pcm()
1897 try_buffer_size = ucm->core->default_n_fragments * try_period_size; in mapping_open_pcm()
1962 static void ucm_probe_profile_set(pa_alsa_ucm_config *ucm, pa_alsa_profile_set *ps) { in ucm_probe_profile_set() argument
1972 if ((snd_use_case_set(ucm->ucm_mgr, "_verb", p->name)) < 0) { in ucm_probe_profile_set()
1985 m->output_pcm = mapping_open_pcm(ucm, m, SND_PCM_STREAM_PLAYBACK); in ucm_probe_profile_set()
2000 m->input_pcm = mapping_open_pcm(ucm, m, SND_PCM_STREAM_CAPTURE); in ucm_probe_profile_set()
2017 ucm_mapping_jack_probe(m, ucm->mixers); in ucm_probe_profile_set()
2021 ucm_mapping_jack_probe(m, ucm->mixers); in ucm_probe_profile_set()
2027 snd_use_case_set(ucm->ucm_mgr, "_verb", SND_USE_CASE_VERB_INACTIVE); in ucm_probe_profile_set()
2032 pa_alsa_profile_set* pa_alsa_ucm_add_profile_set(pa_alsa_ucm_config *ucm, pa_channel_map *default_c… in pa_alsa_ucm_add_profile_set() argument
2042 PA_LLIST_FOREACH(verb, ucm->verbs) { in pa_alsa_ucm_add_profile_set()
2053 ucm_create_profile(ucm, ps, verb, verb_name, verb_desc); in pa_alsa_ucm_add_profile_set()
2056 ucm_probe_profile_set(ucm, ps); in pa_alsa_ucm_add_profile_set()
2123 void pa_alsa_ucm_free(pa_alsa_ucm_config *ucm) { in pa_alsa_ucm_free() argument
2127 PA_LLIST_FOREACH_SAFE(vi, vn, ucm->verbs) { in pa_alsa_ucm_free()
2128 PA_LLIST_REMOVE(pa_alsa_ucm_verb, ucm->verbs, vi); in pa_alsa_ucm_free()
2131 PA_LLIST_FOREACH_SAFE(ji, jn, ucm->jacks) { in pa_alsa_ucm_free()
2132 PA_LLIST_REMOVE(pa_alsa_jack, ucm->jacks, ji); in pa_alsa_ucm_free()
2135 if (ucm->ucm_mgr) { in pa_alsa_ucm_free()
2136 snd_use_case_mgr_close(ucm->ucm_mgr); in pa_alsa_ucm_free()
2137 ucm->ucm_mgr = NULL; in pa_alsa_ucm_free()
2171 void pa_alsa_ucm_roled_stream_begin(pa_alsa_ucm_config *ucm, const char *role, pa_direction_t dir) { in pa_alsa_ucm_roled_stream_begin() argument
2174 if (!ucm->active_verb) in pa_alsa_ucm_roled_stream_begin()
2177 PA_LLIST_FOREACH(mod, ucm->active_verb->modifiers) { in pa_alsa_ucm_roled_stream_begin()
2183 if (snd_use_case_set(ucm->ucm_mgr, "_enamod", mod_name) < 0) { in pa_alsa_ucm_roled_stream_begin()
2195 void pa_alsa_ucm_roled_stream_end(pa_alsa_ucm_config *ucm, const char *role, pa_direction_t dir) { in pa_alsa_ucm_roled_stream_end() argument
2198 if (!ucm->active_verb) in pa_alsa_ucm_roled_stream_end()
2201 PA_LLIST_FOREACH(mod, ucm->active_verb->modifiers) { in pa_alsa_ucm_roled_stream_end()
2209 if (snd_use_case_set(ucm->ucm_mgr, "_dismod", mod_name) < 0) { in pa_alsa_ucm_roled_stream_end()
2281 static void ucm_port_data_init(pa_alsa_ucm_port_data *port, pa_alsa_ucm_config *ucm, pa_device_port… in ucm_port_data_init() argument
2285 pa_assert(ucm); in ucm_port_data_init()
2289 port->ucm = ucm; in ucm_port_data_init()
2344 int pa_alsa_ucm_query_profiles(pa_alsa_ucm_config *ucm, int card_index) { in pa_alsa_ucm_query_profiles() argument
2349 pa_alsa_profile_set* pa_alsa_ucm_add_profile_set(pa_alsa_ucm_config *ucm, pa_channel_map *default_c… in pa_alsa_ucm_add_profile_set() argument
2353 int pa_alsa_ucm_set_profile(pa_alsa_ucm_config *ucm, pa_card *card, const char *new_profile, const … in pa_alsa_ucm_set_profile() argument
2384 void pa_alsa_ucm_free(pa_alsa_ucm_config *ucm) { in pa_alsa_ucm_free() argument
2390 void pa_alsa_ucm_roled_stream_begin(pa_alsa_ucm_config *ucm, const char *role, pa_direction_t dir) { in pa_alsa_ucm_roled_stream_begin() argument
2393 void pa_alsa_ucm_roled_stream_end(pa_alsa_ucm_config *ucm, const char *role, pa_direction_t dir) { in pa_alsa_ucm_roled_stream_end() argument