Message ID | 20131029110201.31547.55088.stgit@deepthi.in.ibm.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
On 10/29/2013 12:02 PM, Deepthi Dharwar wrote: > This patch enables idle cpu on the powernv platform to hook on to the cpuidle > framework, if available, else call on to default idle platform > code. > > Signed-off-by: Deepthi Dharwar <deepthi@linux.vnet.ibm.com> Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org> > --- > arch/powerpc/platforms/powernv/setup.c | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) > > diff --git a/arch/powerpc/platforms/powernv/setup.c b/arch/powerpc/platforms/powernv/setup.c > index e239dcf..42a6ba0 100644 > --- a/arch/powerpc/platforms/powernv/setup.c > +++ b/arch/powerpc/platforms/powernv/setup.c > @@ -25,6 +25,7 @@ > #include <linux/of.h> > #include <linux/interrupt.h> > #include <linux/bug.h> > +#include <linux/cpuidle.h> > > #include <asm/machdep.h> > #include <asm/firmware.h> > @@ -192,6 +193,16 @@ static void __init pnv_setup_machdep_rtas(void) > } > #endif /* CONFIG_PPC_POWERNV_RTAS */ > > +void powernv_idle(void) > +{ > + /* Hook to cpuidle framework if available, else > + * call on default platform idle code > + */ > + if (cpuidle_idle_call()) { > + power7_idle(); > + } > +} > + > static int __init pnv_probe(void) > { > unsigned long root = of_get_flat_dt_root(); > @@ -222,7 +233,7 @@ define_machine(powernv) { > .show_cpuinfo = pnv_show_cpuinfo, > .progress = pnv_progress, > .machine_shutdown = pnv_shutdown, > - .power_save = power7_idle, > + .power_save = powernv_idle, > .calibrate_decr = generic_calibrate_decr, > #ifdef CONFIG_KEXEC > .kexec_cpu_down = pnv_kexec_cpu_down, >
diff --git a/arch/powerpc/platforms/powernv/setup.c b/arch/powerpc/platforms/powernv/setup.c index e239dcf..42a6ba0 100644 --- a/arch/powerpc/platforms/powernv/setup.c +++ b/arch/powerpc/platforms/powernv/setup.c @@ -25,6 +25,7 @@ #include <linux/of.h> #include <linux/interrupt.h> #include <linux/bug.h> +#include <linux/cpuidle.h> #include <asm/machdep.h> #include <asm/firmware.h> @@ -192,6 +193,16 @@ static void __init pnv_setup_machdep_rtas(void) } #endif /* CONFIG_PPC_POWERNV_RTAS */ +void powernv_idle(void) +{ + /* Hook to cpuidle framework if available, else + * call on default platform idle code + */ + if (cpuidle_idle_call()) { + power7_idle(); + } +} + static int __init pnv_probe(void) { unsigned long root = of_get_flat_dt_root(); @@ -222,7 +233,7 @@ define_machine(powernv) { .show_cpuinfo = pnv_show_cpuinfo, .progress = pnv_progress, .machine_shutdown = pnv_shutdown, - .power_save = power7_idle, + .power_save = powernv_idle, .calibrate_decr = generic_calibrate_decr, #ifdef CONFIG_KEXEC .kexec_cpu_down = pnv_kexec_cpu_down,
This patch enables idle cpu on the powernv platform to hook on to the cpuidle framework, if available, else call on to default idle platform code. Signed-off-by: Deepthi Dharwar <deepthi@linux.vnet.ibm.com> --- arch/powerpc/platforms/powernv/setup.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)