From: rob.lee@linaro.org (Robert Lee)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 0/7] Add common cpuidle code for consolidation.
Date: Mon, 23 Jan 2012 22:37:27 -0600 [thread overview]
Message-ID: <1327379854-12403-1-git-send-email-rob.lee@linaro.org> (raw)
This patch series adds a new common cpuidle interface to consolidate code
commonly duplicated by various platforms. A patch was then made for each
platform that could immediately take advantage of this code. The platform
specific changes are not required by the common code and are only made for
consoldation.
Maintainers and cpuidle idle developers of these platforms, please check to make
sure that you agree with the changes. Besides just code consolidation, a
default "WFI" state is now used with default parameters that different from your
original paramenters. The assumption is that if you have a WFI only idle state,
the parameters in the new default WFI are more realistic as a true WFI only
hardware state incurs minimal latency(<1us) or power penalty to enter and exit.
If your platform actually performs other platform specific functionality upon
entering WFI and the default parameters do not accurately reflect the
exit_latency and target_residency given in the common default state, please
say so. Also, the default state uses a common name and description value
which may differ from the previous platform specific values you used.
Lastly, a imx5 cpuidle implementation is added which uses the common cpuidle
interface.
Based on 3.3-rc1
Tested on i.MX51 Babbage Board
v2 submission can be found here:
http://comments.gmane.org/gmane.linux.ports.arm.kernel/144199
Changes since v2:
* Made various code organization and style changes as suggested in v1 review.
* Removed at91 use of common code. A separate effort is underway to clean
at91 code and the author has offered to convert to common interface as part
of those changes (if this common interface is accepted in time).
* Made platform cpuidle_driver objects __initdata and dynamically added one
persistent instance of this object in common code.
* Removed imx5 pm usage of gpc_dvfs clock as it is no longer needed after
being enabled during clock initialization.
* Re-organized patches.
v1 submission can be found here:
http://comments.gmane.org/gmane.linux.ports.arm.kernel/142791
Changes since v1:
* Common interface moved to drivers/cpuidle and made non arch-specific.
* Made various fixes and suggested additions to the common cpuidle
code from v1 review.
* Added callback for filling in driver_data field as needed.
* Modified the various platforms with these changes.
Robert Lee (7):
cpuidle: Add common init interface and idle functionality
ARM: exynos: Modify to use new common cpuidle code.
ARM: shmobile: Modify to use new common cpuidle code.
ARM: kirkwood: Modify to use new common cpuidle code.
ARM: davinci: Modify to use new common cpuidle code.
ARM: imx: Init imx5 gpc_dvfs clock for global use
ARM: imx: Add imx5 cpuidle implementation
arch/arm/mach-davinci/cpuidle.c | 135 ++++++++-----------------------
arch/arm/mach-exynos/cpuidle.c | 73 ++---------------
arch/arm/mach-kirkwood/cpuidle.c | 89 +++++---------------
arch/arm/mach-mx5/Makefile | 3 +-
arch/arm/mach-mx5/clock-mx51-mx53.c | 3 +
arch/arm/mach-mx5/cpuidle.c | 64 +++++++++++++++
arch/arm/mach-mx5/pm-imx5.c | 24 +-----
arch/arm/mach-shmobile/cpuidle.c | 51 ++----------
drivers/cpuidle/Makefile | 2 +-
drivers/cpuidle/common.c | 152 +++++++++++++++++++++++++++++++++++
include/linux/cpuidle.h | 24 ++++++
11 files changed, 319 insertions(+), 301 deletions(-)
create mode 100644 arch/arm/mach-mx5/cpuidle.c
create mode 100644 drivers/cpuidle/common.c
next reply other threads:[~2012-01-24 4:37 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-24 4:37 Robert Lee [this message]
2012-01-24 4:37 ` [PATCH v3 1/7] cpuidle: Add common init interface and idle functionality Robert Lee
2012-01-24 14:36 ` Rob Herring
2012-01-24 22:43 ` Rob Lee
2012-01-24 20:16 ` Kevin Hilman
2012-01-24 23:10 ` Rob Lee
2012-01-24 23:46 ` Turquette, Mike
2012-01-25 2:03 ` Rob Lee
2012-01-24 23:49 ` Daniel Lezcano
2012-01-25 2:38 ` Rob Lee
2012-01-25 14:52 ` Daniel Lezcano
2012-01-24 4:37 ` [PATCH v3 2/7] ARM: exynos: Modify to use new common cpuidle code Robert Lee
2012-01-29 4:47 ` Barry Song
2012-01-24 4:37 ` [PATCH v3 3/7] ARM: shmobile: " Robert Lee
2012-01-24 4:37 ` [PATCH v3 4/7] ARM: kirkwood: " Robert Lee
2012-01-24 4:37 ` [PATCH v3 5/7] ARM: davinci: " Robert Lee
2012-01-24 4:37 ` [PATCH v3 6/7] ARM: imx: Init imx5 gpc_dvfs clock for global use Robert Lee
2012-01-24 4:37 ` [PATCH v3 7/7] ARM: imx: Add imx5 cpuidle implementation Robert Lee
2012-01-24 20:08 ` [PATCH v3 0/7] Add common cpuidle code for consolidation Kevin Hilman
2012-01-24 20:17 ` Mark Brown
2012-01-25 0:41 ` Kevin Hilman
2012-01-25 0:46 ` Rob Lee
2012-01-25 18:58 ` Kevin Hilman
2012-01-29 15:34 ` Russell King - ARM Linux
2012-01-31 3:02 ` Rob Lee
2012-01-31 21:55 ` Kevin Hilman
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=1327379854-12403-1-git-send-email-rob.lee@linaro.org \
--to=rob.lee@linaro.org \
--cc=linux-arm-kernel@lists.infradead.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;
as well as URLs for NNTP newsgroup(s).