int snd_card_free(struct snd_card *card) { int ret = snd_card_disconnect(card);
if (ret) return ret; /* wait, until all devices are ready for the free operation */ wait_event(card->shutdown_sleep, list_empty(&card->files_list)); snd_card_do_free(card);
return 0; }