From: Todd Poynor <tpoynor@mvista.com>
To: Daniel Petrini <d.pensator@gmail.com>
Cc: Geoff Levand <geoffrey.levand@am.sony.com>,
cpufreq@lists.linux.org.uk, linux-pm@lists.osdl.org,
linux-kernel@vger.kernel.org
Subject: Re: [linux-pm] PowerOP 1/3: PowerOP core
Date: Wed, 10 Aug 2005 17:25:13 -0700 [thread overview]
Message-ID: <42FA9AE9.9020507@mvista.com> (raw)
In-Reply-To: <9268368b05081006585ca7a415@mail.gmail.com>
Daniel Petrini wrote:
> I'd like to have an idea of how the powerop would evolve to address:
>
> a) exporting all operating points to sysfs - that would be useful for
> a policy manager in user space, or the user policy will already be
> aware of the ops?
For different usage models I'd expect to see both situations. In one
situation (classic desktop/server), a canned set of operating points may
bee preconfigured (for example, the cpufreq support for Centrino), and
automated software or an interactive user knows how to select an
appropriate point (like the existing cpufreq algorithms such as "choose
the lowest (powersave) point"). In the other situation (classic
embedded), a system designer has chosen a number of useful operating
points and configures software to choose an appropriate point based on
system state ("the MPEG4 video app is running"), and that software knows
what points are available and in what situations the points should apply.
> b) Constraints: if I would like to change to a op and such a
> transition is not allowed in hardware, what part of the software will
> test it? The set/get powerop functions, the higher layers or even some
> lower layer (don't know if expected) ?
Any sort of policy on what operating points should be allowed is
targeted for a higher layer than PowerOP. As you mention, there are
situations where device needs constrain the operating points that can be
set (for example, a PXA27x has modes that disable PLLs and/or run clocks
at low speeds such that certain devices, if powered on, will wedge).
Intelligence on what to do about that situation, if anything, can be
placed in the high-layer power policy management application (this is
probably the best answer), and/or the mid-layer power management
framework code can also attempt to enforce these rules.
Stepping up on my soapbox for a moment, it is always recommended to have
the power policy management application be aware of what the constraints
are on operating points and set an appropriate power policy based on
that information. This may entail sending event messages from the
drivers to the power policy manager app, to coordinate changes in device
state with changes in policy. If the constraints change very rapidly
then it may make sense to preconfigure the rules on which operating
point to choose in the kernel to avoid userspace interactions (and this
is what the DPM device constraints feature is intended to do). Relying
on the power management mid-layer to block attempts to set an
incompatible operating point is not recommended, but can function
reasonably well if the mid layer is smart enough to know what the next
best choice is and set that operating point instead.
--
Todd
next prev parent reply other threads:[~2005-08-11 0:25 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-08-09 2:51 PowerOP 1/3: PowerOP core Todd Poynor
2005-08-09 7:32 ` Greg KH
2005-08-09 16:07 ` [linux-pm] " Geoff Levand
2005-08-10 0:33 ` Todd Poynor
2005-08-10 13:58 ` Daniel Petrini
2005-08-11 0:25 ` Todd Poynor [this message]
2005-08-12 16:23 ` david-b
2005-08-13 1:06 ` Todd Poynor
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=42FA9AE9.9020507@mvista.com \
--to=tpoynor@mvista.com \
--cc=cpufreq@lists.linux.org.uk \
--cc=d.pensator@gmail.com \
--cc=geoffrey.levand@am.sony.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.osdl.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