19 Jul
2015
19 Jul
'15
10:42 a.m.
On 2015年07月18日 17:16, Mark Brown wrote:
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.
Got it. Thank you.