Lines Matching refs:uc_mgr
62 struct ctl_list *uc_mgr_get_master_ctl(snd_use_case_mgr_t *uc_mgr)
67 list_for_each(pos, &uc_mgr->ctl_list) {
80 struct ctl_list *uc_mgr_get_ctl_by_card(snd_use_case_mgr_t *uc_mgr, int card)
87 err = uc_mgr_open_ctl(uc_mgr, &ctl_list, cname, 1);
93 struct ctl_list *uc_mgr_get_ctl_by_name(snd_use_case_mgr_t *uc_mgr, const char *name, int idx)
101 list_for_each(pos, &uc_mgr->ctl_list) {
119 ctl_list = uc_mgr_get_ctl_by_card(uc_mgr, card);
135 snd_ctl_t *uc_mgr_get_ctl(snd_use_case_mgr_t *uc_mgr)
139 ctl_list = uc_mgr_get_master_ctl(uc_mgr);
159 void uc_mgr_free_ctl_list(snd_use_case_mgr_t *uc_mgr)
164 list_for_each_safe(pos, npos, &uc_mgr->ctl_list) {
197 static int uc_mgr_ctl_add(snd_use_case_mgr_t *uc_mgr,
247 list_add_tail(&(*ctl_list)->list, &uc_mgr->ctl_list);
258 int uc_mgr_open_ctl(snd_use_case_mgr_t *uc_mgr,
277 list_for_each(pos1, &uc_mgr->ctl_list) {
307 list_for_each(pos1, &uc_mgr->ctl_list) {
313 err = uc_mgr_ctl_add(uc_mgr, &ctl_list, ctl, card, info, device + ucm_offset, slave);
324 err = uc_mgr_ctl_add(uc_mgr, &ctl_list, ctl, -1, info, device + ucm_offset, slave);
666 const char *uc_mgr_get_variable(snd_use_case_mgr_t *uc_mgr, const char *name)
671 list_for_each(pos, &uc_mgr->variable_list) {
679 int uc_mgr_set_variable(snd_use_case_mgr_t *uc_mgr, const char *name,
686 list_for_each(pos, &uc_mgr->variable_list) {
712 list_add_tail(&curr->list, &uc_mgr->variable_list);
716 int uc_mgr_delete_variable(snd_use_case_mgr_t *uc_mgr, const char *name)
721 list_for_each(pos, &uc_mgr->variable_list) {
732 void uc_mgr_free_verb(snd_use_case_mgr_t *uc_mgr)
737 if (uc_mgr->local_config) {
738 snd_config_delete(uc_mgr->local_config);
739 uc_mgr->local_config = NULL;
741 if (uc_mgr->macros) {
742 snd_config_delete(uc_mgr->macros);
743 uc_mgr->macros = NULL;
745 list_for_each_safe(pos, npos, &uc_mgr->verb_list) {
761 uc_mgr_free_sequence(&uc_mgr->fixedboot_list);
762 uc_mgr_free_sequence(&uc_mgr->boot_list);
763 uc_mgr_free_sequence(&uc_mgr->default_list);
764 uc_mgr_free_value(&uc_mgr->value_list);
765 uc_mgr_free_value(&uc_mgr->variable_list);
766 free(uc_mgr->comment);
767 free(uc_mgr->conf_dir_name);
768 free(uc_mgr->conf_file_name);
769 uc_mgr->comment = NULL;
770 uc_mgr->conf_dir_name = NULL;
771 uc_mgr->conf_file_name = NULL;
772 uc_mgr->active_verb = NULL;
773 INIT_LIST_HEAD(&uc_mgr->active_devices);
774 INIT_LIST_HEAD(&uc_mgr->active_modifiers);
777 void uc_mgr_free(snd_use_case_mgr_t *uc_mgr)
779 uc_mgr_free_verb(uc_mgr);
780 uc_mgr_free_ctl_list(uc_mgr);
781 free(uc_mgr->card_name);
782 free(uc_mgr);
796 snd_use_case_mgr_t *uc_mgr;
799 uc_mgr = list_entry(pos, snd_use_case_mgr_t, cards_list);
800 if (uc_mgr->ucm_card_number == card_number)
801 return uc_mgr;
806 int uc_mgr_card_open(snd_use_case_mgr_t *uc_mgr)
823 uc_mgr->ucm_card_number = ucm_card_assign;
824 list_add(&uc_mgr->cards_list, &ucm_cards);
829 void uc_mgr_card_close(snd_use_case_mgr_t *uc_mgr)
832 list_del(&uc_mgr->cards_list);
849 snd_use_case_mgr_t *uc_mgr;
861 uc_mgr = uc_mgr_card_find(card_num);
863 if (uc_mgr_has_local_config(uc_mgr)) {
864 config = uc_mgr->local_config;