ASoC: core - Free platform DAPM context at platform removal.

Fix platform removal by freeing the platform DAPM resources and remove
it from the DAPM list.

Signed-off-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
Liam Girdwood 2012-01-16 15:25:37 +00:00 committed by Mark Brown
parent e7c80e2a8b
commit 675c496ba4

View file

@ -907,6 +907,10 @@ static void soc_remove_dai_link(struct snd_soc_card *card, int num, int order)
if (err < 0)
printk(KERN_ERR "asoc: failed to remove %s\n", platform->name);
}
/* Make sure all DAPM widgets are freed */
snd_soc_dapm_free(&platform->dapm);
platform->probed = 0;
list_del(&platform->card_list);
module_put(platform->dev->driver->owner);