From: david singleton <dsingleton@mvista.com>
To: Greg KH <greg@kroah.com>
Cc: David Singleton <daviado@gmail.com>, linux-pm@lists.osdl.org
Subject: Re: PowerOp Design and working patch
Date: Mon, 31 Jul 2006 17:36:24 -0700 [thread overview]
Message-ID: <7c644280da53b3741ffff4c34afef967@mvista.com> (raw)
In-Reply-To: <20060729220902.GA8581@kroah.com>
On Jul 29, 2006, at 3:09 PM, Greg KH wrote:
> On Fri, Jul 28, 2006 at 10:12:26PM -0700, david singleton wrote:
>>
>> Greg,
>> perhaps I need to back up a bit. I wasn't submitting these patches
>> for inclusion into Linux. I was presenting them to the people
>> discussing
>> how power management might evolve in Linux.
>
> That's fine, but you should at least post them so we can read and
> comment on them from within our email clients then :)
>
> And also by breaking up the patches into small logical changes, it
> helps
> us to understand what they are doing and would allow us to evaluate
> them
> much better.
>
> thanks,
>
> greg k-h
>
Greg,
these emails describe a concept called power op that
shows how the various power management infrastructures in
Linux could be unified and simplified. This email describes
the concept of what power op is trying to do and how it works.
The following emails break a prototype patch into
three logical parts. The first patch is the powerop-core.patch
that adds support for an operating point in the standard linux
power management infrastructure (CONFIG_PM) and adds a new
function to perform transitioning to operating points other
than suspend to memory or disk.
The second patch adds the cpufreq portion of the patch
that makes cpufreq table a set of operating points.
The third patch adds some operating points for
the centrino-speedstep (the notebook I'm doing the prototype on)
and a centrino specific transition function.
The goal of these patches is not to show how the
concept of supported operating points should be implemented,
rather its intended to show that they can be unified and
greatly simplified.
All the power management infrastructures operate on
what can be conceptualized as an operating point. Once they
get down to the point where they start controlling power,
frequency
or voltage, they are transitioning from one operating point
to another. They all also follow the same steps to transition
from one operating point to another.
Powerop uses the traditional power management interface
of /sys/power/state but changes it a bit. When it's read it
shows
the current operating point of the system. Powerop uses a
second
sysfs file to present the list of supported operating points,
their
name, frequency, voltage and description, to the user.
The user sets the operating point of the system by
writing
the name of the operating point into the /sys/power/state file.
The goal of powerop is to both unify and simplify the
different power management infrastructures. It does this
by treating all supported states the system can be in as
different operating points that can be simply transitioned
to via the name of the operating point.
It simplifies power management by following the CPUFREQ
concept of a vendor specified and validated table of supported
operating points. In CPUFREQ the user is not allowed to
set the frequency or voltage of an operating point that might
hang the system, either inadverdantly or maliciously.
It also simplifies the code by putting all the
decisions
about when to transition to a new operating point in the
hands of the user. With this simple example patch the user
can manually switch between all the supported states of the
centrino speedstep.
The powerop-core.patch has more details in the
Documentation/power/power.txt file.
David
next prev parent reply other threads:[~2006-08-01 0:36 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-28 22:31 PowerOp Design and working patch david singleton
2006-07-28 23:38 ` Greg KH
2006-07-29 0:26 ` david singleton
2006-07-29 0:38 ` david singleton
2006-07-29 0:45 ` Greg KH
2006-07-29 5:12 ` david singleton
2006-07-29 19:07 ` Eugeny S. Mints
2006-07-30 4:43 ` david singleton
2006-07-30 11:02 ` Vitaly Wool
2006-08-01 0:59 ` david singleton
2006-08-01 10:09 ` Matthew Locke
2006-08-01 10:22 ` Matthew Locke
2006-08-01 18:31 ` david singleton
2006-08-01 18:52 ` Tim Bird
2006-08-01 18:59 ` david singleton
2006-08-01 19:17 ` Vitaly Wool
2006-08-01 19:28 ` Vitaly Wool
2006-08-06 22:11 ` Pavel Machek
2006-08-07 10:34 ` Igor Stoppa
2006-08-07 19:45 ` Tim Bird
2006-08-08 10:07 ` Pavel Machek
2006-08-08 11:12 ` Igor Stoppa
2006-08-08 11:33 ` Pavel Machek
2006-08-08 16:43 ` Tim Bird
2006-08-01 12:23 ` Vitaly Wool
2006-08-01 18:25 ` Tim Bird
2006-08-01 18:02 ` Tim Bird
2006-08-06 22:05 ` Pavel Machek
2006-08-07 3:52 ` david singleton
2006-08-07 4:17 ` Greg KH
2006-08-07 4:32 ` Vitaly Wool
2006-07-29 22:09 ` Greg KH
2006-08-01 0:36 ` david singleton [this message]
2006-08-01 1:27 ` david singleton
2006-08-07 22:06 ` Pavel Machek
-- strict thread matches above, loose matches on Subject: below --
2006-08-01 10:09 Matthew Locke
2006-08-07 14:12 Scott E. Preece
2006-08-07 16:58 ` Greg KH
2006-08-08 13:44 Scott E. Preece
2006-08-08 13:52 ` Pavel Machek
2006-08-08 15:53 ` Matthew Locke
2006-08-08 16:03 ` Matthew Locke
2006-08-08 18:10 ` Igor Stoppa
2006-08-08 13:54 Scott E. Preece
2006-08-08 16:49 ` Tim Bird
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=7c644280da53b3741ffff4c34afef967@mvista.com \
--to=dsingleton@mvista.com \
--cc=daviado@gmail.com \
--cc=greg@kroah.com \
--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