2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-23 12:43:55 +08:00

ASoC: switch over to use snd_soc_register_component() on davinci i2s

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
Kuninori Morimoto 2013-03-21 03:30:54 -07:00 committed by Mark Brown
parent a1422b8cb4
commit bfcb921caf

View File

@ -645,6 +645,10 @@ static struct snd_soc_dai_driver davinci_i2s_dai = {
}; };
static const struct snd_soc_component_driver davinci_i2s_component = {
.name = "davinci-i2s",
};
static int davinci_i2s_probe(struct platform_device *pdev) static int davinci_i2s_probe(struct platform_device *pdev)
{ {
struct snd_platform_data *pdata = pdev->dev.platform_data; struct snd_platform_data *pdata = pdev->dev.platform_data;
@ -727,20 +731,21 @@ static int davinci_i2s_probe(struct platform_device *pdev)
dev_set_drvdata(&pdev->dev, dev); dev_set_drvdata(&pdev->dev, dev);
ret = snd_soc_register_dai(&pdev->dev, &davinci_i2s_dai); ret = snd_soc_register_component(&pdev->dev, &davinci_i2s_component,
&davinci_i2s_dai, 1);
if (ret != 0) if (ret != 0)
goto err_release_clk; goto err_release_clk;
ret = davinci_soc_platform_register(&pdev->dev); ret = davinci_soc_platform_register(&pdev->dev);
if (ret) { if (ret) {
dev_err(&pdev->dev, "register PCM failed: %d\n", ret); dev_err(&pdev->dev, "register PCM failed: %d\n", ret);
goto err_unregister_dai; goto err_unregister_component;
} }
return 0; return 0;
err_unregister_dai: err_unregister_component:
snd_soc_unregister_dai(&pdev->dev); snd_soc_unregister_component(&pdev->dev);
err_release_clk: err_release_clk:
clk_disable(dev->clk); clk_disable(dev->clk);
clk_put(dev->clk); clk_put(dev->clk);
@ -751,7 +756,7 @@ static int davinci_i2s_remove(struct platform_device *pdev)
{ {
struct davinci_mcbsp_dev *dev = dev_get_drvdata(&pdev->dev); struct davinci_mcbsp_dev *dev = dev_get_drvdata(&pdev->dev);
snd_soc_unregister_dai(&pdev->dev); snd_soc_unregister_component(&pdev->dev);
davinci_soc_platform_unregister(&pdev->dev); davinci_soc_platform_unregister(&pdev->dev);
clk_disable(dev->clk); clk_disable(dev->clk);