From: Ulf Hansson <ulf.hansson@linaro.org>
To: Jon Hunter <jonathanh@nvidia.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>,
"Rafael J. Wysocki" <rjw@rjwysocki.net>,
Kevin Hilman <khilman@kernel.org>,
Rajendra Nayak <rnayak@codeaurora.org>,
Stanimir Varbanov <stanimir.varbanov@linaro.org>,
Stephen Boyd <sboyd@codeaurora.org>,
Marek Szyprowski <m.szyprowski@samsung.com>,
Linux PM list <linux-pm@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-tegra@vger.kernel.org" <linux-tegra@vger.kernel.org>,
Bjorn Andersson <bjorn.andersson@linaro.org>
Subject: Re: [RFC PATCH 0/3] PM / Domains: Add support for devices that require multiple domains
Date: Mon, 13 Mar 2017 12:45:24 +0100 [thread overview]
Message-ID: <CAPDyKFp20tDickB9mF1ZSRUvYBEsfATysENeMzGV9O8KXH2wig@mail.gmail.com> (raw)
In-Reply-To: <f4b3a93e-e29f-6fc6-6e7f-8c51081cbe15@nvidia.com>
+Björn
On 13 March 2017 at 10:37, Jon Hunter <jonathanh@nvidia.com> wrote:
> Hi Rafael, Kevin, Ulf,
>
> Looks like there is still some interest/needs in/for this. Any thoughts
> on how we can move this forward?
At the Linaro Connect last week, I was talking to Björn, Rajendra and
Stephen more about these related issues.
It definitely seems like we need to progress with this somehow,
meaning we need a solution for being able to associate a device with
more than one PM domain. In that context, I don't think genpd based on
its current design, is a good fit to solve the problem.
Instead I think we need something entirely new (perhaps some code can
be borrowed from genpd), which is more similar to the clock/regulator
framework. In other words, what you also were suggesting in a earlier
reply.
In this way, the driver/subsystem gains full flexibility of managing
its device's PM domains, which seems like the best future-proof
solution.
Kind regards
Uffe
>
> Cheers
> Jon
>
> On 28/02/17 15:29, Geert Uytterhoeven wrote:
>> Hi Jon,
>>
>> On Tue, Feb 28, 2017 at 4:18 PM, Jon Hunter <jonathanh@nvidia.com> wrote:
>>> On 20/09/16 11:28, Jon Hunter wrote:
>>>> The Tegra124/210 XUSB subsystem (that consists of both host and device
>>>> controllers) is partitioned across 3 PM domains which are:
>>>> - XUSBA: Superspeed logic (for USB 3.0)
>>>> - XUSBB: Device controller
>>>> - XUSBC: Host controller
>>>>
>>>> These power domains are not nested and can be powered-up and down
>>>> independently of one another. In practice different scenarios require
>>>> different combinations of the power domains, for example:
>>>> - Superspeed host: XUSBA and XUSBC
>>>> - Superspeed device: XUSBA and XUSBB
>>>>
>>>> Although it could be possible to logically nest both the XUSBB and XUSBC
>>>> domains under the XUSBA, superspeed may not always be used/required and
>>>> so this would keep it on unnecessarily.
>>>>
>>>> Given that Tegra uses device-tree for describing the hardware, it would
>>>> be ideal that the device-tree 'power-domains' property for generic PM
>>>> domains could be extended to allow more than one PM domain to be
>>>> specified. For example, define the following the Tegra210 xHCI device ...
>>>>
>>>> usb@70090000 {
>>>> compatible = "nvidia,tegra210-xusb";
>>>> ...
>>>> power-domains = <&pd_xusbhost>, <&pd_xusbss>;
>>>> };
>>>>
>>>> This RFC extends the generic PM domain framework to allow a device to
>>>> define more than one PM domain in the device-tree 'power-domains'
>>>> property.
>>>
>>> I wanted to kick this thread again now in the new year and see if there
>>> is still some interest in pursuing this?
>>>
>>> There is still very much a need from a Tegra perspective. I have put all
>>> those who responded on TO.
>>>
>>> I know that a lot of time has passed since we discuss this and so if you
>>> are scratching your head wondering what I am harping on about,
>>> essentially with this RFC I was looking for a way to support devices
>>> that require multiple power domains where the domains do not have a
>>> parent-child relationship and so not are nested in anyway.
>>>
>>> If you need me to elaborate on the need for this, I am happy to do this.
>>> My take away from when we discussed this last year, was that there was a
>>> need for this.
>>
>> It definitely makes sense to me, as the "power-domains" DT binding is not
>> limited to plain "power areas", but may refer to clock domains, too
>> (cfr. the Linux "PM Domain" notion).
>>
>> For my (Renesas) use case, we have devices that are part of both a power
>> area and a clock domain. Currently this is handled by the power area driver
>> calling into the clock driver.
>>
>> Thanks!
>>
>> Gr{oetje,eeting}s,
>>
>> Geert
>>
>> --
>> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
>>
>> In personal conversations with technical people, I call myself a hacker. But
>> when I'm talking to journalists I just say "programmer" or something like that.
>> -- Linus Torvalds
>>
>
> --
> nvpublic
next prev parent reply other threads:[~2017-03-13 11:45 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-20 10:28 [RFC PATCH 0/3] PM / Domains: Add support for devices that require multiple domains Jon Hunter
2016-09-20 10:28 ` [RFC PATCH 1/3] PM / Domains: Add helper functions for finding and attaching PM domains Jon Hunter
2016-09-20 10:28 ` [RFC PATCH 2/3] PM / Domains: Add support for devices with multiple domains Jon Hunter
2016-09-20 17:54 ` Jon Hunter
2016-09-21 8:53 ` Geert Uytterhoeven
2016-09-21 10:01 ` Jon Hunter
2016-09-21 14:37 ` Jon Hunter
2016-09-21 14:57 ` Geert Uytterhoeven
2016-09-23 12:57 ` Jon Hunter
2016-09-23 14:27 ` Geert Uytterhoeven
2016-09-30 8:05 ` Jon Hunter
2016-10-07 9:14 ` Kevin Hilman
2016-10-10 11:24 ` Jon Hunter
2016-09-20 10:28 ` [RFC PATCH 3/3] dt-bindings: Add support for devices with multiple PM domains Jon Hunter
2016-10-06 6:04 ` [RFC PATCH 0/3] PM / Domains: Add support for devices that require multiple domains Rajendra Nayak
2016-10-06 8:25 ` Jon Hunter
2016-10-06 8:43 ` Rajendra Nayak
2016-10-31 10:44 ` Jon Hunter
2016-11-02 8:56 ` Rajendra Nayak
2016-11-16 13:11 ` Ulf Hansson
2016-11-17 2:31 ` Rajendra Nayak
2016-11-17 15:39 ` Stanimir Varbanov
2016-11-22 13:05 ` Ulf Hansson
2016-11-23 3:48 ` Rajendra Nayak
2016-10-06 12:22 ` Ulf Hansson
2016-10-10 11:18 ` Jon Hunter
2016-10-10 14:04 ` Ulf Hansson
2016-10-11 9:15 ` Jon Hunter
2016-11-03 14:20 ` Jon Hunter
2016-11-16 10:48 ` Jon Hunter
2016-11-16 12:53 ` Rafael J. Wysocki
2016-11-22 11:12 ` Jon Hunter
2016-11-22 13:31 ` Ulf Hansson
2016-11-22 14:28 ` Jon Hunter
2016-11-22 18:26 ` Kevin Hilman
2016-11-22 18:41 ` Jon Hunter
2016-11-24 2:30 ` Stephen Boyd
2016-11-29 11:33 ` Marek Szyprowski
2016-12-15 11:38 ` Jon Hunter
2016-11-22 21:55 ` Rafael J. Wysocki
2016-11-23 9:29 ` Jon Hunter
2016-11-23 13:15 ` Rafael J. Wysocki
2017-02-28 15:18 ` Jon Hunter
2017-02-28 15:29 ` Geert Uytterhoeven
2017-03-13 9:37 ` Jon Hunter
2017-03-13 11:45 ` Ulf Hansson [this message]
2017-03-13 14:09 ` Jon Hunter
2017-03-13 14:19 ` Geert Uytterhoeven
2017-03-13 14:27 ` Jon Hunter
2017-03-13 14:38 ` Geert Uytterhoeven
2017-03-13 14:51 ` Jon Hunter
2017-03-13 14:42 ` Ulf Hansson
2017-03-15 8:57 ` Jon Hunter
2017-03-15 3:47 ` Nayak, Rajendra
2017-03-15 9:03 ` Jon Hunter
2017-03-01 6:19 ` Rajendra Nayak
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=CAPDyKFp20tDickB9mF1ZSRUvYBEsfATysENeMzGV9O8KXH2wig@mail.gmail.com \
--to=ulf.hansson@linaro.org \
--cc=bjorn.andersson@linaro.org \
--cc=geert@linux-m68k.org \
--cc=jonathanh@nvidia.com \
--cc=khilman@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=m.szyprowski@samsung.com \
--cc=rjw@rjwysocki.net \
--cc=rnayak@codeaurora.org \
--cc=sboyd@codeaurora.org \
--cc=stanimir.varbanov@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).