From 3d6a872f1a5d7e15978279625b2f6e9649b89e3b Mon Sep 17 00:00:00 2001 From: Santosh Shilimkar Date: Mon, 23 Mar 2009 18:07:49 -0700 Subject: [PATCH] --- yaml --- r: 137487 b: refs/heads/master c: 52176e70837d56cd238d6edc04cc403f1ffa86c6 h: refs/heads/master i: 137485: e71e53721092d950f169209cc00673a4f4b340c1 137483: 48f44a50989a7dc2f8711bf564b9e0b0f59a5e1d 137479: e187ae9a94f7ee4142597d3433a25271a841a973 137471: 2e32a7919a9197a6c935e4b230db622908d1ad2e v: v3 --- [refs] | 2 +- trunk/arch/arm/plat-omap/dma.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 5ba88905170f..f200c35c3a75 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2263f0222e836c7b2c144e0546a2701661e2f517 +refs/heads/master: 52176e70837d56cd238d6edc04cc403f1ffa86c6 diff --git a/trunk/arch/arm/plat-omap/dma.c b/trunk/arch/arm/plat-omap/dma.c index b1d3c7991ffd..21cc0142b97a 100644 --- a/trunk/arch/arm/plat-omap/dma.c +++ b/trunk/arch/arm/plat-omap/dma.c @@ -1901,7 +1901,7 @@ static int omap2_dma_handle_ch(int ch) /* STATUS register count is from 1-32 while our is 0-31 */ static irqreturn_t omap2_dma_irq_handler(int irq, void *dev_id) { - u32 val; + u32 val, enable_reg; int i; val = dma_read(IRQSTATUS_L0); @@ -1910,6 +1910,8 @@ static irqreturn_t omap2_dma_irq_handler(int irq, void *dev_id) printk(KERN_WARNING "Spurious DMA IRQ\n"); return IRQ_HANDLED; } + enable_reg = dma_read(IRQENABLE_L0); + val &= enable_reg; /* Dispatch only relevant interrupts */ for (i = 0; i < dma_lch_count && val != 0; i++) { if (val & 1) omap2_dma_handle_ch(i);