diff options
Diffstat (limited to 'arch/powerpc/platforms/pseries/setup.c')
| -rw-r--r-- | arch/powerpc/platforms/pseries/setup.c | 34 |
1 files changed, 14 insertions, 20 deletions
diff --git a/arch/powerpc/platforms/pseries/setup.c b/arch/powerpc/platforms/pseries/setup.c index 972df0ffd4dc..2db8cc691bf4 100644 --- a/arch/powerpc/platforms/pseries/setup.c +++ b/arch/powerpc/platforms/pseries/setup.c | |||
| @@ -39,7 +39,6 @@ | |||
| 39 | #include <linux/irq.h> | 39 | #include <linux/irq.h> |
| 40 | #include <linux/seq_file.h> | 40 | #include <linux/seq_file.h> |
| 41 | #include <linux/root_dev.h> | 41 | #include <linux/root_dev.h> |
| 42 | #include <linux/cpuidle.h> | ||
| 43 | #include <linux/of.h> | 42 | #include <linux/of.h> |
| 44 | #include <linux/kexec.h> | 43 | #include <linux/kexec.h> |
| 45 | 44 | ||
| @@ -356,29 +355,24 @@ early_initcall(alloc_dispatch_log_kmem_cache); | |||
| 356 | 355 | ||
| 357 | static void pseries_lpar_idle(void) | 356 | static void pseries_lpar_idle(void) |
| 358 | { | 357 | { |
| 359 | /* This would call on the cpuidle framework, and the back-end pseries | 358 | /* |
| 360 | * driver to go to idle states | 359 | * Default handler to go into low thread priority and possibly |
| 360 | * low power mode by cedeing processor to hypervisor | ||
| 361 | */ | 361 | */ |
| 362 | if (cpuidle_idle_call()) { | ||
| 363 | /* On error, execute default handler | ||
| 364 | * to go into low thread priority and possibly | ||
| 365 | * low power mode by cedeing processor to hypervisor | ||
| 366 | */ | ||
| 367 | 362 | ||
| 368 | /* Indicate to hypervisor that we are idle. */ | 363 | /* Indicate to hypervisor that we are idle. */ |
| 369 | get_lppaca()->idle = 1; | 364 | get_lppaca()->idle = 1; |
| 370 | 365 | ||
| 371 | /* | 366 | /* |
| 372 | * Yield the processor to the hypervisor. We return if | 367 | * Yield the processor to the hypervisor. We return if |
| 373 | * an external interrupt occurs (which are driven prior | 368 | * an external interrupt occurs (which are driven prior |
| 374 | * to returning here) or if a prod occurs from another | 369 | * to returning here) or if a prod occurs from another |
| 375 | * processor. When returning here, external interrupts | 370 | * processor. When returning here, external interrupts |
| 376 | * are enabled. | 371 | * are enabled. |
| 377 | */ | 372 | */ |
| 378 | cede_processor(); | 373 | cede_processor(); |
| 379 | 374 | ||
| 380 | get_lppaca()->idle = 0; | 375 | get_lppaca()->idle = 0; |
| 381 | } | ||
| 382 | } | 376 | } |
| 383 | 377 | ||
| 384 | /* | 378 | /* |
