summaryrefslogtreecommitdiffstats
path: root/drivers/i2c
diff options
context:
space:
mode:
authorShubhrajyoti Datta <shubhraj@xilinx.com>2015-06-17 17:18:14 +0200
committerWolfram Sang <wsa@the-dreams.de>2015-08-10 08:37:32 +0200
commite6c9a037bc8afdce055a2a23bb61903b3844dfda (patch)
tree2435accec9ff47f2739f3fef29dabc2b15c0848d /drivers/i2c
parenti2c: xiic: Do not reset controller before every transfer (diff)
downloadlinux-e6c9a037bc8afdce055a2a23bb61903b3844dfda.tar.xz
linux-e6c9a037bc8afdce055a2a23bb61903b3844dfda.zip
i2c: xiic: Remove the disabling of interrupts
Currently before every transfer the interrupts are disabled. So incase the slave nacks in the middle of the transfer the current transfer is not aborted. Upon enabling the interrupts conditions like NACK , arbitration lost will not be masked. Remove the disabling of the interrupts. Signed-off-by: Shubhrajyoti Datta <shubhraj@xilinx.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'drivers/i2c')
-rw-r--r--drivers/i2c/busses/i2c-xiic.c7
1 files changed, 0 insertions, 7 deletions
diff --git a/drivers/i2c/busses/i2c-xiic.c b/drivers/i2c/busses/i2c-xiic.c
index 43bcfeddc54e..5d133d487ec0 100644
--- a/drivers/i2c/busses/i2c-xiic.c
+++ b/drivers/i2c/busses/i2c-xiic.c
@@ -664,15 +664,8 @@ static void __xiic_start_xfer(struct xiic_i2c *i2c)
static void xiic_start_xfer(struct xiic_i2c *i2c)
{
- unsigned long flags;
-
- spin_lock_irqsave(&i2c->lock, flags);
- /* disable interrupts globally */
- xiic_setreg32(i2c, XIIC_DGIER_OFFSET, 0);
- spin_unlock_irqrestore(&i2c->lock, flags);
__xiic_start_xfer(i2c);
- xiic_setreg32(i2c, XIIC_DGIER_OFFSET, XIIC_GINTR_ENABLE_MASK);
}
static int xiic_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num)