All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephan Gerhold <stephan@gerhold.net>
To: Ulf Hansson <ulf.hansson@linaro.org>
Cc: "Rafael J . Wysocki" <rjw@rjwysocki.net>,
	Viresh Kumar <viresh.kumar@linaro.org>,
	Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
	Mark Brown <broonie@kernel.org>,
	Linux PM <linux-pm@vger.kernel.org>,
	Dmitry Osipenko <digetx@gmail.com>,
	Jonathan Hunter <jonathanh@nvidia.com>,
	Thierry Reding <thierry.reding@gmail.com>,
	Roja Rani Yarubandi <rojay@codeaurora.org>,
	Bjorn Andersson <bjorn.andersson@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	Stephen Boyd <sboyd@kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Rajendra Nayak <rnayak@codeaurora.org>
Subject: Re: [PATCH v2 4/4] PM: domains: Drop/restore performance state votes for devices at system PM
Date: Tue, 8 Jun 2021 14:53:05 +0200	[thread overview]
Message-ID: <YL9oMVqox7GVASen@gerhold.net> (raw)
In-Reply-To: <CAPDyKFp2dKFQpLMgazXumCxf=FHQ9bdadXUkGsjiAwniF8p2dw@mail.gmail.com>

Hi,

On Thu, Jun 03, 2021 at 12:20:57PM +0200, Ulf Hansson wrote:
> + Mark Brown, Dmitry Baryshkov
> 
> On Thu, 3 Jun 2021 at 11:34, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> >
> > Recent changes in genpd drops and restore performance state votes for
> > devices during runtime PM.
> >
> > For the similar reasons, but to avoid the same kind of boilerplate code in
> > device PM callbacks for system sleep in subsystems/drivers, let's drop and
> > restore performance states votes in genpd for the attached devices during
> > system sleep.
> >
> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> 
> After a second thought, it looks like we maybe should defer to apply
> this final patch of the series. At least until we figured out how to
> address the below issue:
> 
> So, I noticed that we have things like "regulator-fixed-domain", that
> uses "required-opps" to enable/disable a regulator through the
> dev_pm_set_performance_state() interface.

Not directly related to your concern, but related to another discussion
we had recently: To me, this looks mostly like another solution for
voting for performance states without doing full DVFS, also known as
assigned-performance-states [1] or required-opps on devices [2]. :)

It's just wrapped in a regulator interface here. Actually, if we
implement [2], the regulator-fixed-domain should mostly just become some
sort of simple wrapper around runtime PM for the regulator device, since
the required-opp might be applied automatically then.

[1]: https://lore.kernel.org/linux-arm-msm/1622095949-2014-1-git-send-email-rnayak@codeaurora.org/
[2]: https://lore.kernel.org/linux-arm-msm/YLYV3ov%2FiBffZMg4@gerhold.net/

> We likely don't want to drop the performance state internally in genpd
> when genpd_suspend_noirq() gets called, for the corresponding struct
> device for the regulator.
> 

So your concern is that the performance state is dropped during suspend
even though the regulator core thinks the regulator stays enabled?

I played with regulator-fixed-domain a bit and I would say this is
already broken (unless you rely on one of the side effects I mentioned
in [3]). The power domain gets powered off entirely during system
suspend, and then the performance state won't have any effect either.

I guess we would need some way to say that this device should only be
managed through runtime PM and never automatically suspended during
system suspend?

Stephan

[3]: https://lore.kernel.org/linux-pm/YLkOAyydZMnxkEy+@gerhold.net/

  parent reply	other threads:[~2021-06-08 12:53 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-03  9:34 [PATCH v2 0/4] PM: domains: Avoid boilerplate code for DVFS in subsystem/drivers Ulf Hansson
2021-06-03  9:34 ` [PATCH v2 1/4] PM: domains: Split code in dev_pm_genpd_set_performance_state() Ulf Hansson
2021-06-03  9:34 ` [PATCH v2 2/4] PM: domains: Return early if perf state is already set for the device Ulf Hansson
2021-06-03  9:34 ` [PATCH v2 3/4] PM: domains: Drop/restore performance state votes for devices at runtime PM Ulf Hansson
2021-06-03  9:55   ` Viresh Kumar
2021-06-03 10:31     ` Ulf Hansson
2021-06-03 11:17       ` Ulf Hansson
2021-06-04  3:53         ` Viresh Kumar
2021-06-04  7:45           ` Ulf Hansson
2021-06-07  4:47             ` Viresh Kumar
2021-06-09 12:25               ` Ulf Hansson
2021-06-03 19:02   ` Dmitry Osipenko
2021-06-03 19:08     ` Dmitry Osipenko
2021-06-04  7:20       ` Ulf Hansson
2021-06-03  9:34 ` [PATCH v2 4/4] PM: domains: Drop/restore performance state votes for devices at system PM Ulf Hansson
2021-06-03 10:20   ` Ulf Hansson
2021-06-03 11:15     ` Mark Brown
2021-06-03 13:48       ` Ulf Hansson
2021-06-08 12:53     ` Stephan Gerhold [this message]
2021-06-08 14:08       ` Ulf Hansson
2021-06-08 14:20         ` Mark Brown
2021-06-08 14:39           ` Ulf Hansson
2021-06-08 15:37         ` Stephan Gerhold
2021-06-03 11:12 ` [PATCH v2 0/4] PM: domains: Avoid boilerplate code for DVFS in subsystem/drivers Stephan Gerhold
2021-06-03 15:27   ` Ulf Hansson
2021-06-03 17:14     ` Stephan Gerhold
2021-06-04  7:18       ` Ulf Hansson
2021-06-04  8:23         ` Stephan Gerhold
2021-06-04 10:57           ` Ulf Hansson
2021-06-04 11:50             ` Stephan Gerhold
2021-06-11 16:42               ` Rafael J. Wysocki

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=YL9oMVqox7GVASen@gerhold.net \
    --to=stephan@gerhold.net \
    --cc=bjorn.andersson@linaro.org \
    --cc=broonie@kernel.org \
    --cc=digetx@gmail.com \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=jonathanh@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=rjw@rjwysocki.net \
    --cc=rnayak@codeaurora.org \
    --cc=rojay@codeaurora.org \
    --cc=sboyd@kernel.org \
    --cc=thierry.reding@gmail.com \
    --cc=ulf.hansson@linaro.org \
    --cc=vincent.guittot@linaro.org \
    --cc=viresh.kumar@linaro.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.