On Tue, Sep 16, 2014 at 04:53:49PM +0300, Peter Ujfalusi wrote:
> When the audio stream is paused or suspended we stop the sDMA and when it
> is unpaused/resumed we start the channel without reconfiguring it.
> The omap_dma_stop() clears the link configuration when we pause the dma, but
> it is not setting it back on start. This will result only one audio buffer
> to be played back and the DMA will stop, since the linking is disabled.
> We need to restore the CLINK_CTRL register in case of resume.
> 
> Signed-off-by: Peter Ujfalusi <[email protected]>

Both of these patches now look good, thanks.  For both:

Acked-by: Russell King <[email protected]>

> ---
>  drivers/dma/omap-dma.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/dma/omap-dma.c b/drivers/dma/omap-dma.c
> index c01ea505ee7c..e0990c505889 100644
> --- a/drivers/dma/omap-dma.c
> +++ b/drivers/dma/omap-dma.c
> @@ -1019,6 +1019,9 @@ static int omap_dma_resume(struct omap_chan *c)
>       if (c->paused) {
>               mb();
>  
> +             /* Restore chanel link register */
> +             omap_dma_chan_write(c, CLNK_CTRL, c->desc->clnk_ctrl);
> +
>               omap_dma_start(c, c->desc);
>               c->paused = false;
>       }
> -- 
> 2.1.0
> 

-- 
FTTC broadband for 0.8mile line: currently at 9.5Mbps down 400kbps up
according to speedtest.net.
--
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