Message ID | 1391696188-14540-1-git-send-email-nicolas.pitre@linaro.org |
---|---|
State | New |
Headers | show |
On Thu, 6 Feb 2014, Preeti U Murthy wrote: > Hi Daniel, > > On 02/06/2014 09:55 PM, Daniel Lezcano wrote: > > Hi Nico, > > > > > > On 6 February 2014 14:16, Nicolas Pitre <nicolas.pitre@linaro.org> wrote: > > > >> The core idle loop now takes care of it. > >> > >> Signed-off-by: Nicolas Pitre <nico@linaro.org> > >> --- > >> arch/powerpc/platforms/powernv/setup.c | 13 +------------ > >> 1 file changed, 1 insertion(+), 12 deletions(-) > >> > >> diff --git a/arch/powerpc/platforms/powernv/setup.c > >> b/arch/powerpc/platforms/powernv/setup.c > >> index 21166f65c9..a932feb290 100644 > >> --- a/arch/powerpc/platforms/powernv/setup.c > >> +++ b/arch/powerpc/platforms/powernv/setup.c > >> @@ -26,7 +26,6 @@ > >> #include <linux/of_fdt.h> > >> #include <linux/interrupt.h> > >> #include <linux/bug.h> > >> -#include <linux/cpuidle.h> > >> > >> #include <asm/machdep.h> > >> #include <asm/firmware.h> > >> @@ -217,16 +216,6 @@ static int __init pnv_probe(void) > >> return 1; > >> } > >> > >> -void powernv_idle(void) > >> -{ > >> - /* Hook to cpuidle framework if available, else > >> - * call on default platform idle code > >> - */ > >> - if (cpuidle_idle_call()) { > >> - power7_idle(); > >> - } > >> > > > > The cpuidle_idle_call is called from arch_cpu_idle in > > arch/powerpc/kernel/idle.c between a ppc64_runlatch_off|on section. > > Shouldn't the cpuidle-powernv driver call these functions when entering > > idle ? > > Yes they should, I will send out a patch that does that ontop of this. > There have been cpuidle driver cleanups for powernv and pseries in this > merge window. While no change would be required in the pseries cpuidle > driver as a result of Nicolas's cleanup, we would need to add the > ppc64_runlatch_on and off functions before and after the entry into the > powernv idle states. What about creating arch_cpu_idle_enter() and arch_cpu_idle_exit() in arch/powerpc/kernel/idle.c and calling ppc64_runlatch_off() and ppc64_runlatch_on() respectively from there instead? Would that work? That would make the idle consolidation much easier afterwards. Nicolas -- To unsubscribe from this list: send the line "unsubscribe linux-pm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/powerpc/platforms/powernv/setup.c b/arch/powerpc/platforms/powernv/setup.c index 21166f65c9..a932feb290 100644 --- a/arch/powerpc/platforms/powernv/setup.c +++ b/arch/powerpc/platforms/powernv/setup.c @@ -26,7 +26,6 @@ #include <linux/of_fdt.h> #include <linux/interrupt.h> #include <linux/bug.h> -#include <linux/cpuidle.h> #include <asm/machdep.h> #include <asm/firmware.h> @@ -217,16 +216,6 @@ static int __init pnv_probe(void) return 1; } -void powernv_idle(void) -{ - /* Hook to cpuidle framework if available, else - * call on default platform idle code - */ - if (cpuidle_idle_call()) { - power7_idle(); - } -} - define_machine(powernv) { .name = "PowerNV", .probe = pnv_probe, @@ -236,7 +225,7 @@ define_machine(powernv) { .show_cpuinfo = pnv_show_cpuinfo, .progress = pnv_progress, .machine_shutdown = pnv_shutdown, - .power_save = powernv_idle, + .power_save = power7_idle, .calibrate_decr = generic_calibrate_decr, #ifdef CONFIG_KEXEC .kexec_cpu_down = pnv_kexec_cpu_down,
The core idle loop now takes care of it. Signed-off-by: Nicolas Pitre <nico@linaro.org> --- arch/powerpc/platforms/powernv/setup.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-)