pm_runtime_get_sync() and put_sync() are not called by McBSP driver.
This is introducing a problem with PM and Audio Backend due to
missing get/put for McBSP IP.

Signed-off-by: Sebastien Guiriec <[email protected]>
---
 sound/soc/omap/omap-mcbsp.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/sound/soc/omap/omap-mcbsp.c b/sound/soc/omap/omap-mcbsp.c
index 1046083..007d239 100644
--- a/sound/soc/omap/omap-mcbsp.c
+++ b/sound/soc/omap/omap-mcbsp.c
@@ -117,6 +117,8 @@ static int omap_mcbsp_dai_startup(struct snd_pcm_substream 
*substream,
        struct omap_mcbsp *mcbsp = snd_soc_dai_get_drvdata(cpu_dai);
        int err = 0;
 
+       pm_runtime_get_sync(mcbsp->dev);
+
        if (!cpu_dai->active)
                err = omap_mcbsp_request(mcbsp);
 
@@ -165,6 +167,8 @@ static void omap_mcbsp_dai_shutdown(struct 
snd_pcm_substream *substream,
                omap_mcbsp_free(mcbsp);
                mcbsp->configured = 0;
        }
+
+       pm_runtime_put_sync(mcbsp->dev);
 }
 
 static int omap_mcbsp_dai_trigger(struct snd_pcm_substream *substream, int cmd,
-- 
1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to