linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kevin Hilman <khilman@ti.com>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Arnd Bergmann <arnd@arndb.de>,
	devicetree-discuss@lists.ozlabs.org,
	Linux PM list <linux-pm@vger.kernel.org>,
	Mark Brown <broonie@opensource.wolfsonmicro.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Matthew Garrett <mjg59@srcf.ucam.org>,
	Magnus Damm <magnus.damm@gmail.com>,
	Grant Likely <grant.likely@secretlab.ca>,
	"Linux-sh list" <linux-sh@vger.kernel.org>,
	Benoit Cousson <b-cousson@ti.com>
Subject: Re: [RFC][PATCH 0/14] PM / shmobile: Pass power domain information via DT (was: Re: [RFD] PM: Device tree representation of power domains)
Date: Wed, 25 Jul 2012 17:38:35 -0700	[thread overview]
Message-ID: <87vchb4ar8.fsf@ti.com> (raw)
In-Reply-To: <201207260032.40159.rjw@sisk.pl> (Rafael J. Wysocki's message of "Thu, 26 Jul 2012 00:32:39 +0200")

"Rafael J. Wysocki" <rjw@sisk.pl> writes:

> On Wednesday, July 25, 2012, Arnd Bergmann wrote:
>> On Tuesday 24 July 2012, Rafael J. Wysocki wrote:
>> > On Tuesday, July 24, 2012, Arnd Bergmann wrote:
>> > > On Tuesday 24 July 2012, Rafael J. Wysocki wrote:
>> > > > On Tuesday, July 24, 2012, Arnd Bergmann wrote:
>> > > > > On Saturday 21 July 2012, Rafael J. Wysocki wrote:
>> > > 
>> > > > > 
>> > > > > Sorry for taking so long to reply. I am really not that familiar with the
>> > > > > power domain requirements, but I do have two comments on your approach:
>> > > > > 
>> > > > > * I think when we want to add a generic concept to the device tree such
>> > > > >   as power domains, we should always make it specified in a generic way.
>> > > > 
>> > > > Do we really want that?  I'm a bit skeptical, because apparently nobody
>> > > > cares, as the (zero) response to this patchset evidently indicates and
>> > > > since nobody cares, it's probably better not to add such "generic" things
>> > > > just yet.

Sorry to jump in late, but it's been another busy dev cycle and I
haven't had the time to look at this series in detail.  But just so you
know that somebody cares, we're also interested in bindings that will be
useful on other SoCs for PM domains.

However, since OMAP powerdomain support pre-dates generic powerdomains ,
the "generic" power domains aren't quite generic enough get for OMAP,
and I haven't had the time to extend the generic code, we haven't yet
moved to generic powerdomains.

>> > > 
>> > > Well, the trouble with bindings is that they are much harder to change
>> > > later, at least in incompatible ways. 
>> > 
>> > Hmm, so I think you wanted to say that it might be burdensome to retain the
>> > code handling the old binding once we had started to use a new generic one.
>> > 
>> > I can agree with that, but that's quite similar to user space interfaces.
>> > Once we've exposed a user space interface of some kind and someone starts
>> > to use it, we'll have to maintain it going forward for the user in question.
>> > However, there is a way to deprecate old user space interfaces and it has
>> > happened.
>> > 
>> > In this particular case the burden would be on Renesas, but I don't think it
>> > would affect anybody else.
>> 
>> [adding devicetree-discuss@lists.ozlabs.org]
>> 
>> In case of user space interfaces, we also try very hard to avoid cases
>> where we know that we will have to change things later.
>
> [Cough, cough]  Yeah, sure.  Except that that's rather difficult to anticipate
> usually.
>
>> I don't think it's that hard to define a generic binding here, we just
>> need to make sure it's extensible.
>> 
>> One thing I would like to avoid is having to add to every single
>> device binding two separate optional properties defined like
>> 
>> diff --git a/Documentation/devicetree/bindings/mmc/mmci.txt b/Documentation/devicetree/bindings/mmc/mmci.txt
>> index 2b584ca..353152e 100644
>> --- a/Documentation/devicetree/bindings/mmc/mmci.txt
>> +++ b/Documentation/devicetree/bindings/mmc/mmci.txt
>> @@ -13,3 +13,9 @@ Required properties:
>>  Optional properties:
>>  - mmc-cap-mmc-highspeed  : indicates whether MMC is high speed capable
>>  - mmc-cap-sd-highspeed   : indicates whether SD is high speed capable
>> +- pm-domain		 : a phandle pointing to the power domain
>> +			   controlling this device
>> +			   See ../pm-domain/generic.txt
>> +- renesas,pm-domain	 : a string with the name of the power domain
>> +			   controlling this device.
>> +			   See ../pm-domain/renesas.txt
>> 
>> Even if you say that the burden is only on Renesas to maintain all those
>> changes to every binding they use, there is also a burden on people trying
>> to understand the binding and deciding which one to use.
>
> What about (tongue in cheek) "renesas,hwmod", then?  That won't be confused
> with the generic "pm-domain" in any way, will it?  And since TI did that, we
> surely should be allowed to do it as well, no?
>
> Seriously, I'm not fundamentally opposed to using phandles for that in analogy
> with regulators, but I'm afraid we won't get it right from the start and it
> will turn out that we need to change the definition of the binding somehow
> and _that_ is going to be painful.  Pretty much like changing generic user
> space interfaces is (as opposed to changing interfaces of limited scope).
>
> However, if that route is taken, I'll expect you to require TI to change their
> hwmod binding in the analogous way.

FWIW, we're already working on making ti,hwmods disappear.  That was a
temporary step to allow us to easily migrate to DT using our existing,
in-tree description of device IP blocks (hwmods.)

That being said, I'm not sure why ti,hwmods is being used as an example
for powerdomains.  hwmods describe the integration of SoC IP blocks
(base addr, IRQ, DMA channel etc., which are being moved to DT) as well
as a bunch of SoC specific PM register descriptions.  This stuff is
SoC-specific PM register layout, so being very SoC specific, it has the
'ti' prefix in the DT binding.

Anyways, I hope to have a closer look this week, and I know Benoit
Cousson (CC'd) has some ideas for DT bindings for power domains as well.
Unfortunately, he's out until next week.

Kevin

  reply	other threads:[~2012-07-26  0:38 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-03 21:02 [RFD] PM: Device tree representation of power domains Rafael J. Wysocki
2012-07-04 11:56 ` Mark Brown
2012-07-05 20:17   ` Rafael J. Wysocki
2012-07-16 21:15     ` [RFC][PATCH 0/14] PM / shmobile: Pass power domain information via DT (was: Re: [RFD] PM: Device tree representation of power domains) Rafael J. Wysocki
2012-07-16 21:17       ` [RFC][PATCH 1/14] PM / Domains: Make it possible to use domain names when adding devices Rafael J. Wysocki
2012-07-16 21:18       ` [RFC][PATCH 2/14] ARM: shmobile: Use names of power domains for adding devices to them Rafael J. Wysocki
2012-07-16 21:19       ` [RFC][PATCH 3/14] ARM: shmobile: Drop r8a7779_add_device_to_domain() Rafael J. Wysocki
2012-07-16 21:20       ` [RFC][PATCH 4/14] PM / Domains: Make it possible to use names when adding subdomains Rafael J. Wysocki
2012-07-16 21:21       ` [RFC][PATCH 5/14] ARM: shmobile: Use domain names when adding subdomains to power domains Rafael J. Wysocki
2012-07-16 21:23       ` [RFC][PATCH 6/14] RM: shmobile: Add routine for automatic PM domains initialization Rafael J. Wysocki
2012-07-16 21:24       ` [RFC][PATCH 7/14] ARM: shmobile: Remove dead sh7372 power management code Rafael J. Wysocki
2012-07-16 21:25       ` [RFC][PATCH 8/14] PM / Domains: Add power-on function using names to identify domains Rafael J. Wysocki
2012-07-16 21:26       ` [RFC][PATCH 9/14] ARM: shmobile: Move sh7372's PM domain objects to a table Rafael J. Wysocki
2012-07-16 21:27       ` [RFC][PATCH 10/14] ARM: shmobile: Move r8a7740's " Rafael J. Wysocki
2012-07-16 21:28       ` [RFC][PATCH 11/14] ARM: shmobile: Move r8a7779's " Rafael J. Wysocki
2012-07-16 21:29       ` [RFC][PATCH 12/14] ARM: shmobile: Make rmobile_init_pm_domain() static Rafael J. Wysocki
2012-07-16 21:30       ` [RFC][PATCH 13/14] PM / Domains: Introduce pm_genpd_present() Rafael J. Wysocki
2012-07-16 21:32       ` [RFC][PATCH 14/14] ARM: shmobile: Add support for storing PM domain information in DTs Rafael J. Wysocki
2012-07-21 17:17       ` [RFC][PATCH 0/14] PM / shmobile: Pass power domain information via DT (was: Re: [RFD] PM: Device tree representation of power domains) Rafael J. Wysocki
2012-07-24 15:20         ` Arnd Bergmann
2012-07-24 19:34           ` Rafael J. Wysocki
2012-07-24 19:56             ` Arnd Bergmann
2012-07-24 20:37               ` Rafael J. Wysocki
2012-07-25  9:29                 ` Rafael J. Wysocki
2012-07-25 13:00                 ` Arnd Bergmann
2012-07-25 22:32                   ` Rafael J. Wysocki
2012-07-26  0:38                     ` Kevin Hilman [this message]
2012-07-26 20:55                       ` Rafael J. Wysocki
2012-07-26 21:09                       ` Mark Brown
2012-07-26 21:34                         ` Rafael J. Wysocki
2012-07-26 21:45                         ` Kevin Hilman
2012-07-26 21:55                           ` Mark Brown

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=87vchb4ar8.fsf@ti.com \
    --to=khilman@ti.com \
    --cc=arnd@arndb.de \
    --cc=b-cousson@ti.com \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=grant.likely@secretlab.ca \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=magnus.damm@gmail.com \
    --cc=mjg59@srcf.ucam.org \
    --cc=rjw@sisk.pl \
    /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).