From: Preeti U Murthy <preeti@linux.vnet.ibm.com>
To: benh@kernel.crashing.org, paul.gortmaker@windriver.com,
paulus@samba.org, shangw@linux.vnet.ibm.com,
galak@kernel.crashing.org, fweisbec@gmail.com,
paulmck@linux.vnet.ibm.com, michael@ellerman.id.au,
arnd@arndb.de, linux-pm@vger.kernel.org, rostedt@goodmis.org,
rjw@sisk.pl, john.stultz@linaro.org, tglx@linutronix.de,
chenhui.zhao@freescale.com, deepthi@linux.vnet.ibm.com,
geoff@infradead.org, linux-kernel@vger.kernel.org,
srivatsa.bhat@linux.vnet.ibm.com, schwidefsky@de.ibm.com,
svaidy@linux.vnet.ibm.com, linuxppc-dev@lists.ozlabs.org
Subject: [RFC PATCH 0/5] cpuidle/ppc: Timer offload framework to support deep idle states
Date: Thu, 25 Jul 2013 14:32:38 +0530 [thread overview]
Message-ID: <20130725090016.12500.28888.stgit@preeti.in.ibm.com> (raw)
On PowerPC, when CPUs enter deep idle states, their local timers are
switched off. The responsibility of waking them up at their next timer event,
needs to be handed over to an external device. On PowerPC, we do not have an
external device equivalent to HPET, which is currently done on architectures
like x86. Instead we assign the local timer of one of the CPUs to do this job.
This patchset is an attempt to make use of the existing timer broadcast
framework in the kernel to meet the above requirement, except that the tick
broadcast device is the local timer of the boot CPU.
This patch series is ported ontop of 3.11-rc1 + the cpuidle driver backend
for powernv posted by Deepthi Dharwar recently. The current design and
implementation supports the ONESHOT tick mode. It does not yet support
the PERIODIC tick mode. This patch is tested with NOHZ_FULL off.
Patch[1/5], Patch[2/5]: optimize the broadcast mechanism on ppc.
Patch[3/5]: Introduces the core of the timer offload framework on powerpc.
Patch[4/5]: The cpu doing the broadcast should not go into tickless idle.
Patch[5/5]: Add a deep idle state to the cpuidle state table on powernv.
Patch[5/5] is the patch that ultimately makes use of the timer offload
framework that the patches Patch[1/5] to Patch[4/5] build.
---
Preeti U Murthy (3):
cpuidle/ppc: Add timer offload framework to support deep idle states
cpuidle/ppc: CPU goes tickless if there are no arch-specific constraints
cpuidle/ppc: Add longnap state to the idle states on powernv
Srivatsa S. Bhat (2):
powerpc: Free up the IPI message slot of ipi call function (PPC_MSG_CALL_FUNC)
powerpc: Implement broadcast timer interrupt as an IPI message
arch/powerpc/include/asm/smp.h | 3 +
arch/powerpc/include/asm/time.h | 3 +
arch/powerpc/kernel/smp.c | 23 ++++--
arch/powerpc/kernel/time.c | 84 +++++++++++++++++++++++
arch/powerpc/platforms/cell/interrupt.c | 2 -
arch/powerpc/platforms/powernv/Kconfig | 1
arch/powerpc/platforms/powernv/processor_idle.c | 48 +++++++++++++
arch/powerpc/platforms/ps3/smp.c | 2 -
kernel/time/tick-sched.c | 7 ++
9 files changed, 161 insertions(+), 12 deletions(-)
--
Signature
next reply other threads:[~2013-07-25 9:05 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-25 9:02 Preeti U Murthy [this message]
2013-07-25 9:02 ` [RFC PATCH 1/5] powerpc: Free up the IPI message slot of ipi call function (PPC_MSG_CALL_FUNC) Preeti U Murthy
2013-07-25 9:02 ` [RFC PATCH 2/5] powerpc: Implement broadcast timer interrupt as an IPI message Preeti U Murthy
2013-07-25 9:02 ` [RFC PATCH 3/5] cpuidle/ppc: Add timer offload framework to support deep idle states Preeti U Murthy
2013-07-25 9:03 ` [RFC PATCH 4/5] cpuidle/ppc: CPU goes tickless if there are no arch-specific constraints Preeti U Murthy
2013-07-25 13:30 ` Frederic Weisbecker
2013-07-26 2:39 ` Preeti U Murthy
2013-07-26 3:19 ` Paul Mackerras
2013-07-26 3:35 ` Preeti U Murthy
2013-07-26 4:11 ` Preeti U Murthy
2013-07-27 6:30 ` Benjamin Herrenschmidt
2013-07-27 7:50 ` Preeti U Murthy
2013-07-29 5:28 ` Vaidyanathan Srinivasan
2013-07-29 10:11 ` Preeti U Murthy
2013-07-29 5:11 ` Vaidyanathan Srinivasan
2013-07-26 3:03 ` Preeti U Murthy
2013-07-25 9:03 ` [RFC PATCH 5/5] cpuidle/ppc: Add longnap state to the idle states on powernv Preeti U Murthy
2013-07-26 10:05 ` [RFC PATCH 0/5] cpuidle/ppc: Timer offload framework to support deep idle states Li Yang-R58472
2013-07-26 13:11 ` Preeti U Murthy
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=20130725090016.12500.28888.stgit@preeti.in.ibm.com \
--to=preeti@linux.vnet.ibm.com \
--cc=arnd@arndb.de \
--cc=benh@kernel.crashing.org \
--cc=chenhui.zhao@freescale.com \
--cc=deepthi@linux.vnet.ibm.com \
--cc=fweisbec@gmail.com \
--cc=galak@kernel.crashing.org \
--cc=geoff@infradead.org \
--cc=john.stultz@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=michael@ellerman.id.au \
--cc=paul.gortmaker@windriver.com \
--cc=paulmck@linux.vnet.ibm.com \
--cc=paulus@samba.org \
--cc=rjw@sisk.pl \
--cc=rostedt@goodmis.org \
--cc=schwidefsky@de.ibm.com \
--cc=shangw@linux.vnet.ibm.com \
--cc=srivatsa.bhat@linux.vnet.ibm.com \
--cc=svaidy@linux.vnet.ibm.com \
--cc=tglx@linutronix.de \
/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).