mirror of
https://github.com/torvalds/linux.git
synced 2026-01-25 15:03:52 +08:00
i2c: xiic: Remove interrupt enable/disable in Rx path
'DYNAMIC_MODE_READ_BROKEN_BIT' quirk added in the driver, effected IP versions no longer enter dynamic mode. So, remove local_irq_save/local_irq_restore APIs from driver. Signed-off-by: Raviteja Narayanam <raviteja.narayanam@xilinx.com> Signed-off-by: Manikanta Guntupalli <manikanta.guntupalli@amd.com> Acked-by: Michal Simek <michal.simek@amd.com> Signed-off-by: Wolfram Sang <wsa@kernel.org>
This commit is contained in:
committed by
Wolfram Sang
parent
e4c1ff772e
commit
31ec26b2db
@@ -741,7 +741,6 @@ static void xiic_start_recv(struct xiic_i2c *i2c)
|
||||
u16 rx_watermark;
|
||||
u8 cr = 0, rfd_set = 0;
|
||||
struct i2c_msg *msg = i2c->rx_msg = i2c->tx_msg;
|
||||
unsigned long flags;
|
||||
|
||||
dev_dbg(i2c->adap.dev.parent, "%s entry, ISR: 0x%x, CR: 0x%x\n",
|
||||
__func__, xiic_getreg32(i2c, XIIC_IISR_OFFSET),
|
||||
@@ -773,8 +772,6 @@ static void xiic_start_recv(struct xiic_i2c *i2c)
|
||||
bytes--;
|
||||
xiic_setreg8(i2c, XIIC_RFD_REG_OFFSET, bytes);
|
||||
|
||||
local_irq_save(flags);
|
||||
|
||||
/* write the address */
|
||||
xiic_setreg16(i2c, XIIC_DTR_REG_OFFSET,
|
||||
i2c_8bit_addr_from_msg(msg) |
|
||||
@@ -787,8 +784,6 @@ static void xiic_start_recv(struct xiic_i2c *i2c)
|
||||
xiic_setreg16(i2c, XIIC_DTR_REG_OFFSET, val);
|
||||
|
||||
xiic_irq_clr_en(i2c, XIIC_INTR_BNB_MASK);
|
||||
|
||||
local_irq_restore(flags);
|
||||
} else {
|
||||
/*
|
||||
* If previous message is Tx, make sure that Tx FIFO is empty
|
||||
|
||||
Reference in New Issue
Block a user