Commit 7aca69f9 authored by Liam Girdwood's avatar Liam Girdwood Committed by Mark Brown

ASoC: utils - Add support for a dummy codec driver.

This is useful to create dummy codec devices where we need to have some
DAI links without a real Codec. e.g. could be used to represent dumb FM,
MODEM, etc

This is also used by dynamic PCM for DAI links that have no codec.
Signed-off-by: default avatarLiam Girdwood <lrg@ti.com>
[Fixed the indentation -- broonie]
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent 08656910
...@@ -89,14 +89,32 @@ static struct snd_soc_platform_driver dummy_platform = { ...@@ -89,14 +89,32 @@ static struct snd_soc_platform_driver dummy_platform = {
.ops = &dummy_dma_ops, .ops = &dummy_dma_ops,
}; };
static struct snd_soc_codec_driver dummy_codec;
static struct snd_soc_dai_driver dummy_dai = {
.name = "snd-soc-dummy-dai",
};
static __devinit int snd_soc_dummy_probe(struct platform_device *pdev) static __devinit int snd_soc_dummy_probe(struct platform_device *pdev)
{ {
return snd_soc_register_platform(&pdev->dev, &dummy_platform); int ret;
ret = snd_soc_register_codec(&pdev->dev, &dummy_codec, &dummy_dai, 1);
if (ret < 0)
return ret;
ret = snd_soc_register_platform(&pdev->dev, &dummy_platform);
if (ret < 0) {
snd_soc_unregister_codec(&pdev->dev);
return ret;
}
return ret;
} }
static __devexit int snd_soc_dummy_remove(struct platform_device *pdev) static __devexit int snd_soc_dummy_remove(struct platform_device *pdev)
{ {
snd_soc_unregister_platform(&pdev->dev); snd_soc_unregister_platform(&pdev->dev);
snd_soc_unregister_codec(&pdev->dev);
return 0; return 0;
} }
......
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