Skip to content

Commit

Permalink
ASoC: Add soc_remove_dai_links
Browse files Browse the repository at this point in the history
card->num_rtd should be 0 after soc_romve_dai_link

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
  • Loading branch information
Kuninori Morimoto authored and Mark Brown committed Apr 11, 2011
1 parent b8eeee6 commit 0671fd8
Showing 1 changed file with 12 additions and 4 deletions.
16 changes: 12 additions & 4 deletions sound/soc/soc-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1453,6 +1453,16 @@ static void soc_remove_dai_link(struct snd_soc_card *card, int num)
}
}

static void soc_remove_dai_links(struct snd_soc_card *card)
{
int i;

for (i = 0; i < card->num_rtd; i++)
soc_remove_dai_link(card, i);

card->num_rtd = 0;
}

static void soc_set_name_prefix(struct snd_soc_card *card,
struct snd_soc_codec *codec)
{
Expand Down Expand Up @@ -1960,8 +1970,7 @@ static void snd_soc_instantiate_card(struct snd_soc_card *card)
soc_remove_aux_dev(card, i);

probe_dai_err:
for (i = 0; i < card->num_links; i++)
soc_remove_dai_link(card, i);
soc_remove_dai_links(card);

card_probe_error:
if (card->remove)
Expand Down Expand Up @@ -2023,8 +2032,7 @@ static int soc_cleanup_card_resources(struct snd_soc_card *card)
soc_remove_aux_dev(card, i);

/* remove and free each DAI */
for (i = 0; i < card->num_rtd; i++)
soc_remove_dai_link(card, i);
soc_remove_dai_links(card);

soc_cleanup_card_debugfs(card);

Expand Down

0 comments on commit 0671fd8

Please sign in to comment.