ASoC: omap-mcpdm: Bind the platform driver to the dai driver when loading
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Wed, 16 Apr 2014 12:46:14 +0000 (15:46 +0300)
committerMark Brown <broonie@linaro.org>
Fri, 18 Apr 2014 17:00:35 +0000 (18:00 +0100)
Use the same device for the platform driver when registering as the dai
driver. This will enable us to clean up some DT booted cases.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/omap/omap-mcpdm.c

index e984b0485e923f3c914baa81ba639bcb4173abc0..d8ebb52645a996b915a7986ceca61cef342b096b 100644 (file)
@@ -42,6 +42,7 @@
 #include <sound/dmaengine_pcm.h>
 
 #include "omap-mcpdm.h"
+#include "omap-pcm.h"
 
 struct mcpdm_link_config {
        u32 link_mask; /* channel mask for the direction */
@@ -462,6 +463,7 @@ static int asoc_mcpdm_probe(struct platform_device *pdev)
 {
        struct omap_mcpdm *mcpdm;
        struct resource *res;
+       int ret;
 
        mcpdm = devm_kzalloc(&pdev->dev, sizeof(struct omap_mcpdm), GFP_KERNEL);
        if (!mcpdm)
@@ -492,9 +494,13 @@ static int asoc_mcpdm_probe(struct platform_device *pdev)
 
        mcpdm->dev = &pdev->dev;
 
-       return devm_snd_soc_register_component(&pdev->dev,
+       ret =  devm_snd_soc_register_component(&pdev->dev,
                                               &omap_mcpdm_component,
                                               &omap_mcpdm_dai, 1);
+       if (ret)
+               return ret;
+
+       return omap_pcm_platform_register(&pdev->dev);
 }
 
 static const struct of_device_id omap_mcpdm_of_match[] = {