[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20241002122232.194245-1-ulf.hansson@linaro.org>
Date: Wed, 2 Oct 2024 14:22:21 +0200
From: Ulf Hansson <ulf.hansson@...aro.org>
To: Viresh Kumar <vireshk@...nel.org>,
Nishanth Menon <nm@...com>,
Stephen Boyd <sboyd@...nel.org>
Cc: "Rafael J . Wysocki" <rafael@...nel.org>,
Dikshita Agarwal <quic_dikshita@...cinc.com>,
Vedang Nagar <quic_vnagar@...cinc.com>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <quic_kdybcio@...cinc.com>,
Nikunj Kela <nkela@...cinc.com>,
Bryan O'Donoghue <bryan.odonoghue@...aro.org>,
Thierry Reding <thierry.reding@...il.com>,
Mikko Perttunen <mperttunen@...dia.com>,
Jonathan Hunter <jonathanh@...dia.com>,
Stephan Gerhold <stephan@...hold.net>,
Ilia Lin <ilia.lin@...nel.org>,
Stanimir Varbanov <stanimir.k.varbanov@...il.com>,
Vikash Garodia <quic_vgarodia@...cinc.com>,
Ulf Hansson <ulf.hansson@...aro.org>,
linux-pm@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: [PATCH v4 00/11] OPP/pmdomain: Simplify assignment of required_devs for required OPPs
Note, due to dependencies this whole series is best funneled together through my
pmdomain tree. Thus I am looking acks/reviews/tests.
Changes in v4:
- We realized that genpd can't solely be responsible for assigning
required-devs. In particular in the multiple PM domain case, we need
platform code to specify the index for a device's required OPPs [1].
In this version we take that into account by extending
dev_pm_domain_attach_list() to cope with required OPPs too.
[1]
https://lore.kernel.org/all/CAPDyKFp2s4mPtdU6pMzPbBqqLFxZa1esrXyqXL6UJO-gU-PsVw@mail.gmail.com/
Through dev_pm_opp_set_config() the *_opp_attach_genpd() allows consumer
drivers to attach a device to its PM domains. Their corresponding virtual
devices that are created by genpd during attach, are later being assigned
as the required_devs for the corresponding required OPPs. In principle,
this works fine.
However, attaching a device to its PM domains is in general better done
with dev_pm_domain_attach|detach_list(). To avoid having two different ways
to manage this, this series prepares for the removal of *_opp_attach_genpd()
to finally also remove it.
Kind regards
Ulf Hansson
Ulf Hansson (11):
Revert "drm/tegra: gr3d: Convert into
dev_pm_domain_attach|detach_list()"
PM: domains: Fix alloc/free in dev_pm_domain_attach|detach_list()
OPP: Rework _set_required_devs() to manage a single device per call
PM: domains: Support required OPPs in dev_pm_domain_attach_list()
pmdomain: core: Manage the default required OPP from a separate
function
pmdomain: core: Set the required dev for a required OPP during genpd
attach
OPP: Drop redundant code in _link_required_opps()
drm/tegra: gr3d: Convert into devm_pm_domain_attach_list()
media: venus: Convert into devm_pm_domain_attach_list() for OPP PM
domain
cpufreq: qcom-nvmem: Convert to dev_pm_domain_attach|detach_list()
OPP: Drop redundant *_opp_attach|detach_genpd()
drivers/base/power/common.c | 44 +++-
drivers/cpufreq/qcom-cpufreq-nvmem.c | 82 +++-----
drivers/gpu/drm/tegra/gr3d.c | 11 +-
drivers/media/platform/qcom/venus/core.c | 8 +-
drivers/media/platform/qcom/venus/core.h | 6 +-
.../media/platform/qcom/venus/pm_helpers.c | 44 +---
drivers/opp/core.c | 198 +++++-------------
drivers/opp/of.c | 39 +---
drivers/opp/opp.h | 5 +-
drivers/pmdomain/core.c | 76 +++++--
include/linux/pm_domain.h | 9 +
include/linux/pm_opp.h | 42 +---
12 files changed, 210 insertions(+), 354 deletions(-)
--
2.34.1
Powered by blists - more mailing lists