Revert "i2c: tegra: Fix i2c unknown interrupt issue"
Laxman Dewangan [Tue, 17 Jul 2012 13:24:24 +0000 (18:24 +0530)]
This reverts commit 021d8866c80fab07cb4cd2753ed67d0c1b49c174.

The reason for revert the change:
The readback is done at the time of i2c_writel() and hence
it is not require to have this in scattered manner.
This is towards the aligning driver with mainline.

Change-Id: I74184683301d7a3c26550d97fb1ce3596273a0bb
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: http://git-master/r/116470
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Tested-by: Bandi Krishna Chaitanya <bandik@nvidia.com>

drivers/i2c/busses/i2c-tegra.c

index 5961aa0..429576d 100644 (file)
@@ -599,12 +599,9 @@ static irqreturn_t tegra_i2c_isr(int irq, void *dev_id)
        }
 
        i2c_writel(i2c_dev, status, I2C_INT_STATUS);
-       i2c_readl(i2c_dev, I2C_INT_STATUS);
 
-       if (i2c_dev->is_dvc) {
+       if (i2c_dev->is_dvc)
                dvc_writel(i2c_dev, DVC_STATUS_I2C_DONE_INTR, DVC_STATUS);
-               dvc_readl(i2c_dev, DVC_STATUS);
-       }
 
        if (status & I2C_INT_PACKET_XFER_COMPLETE) {
                BUG_ON(i2c_dev->msg_buf_remaining);
@@ -640,16 +637,13 @@ err:
                I2C_INT_RX_FIFO_DATA_REQ | I2C_INT_TX_FIFO_OVERFLOW);
 
        i2c_writel(i2c_dev, status, I2C_INT_STATUS);
-       i2c_readl(i2c_dev, I2C_INT_STATUS);
 
        /* An error occured, mask dvc interrupt */
        if (i2c_dev->is_dvc)
                dvc_i2c_mask_irq(i2c_dev, DVC_CTRL_REG3_I2C_DONE_INTR_EN);
 
-       if (i2c_dev->is_dvc) {
+       if (i2c_dev->is_dvc)
                dvc_writel(i2c_dev, DVC_STATUS_I2C_DONE_INTR, DVC_STATUS);
-               dvc_readl(i2c_dev, DVC_STATUS);
-       }
 
        complete(&i2c_dev->msg_complete);
        return IRQ_HANDLED;