Commit 2bf9d4bb authored by Shawn Guo's avatar Shawn Guo Committed by Mark Brown

ASoC: fsl: remove use of imx-fiq-pcm-audio from imx-ssi

Rather than instantiating imx-fiq-pcm-audio to call imx_pcm_fiq_init(),
imx-ssi can just directly call it to save the use of imx-fiq-pcm-audio.
With this change, imx-ssi becomes not only a cpu DAI but also a platform
device, so updates platform device setup in eukrea-tlv320, phycore-ac97
and wm1133-ev1 accordingly.
Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent 88e89f55
...@@ -80,7 +80,7 @@ static struct snd_soc_dai_link eukrea_tlv320_dai = { ...@@ -80,7 +80,7 @@ static struct snd_soc_dai_link eukrea_tlv320_dai = {
.name = "tlv320aic23", .name = "tlv320aic23",
.stream_name = "TLV320AIC23", .stream_name = "TLV320AIC23",
.codec_dai_name = "tlv320aic23-hifi", .codec_dai_name = "tlv320aic23-hifi",
.platform_name = "imx-fiq-pcm-audio.0", .platform_name = "imx-ssi.0",
.codec_name = "tlv320aic23-codec.0-001a", .codec_name = "tlv320aic23-codec.0-001a",
.cpu_dai_name = "imx-ssi.0", .cpu_dai_name = "imx-ssi.0",
.ops = &eukrea_tlv320_snd_ops, .ops = &eukrea_tlv320_snd_ops,
......
...@@ -595,18 +595,9 @@ static int imx_ssi_probe(struct platform_device *pdev) ...@@ -595,18 +595,9 @@ static int imx_ssi_probe(struct platform_device *pdev)
goto failed_register; goto failed_register;
} }
ssi->soc_platform_pdev_fiq = platform_device_alloc("imx-fiq-pcm-audio", pdev->id); ret = imx_pcm_fiq_init(pdev);
if (!ssi->soc_platform_pdev_fiq) { if (ret)
ret = -ENOMEM; goto failed_pcm_fiq;
goto failed_pdev_fiq_alloc;
}
platform_set_drvdata(ssi->soc_platform_pdev_fiq, ssi);
ret = platform_device_add(ssi->soc_platform_pdev_fiq);
if (ret) {
dev_err(&pdev->dev, "failed to add platform device\n");
goto failed_pdev_fiq_add;
}
ret = imx_pcm_dma_init(pdev); ret = imx_pcm_dma_init(pdev);
if (ret) if (ret)
...@@ -615,10 +606,8 @@ static int imx_ssi_probe(struct platform_device *pdev) ...@@ -615,10 +606,8 @@ static int imx_ssi_probe(struct platform_device *pdev)
return 0; return 0;
failed_pcm_dma: failed_pcm_dma:
platform_device_del(ssi->soc_platform_pdev_fiq); imx_pcm_fiq_exit(pdev);
failed_pdev_fiq_add: failed_pcm_fiq:
platform_device_put(ssi->soc_platform_pdev_fiq);
failed_pdev_fiq_alloc:
snd_soc_unregister_component(&pdev->dev); snd_soc_unregister_component(&pdev->dev);
failed_register: failed_register:
release_mem_region(res->start, resource_size(res)); release_mem_region(res->start, resource_size(res));
...@@ -635,7 +624,7 @@ static int imx_ssi_remove(struct platform_device *pdev) ...@@ -635,7 +624,7 @@ static int imx_ssi_remove(struct platform_device *pdev)
struct imx_ssi *ssi = platform_get_drvdata(pdev); struct imx_ssi *ssi = platform_get_drvdata(pdev);
imx_pcm_dma_exit(pdev); imx_pcm_dma_exit(pdev);
platform_device_unregister(ssi->soc_platform_pdev_fiq); imx_pcm_fiq_exit(pdev);
snd_soc_unregister_component(&pdev->dev); snd_soc_unregister_component(&pdev->dev);
......
...@@ -211,8 +211,6 @@ struct imx_ssi { ...@@ -211,8 +211,6 @@ struct imx_ssi {
struct imx_dma_data filter_data_rx; struct imx_dma_data filter_data_rx;
int enabled; int enabled;
struct platform_device *soc_platform_pdev_fiq;
}; };
#endif /* _IMX_SSI_H */ #endif /* _IMX_SSI_H */
...@@ -33,7 +33,7 @@ static struct snd_soc_dai_link imx_phycore_dai_ac97[] = { ...@@ -33,7 +33,7 @@ static struct snd_soc_dai_link imx_phycore_dai_ac97[] = {
.codec_dai_name = "wm9712-hifi", .codec_dai_name = "wm9712-hifi",
.codec_name = "wm9712-codec", .codec_name = "wm9712-codec",
.cpu_dai_name = "imx-ssi.0", .cpu_dai_name = "imx-ssi.0",
.platform_name = "imx-fiq-pcm-audio.0", .platform_name = "imx-ssi.0",
.ops = &imx_phycore_hifi_ops, .ops = &imx_phycore_hifi_ops,
}, },
}; };
......
...@@ -245,7 +245,7 @@ static struct snd_soc_dai_link wm1133_ev1_dai = { ...@@ -245,7 +245,7 @@ static struct snd_soc_dai_link wm1133_ev1_dai = {
.stream_name = "Audio", .stream_name = "Audio",
.cpu_dai_name = "imx-ssi.0", .cpu_dai_name = "imx-ssi.0",
.codec_dai_name = "wm8350-hifi", .codec_dai_name = "wm8350-hifi",
.platform_name = "imx-fiq-pcm-audio.0", .platform_name = "imx-ssi.0",
.codec_name = "wm8350-codec.0-0x1a", .codec_name = "wm8350-codec.0-0x1a",
.init = wm1133_ev1_init, .init = wm1133_ev1_init,
.ops = &wm1133_ev1_ops, .ops = &wm1133_ev1_ops,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment