The commit b1f8921dfbaa ("i2c: amd-asf: Clear remote IRR bit to get successive interrupt") introduced a method to enable successive interrupts but inadvertently omitted the necessary write to the EOI register, resulting in a failure to receive successive interrupts.
Fix this by adding the required write to the EOI register.
Fixes: b1f8921dfbaa ("i2c: amd-asf: Clear remote IRR bit to get successive interrupt") Cc: stable@vger.kernel.org # v6.13+ Co-developed-by: Sanket Goswami Sanket.Goswami@amd.com Signed-off-by: Sanket Goswami Sanket.Goswami@amd.com Signed-off-by: Shyam Sundar S K Shyam-sundar.S-k@amd.com ---
v2: - update commit and add stable tag
drivers/i2c/busses/i2c-amd-asf-plat.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/drivers/i2c/busses/i2c-amd-asf-plat.c b/drivers/i2c/busses/i2c-amd-asf-plat.c index 438db5a9d0ed..ca45f0f23321 100644 --- a/drivers/i2c/busses/i2c-amd-asf-plat.c +++ b/drivers/i2c/busses/i2c-amd-asf-plat.c @@ -293,6 +293,7 @@ static irqreturn_t amd_asf_irq_handler(int irq, void *ptr) amd_asf_update_ioport_target(piix4_smba, ASF_SLV_INTR, SMBHSTSTS, true); }
+ iowrite32(irq, dev->eoi_base); return IRQ_HANDLED; }
Hi Shyam,
On Wed, Feb 19, 2025 at 07:27:47PM +0530, Shyam Sundar S K wrote:
The commit b1f8921dfbaa ("i2c: amd-asf: Clear remote IRR bit to get successive interrupt") introduced a method to enable successive interrupts but inadvertently omitted the necessary write to the EOI register, resulting in a failure to receive successive interrupts.
Fix this by adding the required write to the EOI register.
Fixes: b1f8921dfbaa ("i2c: amd-asf: Clear remote IRR bit to get successive interrupt") Cc: stable@vger.kernel.org # v6.13+ Co-developed-by: Sanket Goswami Sanket.Goswami@amd.com Signed-off-by: Sanket Goswami Sanket.Goswami@amd.com Signed-off-by: Shyam Sundar S K Shyam-sundar.S-k@amd.com
merged to i2c/i2c-host-fixes.
Thanks, Andi
linux-stable-mirror@lists.linaro.org