diff options
-rw-r--r-- | arch/arm/plat-omap/mcbsp.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/arch/arm/plat-omap/mcbsp.c b/arch/arm/plat-omap/mcbsp.c index 85176a5f4148..56a56887dedc 100644 --- a/arch/arm/plat-omap/mcbsp.c +++ b/arch/arm/plat-omap/mcbsp.c | |||
@@ -319,16 +319,17 @@ static inline void omap34xx_mcbsp_request(struct omap_mcbsp *mcbsp) | |||
319 | syscon &= ~(ENAWAKEUP | SIDLEMODE(0x03) | CLOCKACTIVITY(0x03)); | 319 | syscon &= ~(ENAWAKEUP | SIDLEMODE(0x03) | CLOCKACTIVITY(0x03)); |
320 | 320 | ||
321 | spin_lock_irq(&mcbsp->lock); | 321 | spin_lock_irq(&mcbsp->lock); |
322 | if (mcbsp->dma_op_mode == MCBSP_DMA_MODE_THRESHOLD) | 322 | if (mcbsp->dma_op_mode == MCBSP_DMA_MODE_THRESHOLD) { |
323 | syscon |= SIDLEMODE(0x02); | 323 | syscon |= (ENAWAKEUP | SIDLEMODE(0x02) | |
324 | else | 324 | CLOCKACTIVITY(0x02)); |
325 | OMAP_MCBSP_WRITE(mcbsp->io_base, WAKEUPEN, | ||
326 | XRDYEN | RRDYEN); | ||
327 | } else { | ||
325 | syscon |= SIDLEMODE(0x01); | 328 | syscon |= SIDLEMODE(0x01); |
329 | } | ||
326 | spin_unlock_irq(&mcbsp->lock); | 330 | spin_unlock_irq(&mcbsp->lock); |
327 | 331 | ||
328 | syscon |= (ENAWAKEUP | CLOCKACTIVITY(0x02)); | ||
329 | OMAP_MCBSP_WRITE(mcbsp->io_base, SYSCON, syscon); | 332 | OMAP_MCBSP_WRITE(mcbsp->io_base, SYSCON, syscon); |
330 | |||
331 | OMAP_MCBSP_WRITE(mcbsp->io_base, WAKEUPEN, XRDYEN | RRDYEN); | ||
332 | } | 333 | } |
333 | } | 334 | } |
334 | 335 | ||