dmaengine: ipu: Make sure the interrupt routine checks all interrupts.
authorMagnus Lilja <lilja.magnus@gmail.com>
Wed, 21 Dec 2016 21:13:58 +0000 (22:13 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 12 Mar 2017 05:37:30 +0000 (06:37 +0100)
commit adee40b265d7568296e218f079f478197ffa15bf upstream.

Commit 3d8cc00073d6 ("dmaengine: ipu: Consolidate duplicated irq handlers")
consolidated the two interrupts routines into one, but the remaining
interrupt routine only checks the status of the error interrupts, not the
normal interrupts.

This patch fixes that problem (tested on i.MX31 PDK board).

Fixes: 3d8cc00073d6 ("dmaengine: ipu: Consolidate duplicated irq handlers")
Cc: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/dma/ipu/ipu_irq.c

index dd184b50e5b40a508c1bdacee874b6464d2b1055..284627806b887cc2fa58616639be17a244c8a058 100644 (file)
@@ -272,7 +272,7 @@ static void ipu_irq_handler(struct irq_desc *desc)
        u32 status;
        int i, line;
 
-       for (i = IPU_IRQ_NR_FN_BANKS; i < IPU_IRQ_NR_BANKS; i++) {
+       for (i = 0; i < IPU_IRQ_NR_BANKS; i++) {
                struct ipu_irq_bank *bank = irq_bank + i;
 
                raw_spin_lock(&bank_lock);