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: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
Родитель
88e89f5548
Коммит
2bf9d4bbd0
|
@ -80,7 +80,7 @@ static struct snd_soc_dai_link eukrea_tlv320_dai = {
|
|||
.name = "tlv320aic23",
|
||||
.stream_name = "TLV320AIC23",
|
||||
.codec_dai_name = "tlv320aic23-hifi",
|
||||
.platform_name = "imx-fiq-pcm-audio.0",
|
||||
.platform_name = "imx-ssi.0",
|
||||
.codec_name = "tlv320aic23-codec.0-001a",
|
||||
.cpu_dai_name = "imx-ssi.0",
|
||||
.ops = &eukrea_tlv320_snd_ops,
|
||||
|
|
|
@ -595,18 +595,9 @@ static int imx_ssi_probe(struct platform_device *pdev)
|
|||
goto failed_register;
|
||||
}
|
||||
|
||||
ssi->soc_platform_pdev_fiq = platform_device_alloc("imx-fiq-pcm-audio", pdev->id);
|
||||
if (!ssi->soc_platform_pdev_fiq) {
|
||||
ret = -ENOMEM;
|
||||
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_fiq_init(pdev);
|
||||
if (ret)
|
||||
goto failed_pcm_fiq;
|
||||
|
||||
ret = imx_pcm_dma_init(pdev);
|
||||
if (ret)
|
||||
|
@ -615,10 +606,8 @@ static int imx_ssi_probe(struct platform_device *pdev)
|
|||
return 0;
|
||||
|
||||
failed_pcm_dma:
|
||||
platform_device_del(ssi->soc_platform_pdev_fiq);
|
||||
failed_pdev_fiq_add:
|
||||
platform_device_put(ssi->soc_platform_pdev_fiq);
|
||||
failed_pdev_fiq_alloc:
|
||||
imx_pcm_fiq_exit(pdev);
|
||||
failed_pcm_fiq:
|
||||
snd_soc_unregister_component(&pdev->dev);
|
||||
failed_register:
|
||||
release_mem_region(res->start, resource_size(res));
|
||||
|
@ -635,7 +624,7 @@ static int imx_ssi_remove(struct platform_device *pdev)
|
|||
struct imx_ssi *ssi = platform_get_drvdata(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);
|
||||
|
||||
|
|
|
@ -211,8 +211,6 @@ struct imx_ssi {
|
|||
struct imx_dma_data filter_data_rx;
|
||||
|
||||
int enabled;
|
||||
|
||||
struct platform_device *soc_platform_pdev_fiq;
|
||||
};
|
||||
|
||||
#endif /* _IMX_SSI_H */
|
||||
|
|
|
@ -33,7 +33,7 @@ static struct snd_soc_dai_link imx_phycore_dai_ac97[] = {
|
|||
.codec_dai_name = "wm9712-hifi",
|
||||
.codec_name = "wm9712-codec",
|
||||
.cpu_dai_name = "imx-ssi.0",
|
||||
.platform_name = "imx-fiq-pcm-audio.0",
|
||||
.platform_name = "imx-ssi.0",
|
||||
.ops = &imx_phycore_hifi_ops,
|
||||
},
|
||||
};
|
||||
|
|
|
@ -245,7 +245,7 @@ static struct snd_soc_dai_link wm1133_ev1_dai = {
|
|||
.stream_name = "Audio",
|
||||
.cpu_dai_name = "imx-ssi.0",
|
||||
.codec_dai_name = "wm8350-hifi",
|
||||
.platform_name = "imx-fiq-pcm-audio.0",
|
||||
.platform_name = "imx-ssi.0",
|
||||
.codec_name = "wm8350-codec.0-0x1a",
|
||||
.init = wm1133_ev1_init,
|
||||
.ops = &wm1133_ev1_ops,
|
||||
|
|
Загрузка…
Ссылка в новой задаче