Skip to content

Commit

Permalink
DMAENGINE: ste_dma40: don't pause/resume non-executing channels
Browse files Browse the repository at this point in the history
There is no point in pausing what isn't running.

Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
  • Loading branch information
Jonas Aaberg authored and Dan Williams committed Sep 22, 2010
1 parent 8f6fd7f commit 3ac012a
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions drivers/dma/ste_dma40.c
Original file line number Diff line number Diff line change
Expand Up @@ -768,6 +768,9 @@ static int d40_pause(struct dma_chan *chan)
int res = 0;
unsigned long flags;

if (!d40c->busy)
return 0;

spin_lock_irqsave(&d40c->lock, flags);

res = d40_channel_execute_command(d40c, D40_DMA_SUSPEND_REQ);
Expand All @@ -792,6 +795,9 @@ static int d40_resume(struct dma_chan *chan)
int res = 0;
unsigned long flags;

if (!d40c->busy)
return 0;

spin_lock_irqsave(&d40c->lock, flags);

if (d40c->base->rev == 0)
Expand Down

0 comments on commit 3ac012a

Please sign in to comment.