diff options
-rw-r--r-- | drivers/dma/mmp_pdma.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/dma/mmp_pdma.c b/drivers/dma/mmp_pdma.c index 8926f271904e..abf1450bb25d 100644 --- a/drivers/dma/mmp_pdma.c +++ b/drivers/dma/mmp_pdma.c | |||
@@ -219,6 +219,9 @@ static irqreturn_t mmp_pdma_int_handler(int irq, void *dev_id) | |||
219 | 219 | ||
220 | while (dint) { | 220 | while (dint) { |
221 | i = __ffs(dint); | 221 | i = __ffs(dint); |
222 | /* only handle interrupts belonging to pdma driver*/ | ||
223 | if (i >= pdev->dma_channels) | ||
224 | break; | ||
222 | dint &= (dint - 1); | 225 | dint &= (dint - 1); |
223 | phy = &pdev->phy[i]; | 226 | phy = &pdev->phy[i]; |
224 | ret = mmp_pdma_chan_handler(irq, phy); | 227 | ret = mmp_pdma_chan_handler(irq, phy); |