]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
i2c: amd-asf: Fix EOI register write to enable successive interrupts
authorShyam Sundar S K <Shyam-sundar.S-k@amd.com>
Wed, 19 Feb 2025 13:57:47 +0000 (19:27 +0530)
committerAndi Shyti <andi.shyti@kernel.org>
Wed, 26 Feb 2025 22:28:41 +0000 (23:28 +0100)
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>
Fixes: 9b25419ad397 ("i2c: amd-asf: Add routine to handle the ASF slave process")
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20250219135747.3251182-1-Shyam-sundar.S-k@amd.com
drivers/i2c/busses/i2c-amd-asf-plat.c

index 7512614bf4b7339e39e952e29f9b57fefaa3d595..93ebec162c6ddb3bcac0e9fada306e8261664184 100644 (file)
@@ -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;
 }