]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
irqchip/qcom-mpm: Add missing mailbox TX done acknowledgment
authorJassi Brar <jassisinghbrar@gmail.com>
Sun, 22 Mar 2026 17:15:33 +0000 (12:15 -0500)
committerThomas Gleixner <tglx@kernel.org>
Thu, 26 Mar 2026 15:11:53 +0000 (16:11 +0100)
The mbox_client for qcom-mpm sends NULL doorbell messages via
mbox_send_message() but never signals TX completion.

Set knows_txdone=true and call mbox_client_txdone() after a successful
send, matching the pattern used by other Qualcomm mailbox clients (smp2p,
smsm, qcom_aoss etc).

Fixes: a6199bb514d8a6 "irqchip: Add Qualcomm MPM controller driver"
Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/20260322171533.608436-1-jassisinghbrar@gmail.com
drivers/irqchip/irq-qcom-mpm.c

index 83f31ea657b74a77ab58b3e85d75056ecb790483..181320528a47ac1bde6cf7d2d0a9f79499990092 100644 (file)
@@ -306,6 +306,8 @@ static int mpm_pd_power_off(struct generic_pm_domain *genpd)
        if (ret < 0)
                return ret;
 
+       mbox_client_txdone(priv->mbox_chan, 0);
+
        return 0;
 }
 
@@ -434,6 +436,7 @@ static int qcom_mpm_probe(struct platform_device *pdev, struct device_node *pare
        }
 
        priv->mbox_client.dev = dev;
+       priv->mbox_client.knows_txdone = true;
        priv->mbox_chan = mbox_request_channel(&priv->mbox_client, 0);
        if (IS_ERR(priv->mbox_chan)) {
                ret = PTR_ERR(priv->mbox_chan);