Lines Matching refs:adpt
164 struct sound_adapter *adpt = iface->priv;
167 list_for_each_entry(channel, &adpt->dev_list, list) {
487 static void release_adapter(struct sound_adapter *adpt)
491 list_for_each_entry_safe(channel, tmp, &adpt->dev_list, list) {
495 if (adpt->card)
496 snd_card_free(adpt->card);
497 list_del(&adpt->list);
498 kfree(adpt);
518 struct sound_adapter *adpt;
537 list_for_each_entry(adpt, &adpt_list, list) {
538 if (adpt->iface != iface)
540 if (adpt->registered)
542 adpt->pcm_dev_idx++;
545 adpt = kzalloc(sizeof(*adpt), GFP_KERNEL);
546 if (!adpt)
549 adpt->iface = iface;
550 INIT_LIST_HEAD(&adpt->dev_list);
551 iface->priv = adpt;
552 list_add_tail(&adpt->list, &adpt_list);
554 sizeof(*channel), &adpt->card);
557 snprintf(adpt->card->driver, sizeof(adpt->card->driver),
559 snprintf(adpt->card->shortname, sizeof(adpt->card->shortname),
561 snprintf(adpt->card->longname, sizeof(adpt->card->longname),
562 "%s at %s", adpt->card->shortname, iface->description);
582 channel->card = adpt->card;
587 list_add_tail(&channel->list, &adpt->dev_list);
594 ret = snd_pcm_new(adpt->card, device_name, adpt->pcm_dev_idx,
607 release_adapter(adpt);
614 struct sound_adapter *adpt;
616 list_for_each_entry(adpt, &adpt_list, list) {
617 if (!adpt->registered)
622 ret = snd_card_register(adpt->card);
624 release_adapter(adpt);
627 adpt->registered = true;
644 struct sound_adapter *adpt = iface->priv;
653 if (list_empty(&adpt->dev_list))
654 release_adapter(adpt);