18 Jul
2015
18 Jul
'15
11:16 a.m.
On Sat, Jul 18, 2015 at 01:08:43PM +0800, Xing Zheng wrote:
- ret = devm_snd_soc_register_card(&pdev->dev, card);
- if (ret) {
dev_err(&pdev->dev,
"Soc register card failed %d\n", ret);
return ret;
- }
- return ret;
+}
+static int snd_rk_mc_remove(struct platform_device *pdev) +{
- struct snd_soc_card *soc_card = platform_get_drvdata(pdev);
- snd_soc_unregister_card(soc_card);
The point with using devm_snd_soc_register_card() is that you don't need to manually unregister the card - devm_ ensures that the card is freed.