All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: jean.pihet@newoldbits.com
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>,
	Kevin Hilman <khilman@ti.com>,
	markgross@thegnar.org,
	Linux PM mailing list <linux-pm@lists.linux-foundation.org>,
	linux-omap@vger.kernel.org, Paul Walmsley <paul@pwsan.com>,
	Magnus Damm <magnus.damm@gmail.com>,
	Todd Poynor <toddpoynor@google.com>, Jean Pihet <j-pihet@ti.com>
Subject: Re: [PATCH v6 0/7] PM QoS: add a per-device latency constraints framework
Date: Thu, 18 Aug 2011 09:59:00 +0200	[thread overview]
Message-ID: <201108180959.00827.rjw@sisk.pl> (raw)
In-Reply-To: <1313609965-6568-1-git-send-email-j-pihet@ti.com>

Hi,

On Wednesday, August 17, 2011, jean.pihet@newoldbits.com wrote:
> From: Jean Pihet <j-pihet@ti.com>
> 
> High level implementation:
> 
> 1. Preparation of the PM QoS for the addition of a device PM QoS constraints
>    framework:
>   . rename and move of the PM QoS implementation files to kernel/power/qos.c
>     and include/linux/pm_qos.h
>   . rename of API parameters and internal fields names
>   . Move around the PM QoS misc devices management code for better readability
>   . re-organize the internal data structs
>   . generalize and export the constraints management core code
> 
> 2. Implementation of the per-device PM QoS constraints:
>   . create drivers/base/power/qos.c for the implementation
>   . create a device PM QoS API, which calls the PM QoS constraints management
>     core code
>   . the per-device latency constraints data strctures are stored in the device
>     dev_pm_info struct
>   . the device PM code calls the init and destroy of the per-device constraints
>     data struct in order to support the dynamic insertion and removal of the
>     devices in the system.
>   . to minimize the data usage by the per-device constraints, the data struct
>     is only allocated at the first call to dev_pm_qos_add_request. The data
>     is later free'd when the device is removed from the system
>   . per-device notification callbacks can be registered and called upon a
>     change to the aggregated constraint value
>   . a global mutex protects the constraints users from the data being
>     allocated and free'd.
> 
> 3. add a global notification mechanism for the device constraints
>   . add a global notification chain that gets called upon changes to the
>     aggregated constraint value for any device.
>   . the notification callbacks are passing the full constraint request data
>     in order for the callees to have access to it. The current use is for the
>     platform low-level code to access the target device of the constraint
> 
> 
> Questions:
> 1. the user space API is still under discussions on linux-omap and linux-pm MLs,
>    cf. [1]. The idea is to add a user-space API for the devices constratins
>    PM QoS, using a sysfs entry per device
> 
> [1] http://marc.info/?l=linux-omap&m=131232344503327&w=2
> 
> ToDo:
> 1. write Documentation for the new PM QoS class, once the code is agreed on
> 2. submit patches for the OMAP low level code to control the power domains
>    states from the device constraints, using a global notification callback
> 
>    
> Based on the master branch of the linux-omap git tree (3.1.0-rc1). Compile
> tested using OMAP and x86 generic defconfigs.
> 
> Tested on OMAP3 Beagleboard (ES2.x).
> Need testing on platforms other than OMAP, because of the impact on the
> device insertion/removal in device_pm_add/remove

OK

If that were my code, I'd probably change a couple of things more, but
it looks good enough to me to take as is.  I'm going to push this patchset
for 3.2.

Thanks a lot for your hard work on it,
Rafael

  parent reply	other threads:[~2011-08-18  7:57 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-17 19:39 [PATCH v6 0/7] PM QoS: add a per-device latency constraints framework jean.pihet
2011-08-17 19:39 ` [PATCH 1/7] PM QoS: move and rename the implementation files jean.pihet
2011-08-17 19:39 ` jean.pihet
2011-08-17 19:39 ` [PATCH 2/7] PM QoS: minor clean-ups jean.pihet
2011-08-17 19:39 ` jean.pihet
2011-08-17 19:39 ` [PATCH 3/7] PM QoS: code re-organization jean.pihet
2011-08-17 19:39 ` jean.pihet
2011-08-17 19:39 ` [PATCH 4/7] PM QoS: re-organize data structs jean.pihet
2011-08-17 19:39 ` jean.pihet
2011-08-17 19:39 ` [PATCH 5/7] PM QoS: generalize and export the constraints management code jean.pihet
2011-08-17 19:39 ` jean.pihet
2011-08-17 19:39 ` [PATCH 6/7] PM QoS: implement the per-device PM QoS constraints jean.pihet
2011-08-17 19:39 ` jean.pihet
2011-08-17 19:39 ` [PATCH 7/7] PM QoS: add a global notification mechanism for the device constraints jean.pihet
2011-08-17 19:39 ` jean.pihet
2011-08-18  7:59 ` Rafael J. Wysocki [this message]
2011-08-18  7:59 ` [PATCH v6 0/7] PM QoS: add a per-device latency constraints framework Rafael J. Wysocki
2011-08-22 17:56 ` Kevin Hilman
2011-08-22 18:53   ` Rafael J. Wysocki
2011-08-22 18:53   ` Rafael J. Wysocki
2011-08-22 17:56 ` Kevin Hilman
  -- strict thread matches above, loose matches on Subject: below --
2011-08-17 19:39 jean.pihet

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=201108180959.00827.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=j-pihet@ti.com \
    --cc=jean.pihet@newoldbits.com \
    --cc=khilman@ti.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=magnus.damm@gmail.com \
    --cc=markgross@thegnar.org \
    --cc=paul@pwsan.com \
    --cc=toddpoynor@google.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.