public inbox for linux-pm@vger.kernel.org
 help / color / mirror / Atom feed
From: David Brownell <david-b@pacbell.net>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: linux-pm@lists.linux-foundation.org
Subject: Re: Re: Platform-specific system power states
Date: Sun, 24 Jun 2007 17:26:20 -0700	[thread overview]
Message-ID: <200706241726.21206.david-b@pacbell.net> (raw)
In-Reply-To: <200706222330.35829.rjw@sisk.pl>

On Friday 22 June 2007, Rafael J. Wysocki wrote:
> On Friday, 22 June 2007 21:49, David Brownell wrote:

> > and as for querying, the many power-related resources involved would seem to
> > be clocks and power domains.  ACPI has an internal notion of the latter, but 
> > skips the former.  You've seen my proposal for what seems to be sufficient in
> > the case of clocks.  (And one of these days I'm sure I'll push it upstream.
> > After that new method lands, to replace the now-missing functionality...)
> 
> In fact the ACPI spec regards clock sources as power resources.  More
> precisely, it defines a power resource as "resources (for example, power planes
> and clock sources) that a device requires to operate in a given power state"
> (Section 2.1 in the 3.0b spec).  Perhaps we also could use a general notion of
> "power resource" in a similar fashion?

The problem with claiming that ACPI has a notion of clocks is that it
doesn't have any clock-like semantics.  Like getting/setting rates,
reparenting, and so forth ... everything the clk_*() interfaces do.
At best it has "stuff that can be enabled/disabled".


Related:  Linux doesn't even expose the limited notion of power resource
that ACPI packages.  And, as shown by some comments on one patch I posted,
even that notion needs work before it behaves.  ISTR the issue was that
the ACPI power methods apply to PCI functions, but the resources applied
to PCI devices.  So in the absense of refcounting, powering down one
function would surprisingly enough power them all down... absolutely
contrary to the intent of powering down just that function.

There's probably some generalizable notion lurking there, but clearly it's
not cooked in today's Linux ACPI stack.

And suffice it to say that I've seen work with such "general notions"
blow up so regularly (the basic crime being loss of contact with real
world problems, leading to useless code bloat) that my first reaction
is almost always "no, don't generalize yet, solve some problems first".

Hence my ongoing belief that we need voltage abstractions (both producer
and consumer) resembling the current clock abstraction, before we start
to think about grouping the two under some umbrella.

- Dave

  parent reply	other threads:[~2007-06-25  0:26 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <Pine.LNX.4.44L0.0706211424170.14859-100000@iolanthe.rowland.org>
2007-06-21 19:51 ` Re: [RFD] How to tell ACPI drivers what the target sleep state is (was: Re: [PATCH 1/2] acpi choose sleep state help) David Brownell
2007-06-21 20:19 ` Rafael J. Wysocki
     [not found] ` <200706212219.52699.rjw@sisk.pl>
2007-06-21 20:32   ` David Brownell
     [not found]   ` <200706211332.23466.david-b@pacbell.net>
2007-06-21 20:50     ` Rafael J. Wysocki
     [not found] ` <200706211251.52952.david-b@pacbell.net>
2007-06-21 20:35   ` Rafael J. Wysocki
     [not found]   ` <200706212235.23947.rjw@sisk.pl>
2007-06-21 20:46     ` David Brownell
     [not found]     ` <200706211346.43198.david-b@pacbell.net>
2007-06-21 21:02       ` Rafael J. Wysocki
2007-06-21 21:00   ` Platform-specific system power states Alan Stern
2007-06-22 19:49     ` David Brownell
2007-06-22 21:30       ` Rafael J. Wysocki
2007-06-23  1:32         ` Alan Stern
2007-06-23 20:20           ` Rafael J. Wysocki
2007-06-25  0:10             ` David Brownell
2007-06-25 22:59               ` Rafael J. Wysocki
2007-06-25  0:26         ` David Brownell [this message]
2007-06-25 23:04           ` Rafael J. Wysocki

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=200706241726.21206.david-b@pacbell.net \
    --to=david-b@pacbell.net \
    --cc=linux-pm@lists.linux-foundation.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