From: jean.pihet@newoldbits.com
To: Kevin Hilman <khilman@ti.com>,
Linux PM mailing list <linux-pm@lists.linux-foundation.org>,
linux-omap@vger.kernel.org, "Rafael J. Wysocki" <rjw@sisk.pl>,
Paul Walmsley <paul@pwsan.co>
Cc: Jean Pihet <j-pihet@ti.com>
Subject: [PATCH v2 0/8] PM QoS: implement the OMAP low level constraints management code
Date: Wed, 21 Sep 2011 18:24:10 +0200 [thread overview]
Message-ID: <1316622258-3892-1-git-send-email-j-pihet@ti.com> (raw)
In-Reply-To: <1316621649-3622-1-git-send-email-j-pihet@ti.com>
From: Jean Pihet <j-pihet@ti.com>
. Convert the OMAP I2C driver to the PM QoS API for MPU latency constraints
. Remove the remove the latency related functions from OMAP PM in favor of
the generic per-device PM QoS API
. Implement the devices wake-up latency constraints using the global
device PM QoS notification handler which applies the constraints to the
underlying layer
. Implement the low level code which controls the power domains next power
states, through the hwmod and pwrdm layers
. Add cpuidle and power domains wake-up latency figures for OMAP3, cf. [1]
for the details on where the numbers are coming from
. Implement the relation between the cpuidle and per-device PM QoS frameworks
in the OMAP3 specific idle callbacks.
The chosen C-state shall satisfy the following conditions:
. the 'valid' field is enabled,
. it satisfies the enable_off_mode flag,
. the next state for MPU and CORE power domains is not lower than the
state programmed by the per-device PM QoS.
ToDo:
1. validate the constraints framework on OMAP4 HW (done on OMAP3)
2. Re-visit the OMAP power domains states initialization procedure. Currently
the power states that have been changed from the constraints API which were
applied before the initialization of the power domains are lost
3. Further clean-up the OMAP PM layer, use the generic frameworks instead (OPP,
PM QoS...)
Based on the pm-qos branch of the linux-pm git tree (3.1.0-rc3), cf. [2].
Tested on OMAP3 Beagleboard (ES2.x) with constraints on MPU, CORE, PER in
RETention and OFF modes.
[1] http://www.omappedia.org/wiki/Power_Management_Device_Latencies_Measurement
[2] git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
Jean Pihet (8):
OMAP: convert I2C driver to PM QoS for latency constraints
OMAP: PM: remove the latency related functions from the API
OMAP2+: powerdomain: control power domains next state
OMAP2+: omap_hwmod: manage the wake-up latency constraints
OMAP: PM: register to the per-device PM QoS framework
OMAP3: cpuidle: next C-state decision depends on the PM QoS MPU and
CORE constraints
OMAP3: update cpuidle latency and threshold figures
OMAP3: powerdomain data: add wake-up latency figures
Documentation/arm/OMAP/omap_pm | 55 ++------
arch/arm/mach-omap2/cpuidle34xx.c | 77 ++++++-----
arch/arm/mach-omap2/omap_hwmod.c | 26 ++++-
arch/arm/mach-omap2/pm.c | 63 ++++++++
arch/arm/mach-omap2/pm.h | 17 ++-
arch/arm/mach-omap2/powerdomain.c | 197 ++++++++++++++++++++++++++
arch/arm/mach-omap2/powerdomain.h | 35 +++++-
arch/arm/mach-omap2/powerdomains3xxx_data.c | 78 ++++++++++
arch/arm/plat-omap/i2c.c | 20 ---
arch/arm/plat-omap/include/plat/omap-pm.h | 99 -------------
arch/arm/plat-omap/include/plat/omap_hwmod.h | 2 +
arch/arm/plat-omap/omap-pm-noop.c | 88 ------------
drivers/i2c/busses/i2c-omap.c | 30 ++--
include/linux/i2c-omap.h | 1 -
14 files changed, 480 insertions(+), 308 deletions(-)
--
1.7.4.1
next prev parent reply other threads:[~2011-09-21 16:25 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-21 16:14 [PATCH v2 0/8] PM QoS: implement the OMAP low level constraints management code Jean Pihet
2011-09-21 16:14 ` [PATCH 1/8] OMAP: convert I2C driver to PM QoS for latency constraints Jean Pihet
2011-09-21 16:14 ` [PATCH 2/8] OMAP: PM: remove the latency related functions from the API Jean Pihet
2011-09-21 16:14 ` [PATCH 3/8] OMAP2+: powerdomain: control power domains next state Jean Pihet
2011-09-21 16:14 ` [PATCH 4/8] OMAP2+: omap_hwmod: manage the wake-up latency constraints Jean Pihet
2011-09-21 16:14 ` [PATCH 5/8] OMAP: PM: register to the per-device PM QoS framework Jean Pihet
2011-09-21 16:14 ` [PATCH 6/8] OMAP3: cpuidle: next C-state decision depends on the PM QoS MPU and CORE constraints Jean Pihet
2011-09-21 16:14 ` [PATCH 7/8] OMAP3: update cpuidle latency and threshold figures Jean Pihet
2011-10-12 2:48 ` Ming Lei
2011-10-12 7:29 ` Jean Pihet
2011-09-21 16:14 ` [PATCH 8/8] OMAP3: powerdomain data: add wake-up latency figures Jean Pihet
2011-09-21 16:24 ` jean.pihet [this message]
2011-09-21 16:24 ` [PATCH 1/8] OMAP: convert I2C driver to PM QoS for latency constraints jean.pihet
2011-09-21 16:24 ` [PATCH 2/8] OMAP: PM: remove the latency related functions from the API jean.pihet
2011-09-21 16:24 ` [PATCH 3/8] OMAP2+: powerdomain: control power domains next state jean.pihet
2011-09-21 16:24 ` [PATCH 4/8] OMAP2+: omap_hwmod: manage the wake-up latency constraints jean.pihet
2011-10-07 2:53 ` Paul Walmsley
2011-10-10 8:08 ` Jean Pihet
2011-10-12 15:27 ` Jean Pihet
2011-09-21 16:24 ` [PATCH 5/8] OMAP: PM: register to the per-device PM QoS framework jean.pihet
2011-09-21 16:24 ` [PATCH 6/8] OMAP3: cpuidle: next C-state decision depends on the PM QoS MPU and CORE constraints jean.pihet
2011-09-21 16:24 ` [PATCH 7/8] OMAP3: update cpuidle latency and threshold figures jean.pihet
2011-09-21 16:24 ` [PATCH 8/8] OMAP3: powerdomain data: add wake-up latency figures jean.pihet
2011-10-07 4:17 ` Paul Walmsley
2011-10-10 8:17 ` Jean Pihet
2011-10-10 22:44 ` Paul Walmsley
2011-10-10 22:52 ` Paul Walmsley
2011-10-11 6:50 ` Pihet-XID, Jean
2011-10-07 15:26 ` Paul Walmsley
2011-10-10 8:19 ` Jean Pihet
2011-09-21 16:27 ` [PATCH v2 0/8] PM QoS: implement the OMAP low level constraints management code 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=1316622258-3892-1-git-send-email-j-pihet@ti.com \
--to=jean.pihet@newoldbits.com \
--cc=j-pihet@ti.com \
--cc=khilman@ti.com \
--cc=linux-omap@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=paul@pwsan.co \
--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