From: Tzung-Bi Shih <tzungbi@kernel.org>
To: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Cc: Bjorn Andersson <andersson@kernel.org>,
Mathieu Poirier <mathieu.poirier@linaro.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
Chen-Yu Tsai <wenst@chromium.org>,
linux-remoteproc@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-mediatek@lists.infradead.org
Subject: Re: [PATCH] remoteproc: mediatek: Unprepare SCP clock during system suspend
Date: Fri, 6 Feb 2026 03:36:22 +0000 [thread overview]
Message-ID: <aYVhtt_d0b22XxkV@google.com> (raw)
In-Reply-To: <a880d5d9-348e-4777-ae7f-69bdf7794e58@collabora.com>
On Thu, Feb 05, 2026 at 01:30:42PM +0100, AngeloGioacchino Del Regno wrote:
> Il 04/02/26 09:54, Tzung-Bi Shih ha scritto:
> > Prior to commit d935187cfb27 ("remoteproc: mediatek: Break lock
> > dependency to prepare_lock"), `scp->clk` was prepared and enabled only
> > when it needs to communicate with the SCP. The commit d935187cfb27
> > moved the prepare operation to remoteproc's prepare(), keeping the clock
> > prepared as long as the SCP is running.
> >
> > The power consumption due to the prolonged clock preparation can be
> > negligible when the system is running, as SCP is designed to be a very
> > power efficient processor.
> >
> > However, the clock remains prepared even when the system enters system
> > suspend. This prevents the underlying clock controller (and potentially
> > the parent PLLs) from shutting down, which increases power consumption
> > and may block the system from entering deep sleep states.
> >
> > Add suspend and resume callbacks. Unprepare the clock in suspend() if
> > it was active and re-prepare it in resume() to ensure the clock is
> > properly disabled during system suspend, while maintaining the "always
> > prepared" semantics while the system is active.
> >
> > Fixes: d935187cfb27 ("remoteproc: mediatek: Break lock dependency to prepare_lock")
> > Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
>
> Would be great if you could mention that in this driver, at the moment of writing,
> there is no .attach() callback, hence rproc->state can never be RPROC_ATTACHED (as
> in case that would also leave the clock prepared).
Thanks for your review. Add it in the commit message and code comment in
v2[1].
[1] https://lore.kernel.org/all/20260206033034.3031781-1-tzungbi@kernel.org/
> > +#ifdef CONFIG_PM_SLEEP
>
> ...you don't need this ifdef as when CONFIG_PM_SLEEP is not set the macro
> SET_SYSTEM_SLEEP_PM_OPS is stubbed out (check pm.h).
>
> After removing the ifdef, there'll be something to change, specifically:
>
> > +static int scp_suspend(struct device *dev)
>
> static int __maybe_unused scp_suspend(struct device *dev)
> {
>
> > +{
> > + struct mtk_scp *scp = dev_get_drvdata(dev);
> > + struct rproc *rproc = scp->rproc;
> > +
> > + /* Only unprepare if the SCP is running and holding the clock */
> > + if (rproc->state == RPROC_RUNNING)
> > + clk_unprepare(scp->clk);
> > + return 0;
> > +}
> > +
> > +static int scp_resume(struct device *dev)
>
> static int __maybe_unused scp_resume(struct device *dev)
> {
Fix them in v2 too.
prev parent reply other threads:[~2026-02-06 3:36 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-04 8:54 [PATCH] remoteproc: mediatek: Unprepare SCP clock during system suspend Tzung-Bi Shih
2026-02-05 12:30 ` AngeloGioacchino Del Regno
2026-02-06 3:36 ` Tzung-Bi Shih [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aYVhtt_d0b22XxkV@google.com \
--to=tzungbi@kernel.org \
--cc=andersson@kernel.org \
--cc=angelogioacchino.delregno@collabora.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-remoteproc@vger.kernel.org \
--cc=mathieu.poirier@linaro.org \
--cc=matthias.bgg@gmail.com \
--cc=wenst@chromium.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.