Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
idle.c
Go to the documentation of this file.
1 /*
2  * arch/arm/mach-gemini/idle.c
3  */
4 
5 #include <linux/init.h>
6 #include <asm/system.h>
7 #include <asm/proc-fns.h>
8 
9 static void gemini_idle(void)
10 {
11  /*
12  * Because of broken hardware we have to enable interrupts or the CPU
13  * will never wakeup... Acctualy it is not very good to enable
14  * interrupts first since scheduler can miss a tick, but there is
15  * no other way around this. Platforms that needs it for power saving
16  * should call enable_hlt() in init code, since by default it is
17  * disabled.
18  */
20  cpu_do_idle();
21 }
22 
23 static int __init gemini_idle_init(void)
24 {
25  arm_pm_idle = gemini_idle;
26  return 0;
27 }
28 
29 arch_initcall(gemini_idle_init);