summaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorPeter Ujfalusi <peter.ujfalusi@ti.com>2012-03-05 11:27:40 +0200
committerLiam Girdwood <lrg@ti.com>2012-03-12 13:34:23 +0000
commit08905d8ab4d4a264c5a700b04b9cbafe4f381037 (patch)
tree46ebc826545feba502b268c3f09a94bbf79497e1 /sound/soc
parent58db1dcde0dcf5143dc6a54017e4a72c25fb8db0 (diff)
downloadlinux-08905d8ab4d4a264c5a700b04b9cbafe4f381037.tar.gz
linux-08905d8ab4d4a264c5a700b04b9cbafe4f381037.tar.bz2
linux-08905d8ab4d4a264c5a700b04b9cbafe4f381037.zip
ASoC: omap-mcbsp: Configure wakeup in later phase
Configure the WAKEUPEN register at the same time we configure the rest of the McBSP registers. In case of OMAP3+, if the sysclock has been reconfigured we are going to disable McBSP for the duration of the clock change, which will reset the McBSP registers. The WAKEUPEN register need to be configured later, so the changes will be effective during runtime. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicrocom> Signed-off-by: Liam Girdwood <lrg@ti.com>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/omap/mcbsp.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sound/soc/omap/mcbsp.c b/sound/soc/omap/mcbsp.c
index 5f6c21d4b59b..d7167932113a 100644
--- a/sound/soc/omap/mcbsp.c
+++ b/sound/soc/omap/mcbsp.c
@@ -173,6 +173,9 @@ void omap_mcbsp_config(struct omap_mcbsp *mcbsp,
MCBSP_WRITE(mcbsp, XCCR, config->xccr);
MCBSP_WRITE(mcbsp, RCCR, config->rccr);
}
+ /* Enable wakeup behavior */
+ if (mcbsp->pdata->has_wakeup)
+ MCBSP_WRITE(mcbsp, WAKEUPEN, XRDYEN | RRDYEN);
}
/**
@@ -479,10 +482,6 @@ int omap_mcbsp_request(struct omap_mcbsp *mcbsp)
if (mcbsp->pdata && mcbsp->pdata->ops && mcbsp->pdata->ops->request)
mcbsp->pdata->ops->request(mcbsp->id - 1);
- /* Enable wakeup behavior */
- if (mcbsp->pdata->has_wakeup)
- MCBSP_WRITE(mcbsp, WAKEUPEN, XRDYEN | RRDYEN);
-
/*
* Make sure that transmitter, receiver and sample-rate generator are
* not running before activating IRQs.