]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mailbox: mtk-cmdq: Switch to pm_runtime_put_autosuspend()
authorSakari Ailus <sakari.ailus@linux.intel.com>
Wed, 25 Jun 2025 08:15:01 +0000 (11:15 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 19 Oct 2025 14:33:41 +0000 (16:33 +0200)
[ Upstream commit 472f8a3fccbb579cb98c1821da4cb9cbd51ee3e4 ]

__pm_runtime_put_autosuspend() was meant to be used by callers that needed
to put the Runtime PM usage_count without marking the device's last busy
timestamp. It was however seen that the Runtime PM autosuspend related
functions should include that call. Thus switch the driver to
use pm_runtime_put_autosuspend().

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
Stable-dep-of: 3f39f5652037 ("mailbox: mtk-cmdq: Remove pm_runtime APIs from cmdq_mbox_send_data()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mailbox/mtk-cmdq-mailbox.c

index 4e093b58fb7b549d4e48e62d4a864d67163e0a34..d24f71819c3d656e5b16d74ddef4c235b5b19729 100644 (file)
@@ -390,7 +390,7 @@ static int cmdq_mbox_send_data(struct mbox_chan *chan, void *data)
 
        task = kzalloc(sizeof(*task), GFP_ATOMIC);
        if (!task) {
-               __pm_runtime_put_autosuspend(cmdq->mbox.dev);
+               pm_runtime_put_autosuspend(cmdq->mbox.dev);
                return -ENOMEM;
        }
 
@@ -440,7 +440,7 @@ static int cmdq_mbox_send_data(struct mbox_chan *chan, void *data)
        list_move_tail(&task->list_entry, &thread->task_busy_list);
 
        pm_runtime_mark_last_busy(cmdq->mbox.dev);
-       __pm_runtime_put_autosuspend(cmdq->mbox.dev);
+       pm_runtime_put_autosuspend(cmdq->mbox.dev);
 
        return 0;
 }
@@ -488,7 +488,7 @@ done:
        spin_unlock_irqrestore(&thread->chan->lock, flags);
 
        pm_runtime_mark_last_busy(cmdq->mbox.dev);
-       __pm_runtime_put_autosuspend(cmdq->mbox.dev);
+       pm_runtime_put_autosuspend(cmdq->mbox.dev);
 }
 
 static int cmdq_mbox_flush(struct mbox_chan *chan, unsigned long timeout)
@@ -528,7 +528,7 @@ static int cmdq_mbox_flush(struct mbox_chan *chan, unsigned long timeout)
 out:
        spin_unlock_irqrestore(&thread->chan->lock, flags);
        pm_runtime_mark_last_busy(cmdq->mbox.dev);
-       __pm_runtime_put_autosuspend(cmdq->mbox.dev);
+       pm_runtime_put_autosuspend(cmdq->mbox.dev);
 
        return 0;
 
@@ -543,7 +543,7 @@ wait:
                return -EFAULT;
        }
        pm_runtime_mark_last_busy(cmdq->mbox.dev);
-       __pm_runtime_put_autosuspend(cmdq->mbox.dev);
+       pm_runtime_put_autosuspend(cmdq->mbox.dev);
        return 0;
 }