/* Note that currently this is an internal only function: it will be exposed to machine drivers after further backporting of ASoC v2 registration APIs.  */
static int snd_soc_register_card(struct snd_soc_card *card)
/* Note that currently this is an internal only function: it will be exposed to machine drivers after further backporting of ASoC v2 registration APIs.  */
static int snd_soc_register_card(struct snd_soc_card *card)
{
	if (!card->name || !card->dev)
		return -EINVAL;
	INIT_LIST_HEAD(&card->list);
	card->instantiated = 0;
	mutex_lock(&client_mutex);
	list_add(&card->list, &card_list);
	snd_soc_instantiate_cards();
	mutex_unlock(&client_mutex);
	dev_dbg(card->dev, "Registered card '%s'\n", card->name);
	return 0;
}