This patchset is a precursor for enabling deep idle states on powerpc, when the local CPU timers stop. The tick broadcast framework in the Linux Kernel today handles wakeup of such CPUs at their next timer event by using an external clock device. At the expiry of this clock device, IPIs are sent to the CPUs in deep idle states so that they wakeup to handle their respective timers. This patchset frees up one of the IPI slots on powerpc so as to be used to handle the tick broadcast IPI.
On certain implementations of powerpc, such an external clock device is absent. Adding support to the tick broadcast framework to handle wakeup of CPUs from deep idle states on such implementations is currently under discussion. https://lkml.org/lkml/2014/1/15/86 https://lkml.org/lkml/2014/1/24/28 Either way this patchset is essential to enable handling the tick broadcast IPIs. --- Preeti U Murthy (1): cpuidle/ppc: Split timer_interrupt() into timer handling and interrupt handling routines Srivatsa S. Bhat (2): powerpc: Free up the slot of PPC_MSG_CALL_FUNC_SINGLE IPI message powerpc: Implement tick broadcast IPI as a fixed IPI message arch/powerpc/include/asm/smp.h | 2 - arch/powerpc/include/asm/time.h | 1 arch/powerpc/kernel/smp.c | 23 ++++++-- arch/powerpc/kernel/time.c | 86 ++++++++++++++++++------------- arch/powerpc/platforms/cell/interrupt.c | 2 - arch/powerpc/platforms/ps3/smp.c | 2 - 6 files changed, 71 insertions(+), 45 deletions(-) -- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/