Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d99a7454 authored by Eduardo Valentin's avatar Eduardo Valentin Committed by Mark Brown
Browse files

OMAP: McBSP: Configure NO IDLE mode for DMA mode different of threshold



Use dma mode property to configure NO IDLE or SMART IDLE of McBSPs.

Signed-off-by: default avatarEduardo Valentin <eduardo.valentin@nokia.com>
Acked-by: default avatarTony Lindgren <tony@atomide.com>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent 2ba93f8f
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -317,7 +317,15 @@ static inline void omap34xx_mcbsp_request(struct omap_mcbsp *mcbsp)

		syscon = OMAP_MCBSP_READ(mcbsp->io_base, SYSCON);
		syscon &= ~(ENAWAKEUP | SIDLEMODE(0x03) | CLOCKACTIVITY(0x03));
		syscon |= (ENAWAKEUP | SIDLEMODE(0x02) | CLOCKACTIVITY(0x02));

		spin_lock_irq(&mcbsp->lock);
		if (mcbsp->dma_op_mode == MCBSP_DMA_MODE_THRESHOLD)
			syscon |= SIDLEMODE(0x02);
		else
			syscon |= SIDLEMODE(0x01);
		spin_unlock_irq(&mcbsp->lock);

		syscon |= (ENAWAKEUP | CLOCKACTIVITY(0x02));
		OMAP_MCBSP_WRITE(mcbsp->io_base, SYSCON, syscon);

		OMAP_MCBSP_WRITE(mcbsp->io_base, WAKEUPEN, XRDYEN | RRDYEN);