]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
accel/amdxdna: Clear mailbox interrupt register during channel creation
authorLizhi Hou <lizhi.hou@amd.com>
Fri, 7 Nov 2025 18:11:15 +0000 (10:11 -0800)
committerLizhi Hou <lizhi.hou@amd.com>
Thu, 13 Nov 2025 16:36:08 +0000 (08:36 -0800)
The mailbox interrupt register is not always cleared when a mailbox channel
is created. This can leave stale interrupt states from previous operations.

Fix this by explicitly clearing the interrupt register in the mailbox
channel creation function.

Fixes: b87f920b9344 ("accel/amdxdna: Support hardware mailbox")
Reviewed-by: Maciej Falkowski <maciej.falkowski@linux.intel.com>
Signed-off-by: Lizhi Hou <lizhi.hou@amd.com>
Link: https://patch.msgid.link/20251107181115.1293158-1-lizhi.hou@amd.com
drivers/accel/amdxdna/amdxdna_mailbox.c

index 24258dcc18ebfcd3408787e3dcf34031a76a6fe3..858df97cd3fbd48f7c3fedd66eb27eed46e5f908 100644 (file)
@@ -516,6 +516,7 @@ xdna_mailbox_create_channel(struct mailbox *mb,
        }
 
        mb_chann->bad_state = false;
+       mailbox_reg_write(mb_chann, mb_chann->iohub_int_addr, 0);
 
        MB_DBG(mb_chann, "Mailbox channel created (irq: %d)", mb_chann->msix_irq);
        return mb_chann;