public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH V3 0/3]  OPP: Simplify required-opp handling
@ 2023-11-16 10:43 Viresh Kumar
  2023-11-16 10:43 ` [PATCH V3 1/3] OPP: Use _set_opp_level() for single genpd case Viresh Kumar
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Viresh Kumar @ 2023-11-16 10:43 UTC (permalink / raw)
  To: Ulf Hansson, Stephan Gerhold, Nishanth Menon, Rafael J. Wysocki,
	Stephen Boyd, Viresh Kumar
  Cc: Viresh Kumar, linux-pm, Vincent Guittot, Konrad Dybcio,
	Manivannan Sadhasivam, linux-kernel

Hello,

Configuring the required OPP was never properly implemented, we just
took an exception for genpds and configured them directly, while leaving
out all other required OPP types.

Now that a standard call to dev_pm_opp_set_opp() takes care of
configuring the opp->level too, the special handling for genpds can be
avoided by simply calling dev_pm_opp_set_opp() for the required OPPs,
which shall eventually configure the corresponding level for genpds.

This also makes it possible for us to configure other type of required
OPPs (no concrete users yet though), via the same path. This is how
other frameworks take care of parent nodes, like clock, regulators, etc,
where we recursively call the same helper.

Pushed here:

git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm.git opp/required-opps

V2->V3:
- Dropped patch 1/3, merged.
- Added a new commit to avoid propagation and a WARN() for parent genpd case.

V1->V2:
- Support opp-level 0, drop vote i.e..
- Fix OPP pointer while calling dev_pm_opp_set_opp() recursively.
- Minor checks and fixes.
- Add Reviewed-by from Ulf.

--
Viresh

Viresh Kumar (3):
  OPP: Use _set_opp_level() for single genpd case
  OPP: Call dev_pm_opp_set_opp() for required OPPs
  OPP: Don't set OPP recursively for a parent genpd

 drivers/opp/core.c     | 180 ++++++++++++++++++++++-------------------
 drivers/opp/of.c       |  49 ++++++++---
 drivers/opp/opp.h      |   8 +-
 include/linux/pm_opp.h |   7 +-
 4 files changed, 144 insertions(+), 100 deletions(-)

-- 
2.31.1.272.g89b43f80a514


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-11-28 10:38 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-16 10:43 [PATCH V3 0/3] OPP: Simplify required-opp handling Viresh Kumar
2023-11-16 10:43 ` [PATCH V3 1/3] OPP: Use _set_opp_level() for single genpd case Viresh Kumar
2023-11-16 10:43 ` [PATCH V3 2/3] OPP: Call dev_pm_opp_set_opp() for required OPPs Viresh Kumar
2023-11-16 10:43 ` [PATCH V3 3/3] OPP: Don't set OPP recursively for a parent genpd Viresh Kumar
2023-11-22 14:26   ` Ulf Hansson
2023-11-28 10:29 ` [PATCH V3 0/3] OPP: Simplify required-opp handling Stephan Gerhold
2023-11-28 10:34   ` Viresh Kumar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox