DMAENGINE: ste_dma40: No need reading, masking and setting a set register
authorJonas Aaberg <jonas.aberg@stericsson.com>
Mon, 9 Aug 2010 12:07:54 +0000 (12:07 +0000)
committerDan Williams <dan.j.williams@intel.com>
Wed, 22 Sep 2010 21:53:45 +0000 (14:53 -0700)
Removes an unnecessary register read and a few lines of code.

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>
drivers/dma/ste_dma40.c

index 8aff865..538c35d 100644 (file)
@@ -915,7 +915,6 @@ static irqreturn_t d40_handle_interrupt(int irq, void *data)
 
        int i;
        u32 regs[ARRAY_SIZE(il)];
-       u32 tmp;
        u32 idx;
        u32 row;
        long chan = -1;
@@ -942,9 +941,7 @@ static irqreturn_t d40_handle_interrupt(int irq, void *data)
                idx = chan & (BITS_PER_LONG - 1);
 
                /* ACK interrupt */
-               tmp = readl(base->virtbase + il[row].clr);
-               tmp |= 1 << idx;
-               writel(tmp, base->virtbase + il[row].clr);
+               writel(1 << idx, base->virtbase + il[row].clr);
 
                if (il[row].offset == D40_PHY_CHAN)
                        d40c = base->lookup_phy_chans[idx];