Skip to content

Commit fdd6031

Browse files
Eddie Jamesgregkh
authored andcommitted
i2c: aspeed: Mask IRQ status to relevant bits
[ Upstream commit 1a1d6db ] Mask the IRQ status to only the bits that the driver checks. This prevents excessive driver warnings when operating in slave mode when additional bits are set that the driver doesn't handle. Signed-off-by: Eddie James <[email protected]> Reviewed-by: Tao Ren <[email protected]> Signed-off-by: Wolfram Sang <[email protected]> Signed-off-by: Sasha Levin <[email protected]>
1 parent 66d987b commit fdd6031

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

drivers/i2c/busses/i2c-aspeed.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@
6969
* These share bit definitions, so use the same values for the enable &
7070
* status bits.
7171
*/
72+
#define ASPEED_I2CD_INTR_RECV_MASK 0xf000ffff
7273
#define ASPEED_I2CD_INTR_SDA_DL_TIMEOUT BIT(14)
7374
#define ASPEED_I2CD_INTR_BUS_RECOVER_DONE BIT(13)
7475
#define ASPEED_I2CD_INTR_SLAVE_MATCH BIT(7)
@@ -604,6 +605,7 @@ static irqreturn_t aspeed_i2c_bus_irq(int irq, void *dev_id)
604605
writel(irq_received & ~ASPEED_I2CD_INTR_RX_DONE,
605606
bus->base + ASPEED_I2C_INTR_STS_REG);
606607
readl(bus->base + ASPEED_I2C_INTR_STS_REG);
608+
irq_received &= ASPEED_I2CD_INTR_RECV_MASK;
607609
irq_remaining = irq_received;
608610

609611
#if IS_ENABLED(CONFIG_I2C_SLAVE)

0 commit comments

Comments
 (0)