[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <cover.1697710527.git.viresh.kumar@linaro.org>
Date: Thu, 19 Oct 2023 15:51:59 +0530
From: Viresh Kumar <viresh.kumar@...aro.org>
To: Nishanth Menon <nm@...com>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Stephen Boyd <sboyd@...nel.org>,
Viresh Kumar <vireshk@...nel.org>
Cc: Viresh Kumar <viresh.kumar@...aro.org>, linux-pm@...r.kernel.org,
Vincent Guittot <vincent.guittot@...aro.org>,
Ulf Hansson <ulf.hansson@...aro.org>,
Stephan Gerhold <stephan.gerhold@...nkonzept.com>,
Konrad Dybcio <konrad.dybcio@...aro.org>,
Manivannan Sadhasivam <manivannan.sadhasivam@...aro.org>,
linux-kernel@...r.kernel.org
Subject: [RFT PATCH 0/2] OPP: Simplify required-opp handling
Hello,
I wasn't able to test this locally (despite trying to hack it around) and need
help from someone who is `virt_devs` field of `struct dev_pm_opp_config`.
I asked Mani earlier to test this, which he did, but unfortunately he could only
half test it as the platform didn't have `virt_devs` configured.
Pushed here:
git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm.git opp/required-opps
-------------------------8<-------------------------
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.
--
Viresh
Viresh Kumar (2):
OPP: Use _set_opp_level() for single genpd case
OPP: Call dev_pm_opp_set_opp() for required OPPs
drivers/opp/core.c | 144 ++++++++++++++++++-----------------------
drivers/opp/of.c | 35 +++++++---
drivers/opp/opp.h | 8 +--
include/linux/pm_opp.h | 7 +-
4 files changed, 98 insertions(+), 96 deletions(-)
--
2.31.1.272.g89b43f80a514
Powered by blists - more mailing lists