All of lore.kernel.org
 help / color / mirror / Atom feed
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Kevin Hilman <khilman@baylibre.com>
Cc: Rafael Wysocki <rjw@rjwysocki.net>,
	Ulf Hansson <ulf.hansson@linaro.org>, Nishanth Menon <nm@ti.com>,
	Lists linaro-kernel <linaro-kernel@lists.linaro.org>,
	"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
	Stephen Boyd <sboyd@codeaurora.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	"Nayak, Rajendra" <rnayak@codeaurora.org>,
	Lina Iyer <lina.iyer@linaro.org>
Subject: Re: [PATCH V3 0/7] PM / Domains: Implement domain performance states
Date: Wed, 15 Mar 2017 16:19:57 +0530	[thread overview]
Message-ID: <CAKohpomJj8543r7DARW9LXoL1QERFUAkdG0qXsMf76+zbR7QJw@mail.gmail.com> (raw)
In-Reply-To: <20170313103933.GA3102@vireshk-i7>

On 13 March 2017 at 16:09, Viresh Kumar <viresh.kumar@linaro.org> wrote:
> 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?

Ulf/Kevin,

I am currently blocked on this decision. Will it be possible for you guys
to suggest something, so that I can send V3 soon ?

The most ideal solution seems to be adding a device structure in genpd
structure and add a genpd bus as well probably.

--
viresh

      reply	other threads:[~2017-03-15 10:50 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-24  9:06 [PATCH V3 0/7] PM / Domains: Implement domain performance states Viresh Kumar
2017-02-24  9:06 ` [PATCH V3 1/7] PM / Domains: Introduce "performance-states" binding Viresh Kumar
2017-02-24  9:06   ` Viresh Kumar
2017-02-28  0:31   ` Rob Herring
2017-02-28  0:31     ` Rob Herring
2017-02-28  5:36     ` Viresh Kumar
2017-02-28  5:36       ` Viresh Kumar
2017-02-24  9:06 ` [PATCH V3 2/7] PM / OPP: Introduce "domain-performance-state" binding to OPP nodes Viresh Kumar
2017-02-24  9:06   ` Viresh Kumar
2017-02-28  0:39   ` Rob Herring
2017-02-28  0:39     ` Rob Herring
2017-02-28  6:57     ` Viresh Kumar
2017-02-28  6:57       ` Viresh Kumar
2017-02-28 14:10       ` Rob Herring
2017-02-28 14:10         ` Rob Herring
2017-02-28 15:14         ` Ulf Hansson
2017-02-28 15:14           ` Ulf Hansson
2017-02-28 15:52           ` Rob Herring
2017-02-28 15:52             ` Rob Herring
2017-02-28 19:13             ` Geert Uytterhoeven
2017-03-01  6:14             ` Viresh Kumar
2017-03-01  8:45               ` Geert Uytterhoeven
2017-03-01  8:54                 ` Viresh Kumar
2017-03-01  6:27             ` Rajendra Nayak
2017-03-01 23:13               ` Rob Herring
2017-03-02  3:30                 ` Rajendra Nayak
2017-03-01  6:12         ` Viresh Kumar
2017-02-24  9:06 ` [PATCH V3 3/7] PM / QOS: Keep common notifier list for genpd constraints Viresh Kumar
2017-02-24  9:06 ` [PATCH V3 4/7] PM / QOS: Add DEV_PM_QOS_PERFORMANCE request Viresh Kumar
2017-02-24  9:06 ` [PATCH V3 5/7] PM / domain: Register for PM QOS performance notifier Viresh Kumar
2017-02-24  9:06 ` [PATCH V3 6/7] PM / Domains: Allow domain performance states to be read from DT Viresh Kumar
2017-02-24  9:06 ` [PATCH V3 7/7] PM / OPP: Add support to parse domain-performance-state Viresh Kumar
2017-03-10 20:38 ` [PATCH V3 0/7] PM / Domains: Implement domain performance states Kevin Hilman
2017-03-13 10:39   ` Viresh Kumar
2017-03-15 10:49     ` Viresh Kumar [this message]

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=CAKohpomJj8543r7DARW9LXoL1QERFUAkdG0qXsMf76+zbR7QJw@mail.gmail.com \
    --to=viresh.kumar@linaro.org \
    --cc=khilman@baylibre.com \
    --cc=lina.iyer@linaro.org \
    --cc=linaro-kernel@lists.linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=nm@ti.com \
    --cc=rjw@rjwysocki.net \
    --cc=rnayak@codeaurora.org \
    --cc=robh+dt@kernel.org \
    --cc=sboyd@codeaurora.org \
    --cc=ulf.hansson@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.