]> pilppa.com Git - linux-2.6-omap-h63xx.git/commitdiff
T2: Remove redundant clear and restore of the COR flag
authorKlaus Pedersen <klaus.k.pedersen@nokia.com>
Fri, 18 Jan 2008 17:30:23 +0000 (19:30 +0200)
committerTony Lindgren <tony@atomide.com>
Fri, 18 Jan 2008 22:29:27 +0000 (14:29 -0800)
The T2 Clear-On-Read (COR) feature works by clearing all pending
irqs when the ISR register is read. It should be needless to say
that this feature isn't compatible with shared interrupts, unless
the value of the ISR is read only once for each interrupt.

It is therefor safe to assume that COR is not used - because if a
driver uses the feature, that driver will clear the interrupts
belonging to other drivers.

This patch removes the redundant clearing and restoring of the COR
bit in REG_PWR_SIH_CTRL.

Signed-off-by: Klaus Pedersen <klaus.k.pedersen@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
drivers/i2c/chips/twl4030_usb.c

index 52bb071cfd2428ef478072bbb2682c3fa1f1d517..b3365f690880e75cf0b4fb13133d6ad016f0e6e1 100644 (file)
@@ -480,12 +480,6 @@ static irqreturn_t twl4030_usb_irq(int irq, void *_twl)
 {
        int ret = IRQ_NONE;
        u8 val;
-       u8 sih_ctrl;
-
-       /* save previous value of SIH_CTRL and disable clear_on_read */
-       twl4030_i2c_read_u8(TWL4030_MODULE_INT, &sih_ctrl, REG_PWR_SIH_CTRL);
-       twl4030_i2c_write_u8(TWL4030_MODULE_INT, (sih_ctrl & ~COR),
-                            REG_PWR_SIH_CTRL);
 
        if (twl4030_i2c_read_u8(TWL4030_MODULE_INT, &val, REG_PWR_ISR1) < 0) {
                printk(KERN_ERR "twl4030_usb: i2c read failed,"
@@ -515,8 +509,6 @@ static irqreturn_t twl4030_usb_irq(int irq, void *_twl)
        ret = IRQ_HANDLED;
 
 done:
-       /* restore previous value of SIH_CTRL */
-       twl4030_i2c_write_u8(TWL4030_MODULE_INT, sih_ctrl, REG_PWR_SIH_CTRL);
        return ret;
 }