From: Arun R Bharadwaj <arun@linux.vnet.ibm.com>
To: Joel Schopp <jschopp@austin.ibm.com>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Ingo Molnar <mingo@elte.hu>,
Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>,
Dipankar Sarma <dipankar@in.ibm.com>,
Balbir Singh <balbir@in.ibm.com>,
Gautham R Shenoy <ego@in.ibm.com>,
Arun R Bharadwaj <arun@linux.vnet.ibm.com>
Cc: linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org
Subject: [v4 PATCH 0/5]: cpuidle/POWER (REDISIGN): Introducing cpuidle to POWER.
Date: Tue, 1 Sep 2009 17:07:04 +0530 [thread overview]
Message-ID: <20090901113704.GG7599@linux.vnet.ibm.com> (raw)
Hi,
******** This is an RFC, not for inclusion **********
This patchset introduces cpuidle infrastructure to POWER, prototyping
for pseries and currently in the process of porting to x86 and hence
will *not* build on x86/other POWER platforms.
This is to get initial comments on the redesign of my earlier implementation
which can be found at http://lkml.org/lkml/2009/8/27/124
Major changes from last iteration:
----------------------------------
* Cleanup drivers/cpuidle/cpuidle.c
Currently, the cpuidle implementation has weakness in the
framework where an exported pm_idle function pointer is
manipulated by various subsystem. The proposed framework has
a registration architecture to cleanly add and remove new idle
routines from different subsystems.
* Introduce [un]register_idle_function() routines
Implement a LIFO based approach for registering architecture
dependent idle routines.
* Sample implementation of register_idle_function for pSeries
TODO:
-----
* Extend this prototype to cover x86 and other archs that use cpuidle.
Currently, in x86, the cpu_idle() idle loop doesn't have a
default idle loop to fall back to if pm_idle is NULL, unlike
the corresponding implementation in pseries, where
ppc_md.power_save can be NULL and there is a fallback.
So we need to create a similar fork in cpu_idle() idle loop of
x86.
Patches included in this series:
--------------------------------
1/5 - Cleanup drivers/cpuidle/cpuidle.c
2/5 - Implement routines to register and unregister idle function.
3/5 - Incorporate registering of idle loop for pSeries.
4/5 - Add Kconfig entry to enable cpuidle for POWER.
5/5 - Implement pSeries processor idle module.
Any comments on the design is welcome.
--arun
WARNING: multiple messages have this Message-ID (diff)
From: Arun R Bharadwaj <arun@linux.vnet.ibm.com>
To: Joel Schopp <jschopp@austin.ibm.com>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Ingo Molnar <mingo@elte.hu>,
Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>,
Dipankar Sarma <dipankar@in.ibm.com>,
Balbir Singh <balbir@in.ibm.com>,
Gautham R Shenoy <ego@in.ibm.com>,
Arun R Bharadwaj <arun@linux.vnet.ibm.com>
Cc: linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org
Subject: [v4 PATCH 0/5]: cpuidle/POWER (REDISIGN): Introducing cpuidle to POWER.
Date: Tue, 1 Sep 2009 17:07:04 +0530 [thread overview]
Message-ID: <20090901113704.GG7599@linux.vnet.ibm.com> (raw)
Hi,
******** This is an RFC, not for inclusion **********
This patchset introduces cpuidle infrastructure to POWER, prototyping
for pseries and currently in the process of porting to x86 and hence
will *not* build on x86/other POWER platforms.
This is to get initial comments on the redesign of my earlier implementation
which can be found at http://lkml.org/lkml/2009/8/27/124
Major changes from last iteration:
----------------------------------
* Cleanup drivers/cpuidle/cpuidle.c
Currently, the cpuidle implementation has weakness in the
framework where an exported pm_idle function pointer is
manipulated by various subsystem. The proposed framework has
a registration architecture to cleanly add and remove new idle
routines from different subsystems.
* Introduce [un]register_idle_function() routines
Implement a LIFO based approach for registering architecture
dependent idle routines.
* Sample implementation of register_idle_function for pSeries
TODO:
-----
* Extend this prototype to cover x86 and other archs that use cpuidle.
Currently, in x86, the cpu_idle() idle loop doesn't have a
default idle loop to fall back to if pm_idle is NULL, unlike
the corresponding implementation in pseries, where
ppc_md.power_save can be NULL and there is a fallback.
So we need to create a similar fork in cpu_idle() idle loop of
x86.
Patches included in this series:
--------------------------------
1/5 - Cleanup drivers/cpuidle/cpuidle.c
2/5 - Implement routines to register and unregister idle function.
3/5 - Incorporate registering of idle loop for pSeries.
4/5 - Add Kconfig entry to enable cpuidle for POWER.
5/5 - Implement pSeries processor idle module.
Any comments on the design is welcome.
--arun
next reply other threads:[~2009-09-01 11:37 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-01 11:37 Arun R Bharadwaj [this message]
2009-09-01 11:37 ` [v4 PATCH 0/5]: cpuidle/POWER (REDISIGN): Introducing cpuidle to POWER Arun R Bharadwaj
2009-09-01 11:38 ` [v4 PATCH 1/5]: cpuidle: Cleanup drivers/cpuidle/cpuidle.c Arun R Bharadwaj
2009-09-01 11:38 ` Arun R Bharadwaj
2009-09-01 17:28 ` Balbir Singh
2009-09-01 17:28 ` Balbir Singh
2009-09-02 5:21 ` Arun R Bharadwaj
2009-09-02 5:21 ` Arun R Bharadwaj
2009-09-02 5:45 ` Arun R Bharadwaj
2009-09-02 5:45 ` Arun R Bharadwaj
2009-09-02 5:42 ` Peter Zijlstra
2009-09-02 5:42 ` Peter Zijlstra
2009-09-03 4:42 ` Arun R Bharadwaj
2009-09-03 4:42 ` Arun R Bharadwaj
2009-09-03 9:40 ` Peter Zijlstra
2009-09-03 9:40 ` Peter Zijlstra
2009-09-01 11:39 ` [v4 PATCH 2/5]: cpuidle: Implement routines to register and unregister idle function Arun R Bharadwaj
2009-09-01 11:39 ` Arun R Bharadwaj
2009-09-01 11:40 ` [v4 PATCH 3/5]: pSeries: Incorporate registering of idle loop for pSeries Arun R Bharadwaj
2009-09-01 11:40 ` Arun R Bharadwaj
2009-09-01 11:41 ` [v4 PATCH 4/5]: cpuidle: Add Kconfig entry to enable cpuidle for POWER Arun R Bharadwaj
2009-09-01 11:41 ` Arun R Bharadwaj
2009-09-01 11:42 ` [v4 PATCH 5/5]: pSeries: Implement pSeries processor idle module Arun R Bharadwaj
2009-09-01 11:42 ` Arun R Bharadwaj
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=20090901113704.GG7599@linux.vnet.ibm.com \
--to=arun@linux.vnet.ibm.com \
--cc=a.p.zijlstra@chello.nl \
--cc=balbir@in.ibm.com \
--cc=benh@kernel.crashing.org \
--cc=dipankar@in.ibm.com \
--cc=ego@in.ibm.com \
--cc=jschopp@austin.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mingo@elte.hu \
--cc=paulus@samba.org \
--cc=svaidy@linux.vnet.ibm.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.