[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170313103933.GA3102@vireshk-i7>
Date: Mon, 13 Mar 2017 16:09:33 +0530
From: Viresh Kumar <viresh.kumar@...aro.org>
To: Kevin Hilman <khilman@...libre.com>
Cc: Rafael Wysocki <rjw@...ysocki.net>, ulf.hansson@...aro.org,
Nishanth Menon <nm@...com>, linaro-kernel@...ts.linaro.org,
linux-pm@...r.kernel.org, Stephen Boyd <sboyd@...eaurora.org>,
linux-kernel@...r.kernel.org, robh+dt@...nel.org,
rnayak@...eaurora.org, lina.iyer@...aro.org
Subject: Re: [PATCH V3 0/7] PM / Domains: Implement domain performance states
On 10-03-17, 12:38, Kevin Hilman wrote:
> Why limit it to just voltage levels.
>
> As I suggested earlier, I think this should use OPPs. Remember that a
> PM domain is not limited to a hardware power domain, but is just a
> grouping mechanism for devices that share some PM properties. As
> mentioned by Geert, this can also be a clock domain, where frequencies
> would make sense as well. One can imagine using this type of PM domain
> to manage an interconnect/bus which has scalable voltage/frequencies as
> well.
Okay, I tried to do that change today and am blocked a bit right now.
The OPP core and all of its APIs/interfaces have dependency on the
"struct device" for their working. It gets the of_node from it, stores
the device pointer to manage cases where multiple devices share OPP
table, uses it to get clk and regulators.
But the "genpd" structure doesn't have a 'struct device' associated
with it. How should I make both of them work together?
I tried to create separate helpers that don't accept 'dev', but that
is also not good. Just too much redundant code everywhere.
Would creating a 'dev' structure within 'generic_pm_domain' be
acceptable? Or should we ask the domain-drivers to call something like
of_genpd_parse_idle_states(), with a fake 'dev' structure which has
its of_node initialized? Or maybe move that hack within the OPP-core
API, which can create a dev structure at runtime for the genpd passed
to it and get the OPP table out?
--
viresh
Powered by blists - more mailing lists