From: daniel.lezcano@linaro.org (Daniel Lezcano)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC][PATCH 6/7] ARM: OMAP4: cpuidle - use the omap4_idle_data variable directly
Date: Wed, 21 Mar 2012 10:27:49 +0100 [thread overview]
Message-ID: <1332322070-24577-7-git-send-email-daniel.lezcano@linaro.org> (raw)
In-Reply-To: <1332322070-24577-1-git-send-email-daniel.lezcano@linaro.org>
We are storing the 'omap4_idle_data' in the private data field
if the cpuidle device. As we are using this variable only in this file,
that does not really make sense. Let's use the global variable directly
instead dereferencing pointers in an idle critical loop.
Also, that simplfies the code.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
arch/arm/mach-omap2/cpuidle44xx.c | 17 +++++------------
1 files changed, 5 insertions(+), 12 deletions(-)
diff --git a/arch/arm/mach-omap2/cpuidle44xx.c b/arch/arm/mach-omap2/cpuidle44xx.c
index e14cd56..cb91d1f 100644
--- a/arch/arm/mach-omap2/cpuidle44xx.c
+++ b/arch/arm/mach-omap2/cpuidle44xx.c
@@ -24,7 +24,7 @@
#ifdef CONFIG_CPU_IDLE
-/* Machine specific information to be recorded in the C-state driver_data */
+/* Machine specific information */
struct omap4_idle_statedata {
u32 cpu_state;
u32 mpu_logic_state;
@@ -67,8 +67,7 @@ static int omap4_enter_idle(struct cpuidle_device *dev,
struct cpuidle_driver *drv,
int index)
{
- struct omap4_idle_statedata *cx =
- cpuidle_get_statedata(&dev->states_usage[index]);
+ struct omap4_idle_statedata *cx = &omap4_idle_data[index];
struct timespec ts_preidle, ts_postidle, ts_idle;
u32 cpu1_state;
int idle_time;
@@ -92,7 +91,7 @@ static int omap4_enter_idle(struct cpuidle_device *dev,
cpu1_state = pwrdm_read_pwrst(cpu1_pd);
if (cpu1_state != PWRDM_POWER_OFF) {
new_state_idx = drv->safe_state_index;
- cx = cpuidle_get_statedata(&dev->states_usage[new_state_idx]);
+ cx = &omap4_idle_data[new_state_idx]
}
if (index > 0)
@@ -193,15 +192,9 @@ static inline struct omap4_idle_statedata *_fill_cstate_usage(
int idx)
{
struct omap4_idle_statedata *cx = &omap4_idle_data[idx];
- struct cpuidle_state_usage *state_usage = &dev->states_usage[idx];
-
- cpuidle_set_statedata(state_usage, cx);
-
return cx;
}
-
-
/**
* omap4_idle_init - Init routine for OMAP4 idle
*
@@ -210,9 +203,9 @@ static inline struct omap4_idle_statedata *_fill_cstate_usage(
*/
int __init omap4_idle_init(void)
{
- struct omap4_idle_statedata *cx;
- struct cpuidle_device *dev;
+ struct omap4_idle_statedata *cx = &omap4_idle_data[index];
struct cpuidle_driver *drv = &omap4_idle_driver;
+ struct cpuidle_device *dev;
unsigned int cpu_id = 0;
mpu_pd = pwrdm_lookup("mpu_pwrdm");
--
1.7.5.4
next prev parent reply other threads:[~2012-03-21 9:27 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-21 9:27 [RFC][PATCH 0/7] OMAP4 cpuidle cleanup Daniel Lezcano
2012-03-21 9:27 ` [RFC][PATCH 1/7] ARM: OMAP4: cpuidle - Remove unused valid field Daniel Lezcano
2012-03-21 9:41 ` Shilimkar, Santosh
2012-03-21 9:46 ` Daniel Lezcano
2012-03-21 10:03 ` Santosh Shilimkar
2012-03-21 13:28 ` Jean Pihet
2012-03-21 9:27 ` [RFC][PATCH 2/7] ARM: OMAP4: cpuidle - Declare the states with the driver declaration Daniel Lezcano
2012-03-21 9:50 ` Santosh Shilimkar
2012-03-21 13:31 ` Jean Pihet
2012-03-21 14:12 ` Daniel Lezcano
2012-03-21 9:27 ` [RFC][PATCH 3/7] ARM: OMAP4: cpuidle - Remove the cpuidle_params_table table Daniel Lezcano
2012-03-21 9:27 ` [RFC][PATCH 4/7] ARM: OMAP4: cpuidle - fix static omap4_idle_data declaration Daniel Lezcano
2012-03-21 9:51 ` Santosh Shilimkar
2012-03-21 9:27 ` [RFC][PATCH 5/7] ARM: OMAP4: cpuidle - Initialize omap4_idle_data at compile time Daniel Lezcano
2012-03-21 9:27 ` Daniel Lezcano [this message]
2012-03-21 9:27 ` [RFC][PATCH 7/7] ARM: OMAP4: cpuidle - remove omap4_idle_data initialization at boot time Daniel Lezcano
2012-03-21 9:36 ` [RFC][PATCH 0/7] OMAP4 cpuidle cleanup Shilimkar, Santosh
2012-03-21 9:51 ` Daniel Lezcano
2012-03-21 9:56 ` Santosh Shilimkar
2012-03-21 10:43 ` Daniel Lezcano
2012-03-21 10:49 ` Shilimkar, Santosh
2012-03-21 10:59 ` Daniel Lezcano
2012-03-21 10:07 ` Santosh Shilimkar
2012-03-21 10:49 ` Daniel Lezcano
2012-03-21 13:19 ` Jean Pihet
2012-03-21 14:13 ` Daniel Lezcano
2012-03-21 14:23 ` Shilimkar, Santosh
2012-03-21 13:43 ` Jean Pihet
2012-03-21 14:19 ` Daniel Lezcano
2012-03-21 16:42 ` Daniel Lezcano
2012-03-21 21:54 ` Kevin Hilman
2012-03-21 22:20 ` Daniel Lezcano
2012-03-22 18:36 ` Kevin Hilman
2012-03-22 21:45 ` Daniel Lezcano
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=1332322070-24577-7-git-send-email-daniel.lezcano@linaro.org \
--to=daniel.lezcano@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).