summaryrefslogtreecommitdiff
path: root/drivers/dma
diff options
context:
space:
mode:
authorRobby Cai <R63905@freescale.com>2010-12-08 13:50:17 +0800
committerAlan Tull <alan.tull@freescale.com>2011-02-03 16:33:25 -0600
commit3a7b5e95af2989247c77db8932ff6351ca7f9fe8 (patch)
treecfbe97eeee553a32189a34b997f37f06a5bc0539 /drivers/dma
parent2e362de8aa3b3f820c7a1705f0377537c6271b6f (diff)
ENGR00136101-2 MX50: Only kick the clock off timer in irq handler.
Here 'kick' means start the timer or postpone the timer. By only kicking the timer in irq handler only when no task pending in the queue, rather than each time we submit a new task, it should perform better. Signed-off-by: Robby Cai <R63905@freescale.com>
Diffstat (limited to 'drivers/dma')
-rw-r--r--drivers/dma/pxp/pxp_dma.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/dma/pxp/pxp_dma.c b/drivers/dma/pxp/pxp_dma.c
index d87b1d278d24..1545682f7c13 100644
--- a/drivers/dma/pxp/pxp_dma.c
+++ b/drivers/dma/pxp/pxp_dma.c
@@ -767,8 +767,6 @@ static void pxpdma_dostart_work(struct pxps *pxp)
pxp_start(pxp);
- mod_timer(&pxp->clk_timer, jiffies + msecs_to_jiffies(timeout_in_ms));
-
spin_unlock_irqrestore(&pxp->lock, flags);
}
@@ -956,6 +954,7 @@ static irqreturn_t pxp_irq(int irq, void *dev_id)
wake_up(&pxp->done);
pxp->pxp_ongoing = 0;
+ mod_timer(&pxp->clk_timer, jiffies + msecs_to_jiffies(timeout_in_ms));
spin_unlock_irqrestore(&pxp->lock, flags);