aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/pxa/pxa2xx-i2s.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/pxa/pxa2xx-i2s.c')
-rw-r--r--sound/soc/pxa/pxa2xx-i2s.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/sound/soc/pxa/pxa2xx-i2s.c b/sound/soc/pxa/pxa2xx-i2s.c
index bc12a09527f3..4743e262895d 100644
--- a/sound/soc/pxa/pxa2xx-i2s.c
+++ b/sound/soc/pxa/pxa2xx-i2s.c
@@ -262,9 +262,6 @@ static void pxa2xx_i2s_shutdown(struct snd_pcm_substream *substream,
262#ifdef CONFIG_PM 262#ifdef CONFIG_PM
263static int pxa2xx_i2s_suspend(struct snd_soc_dai *dai) 263static int pxa2xx_i2s_suspend(struct snd_soc_dai *dai)
264{ 264{
265 if (!dai->active)
266 return 0;
267
268 /* store registers */ 265 /* store registers */
269 pxa_i2s.sacr0 = SACR0; 266 pxa_i2s.sacr0 = SACR0;
270 pxa_i2s.sacr1 = SACR1; 267 pxa_i2s.sacr1 = SACR1;
@@ -279,16 +276,14 @@ static int pxa2xx_i2s_suspend(struct snd_soc_dai *dai)
279 276
280static int pxa2xx_i2s_resume(struct snd_soc_dai *dai) 277static int pxa2xx_i2s_resume(struct snd_soc_dai *dai)
281{ 278{
282 if (!dai->active)
283 return 0;
284
285 pxa_i2s_wait(); 279 pxa_i2s_wait();
286 280
287 SACR0 = pxa_i2s.sacr0 &= ~SACR0_ENB; 281 SACR0 = pxa_i2s.sacr0 & ~SACR0_ENB;
288 SACR1 = pxa_i2s.sacr1; 282 SACR1 = pxa_i2s.sacr1;
289 SAIMR = pxa_i2s.saimr; 283 SAIMR = pxa_i2s.saimr;
290 SADIV = pxa_i2s.sadiv; 284 SADIV = pxa_i2s.sadiv;
291 SACR0 |= SACR0_ENB; 285
286 SACR0 = pxa_i2s.sacr0;
292 287
293 return 0; 288 return 0;
294} 289}