12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #include <linux/cpu.h>
- #include <linux/irqflags.h>
- #include <asm/barrier.h>
- #include <asm/cpuidle.h>
- #include <asm/cpufeature.h>
- #include <asm/sysreg.h>
- void noinstr cpu_do_idle(void)
- {
- struct arm_cpuidle_irq_context context;
- arm_cpuidle_save_irq_context(&context);
- dsb(sy);
- wfi();
- arm_cpuidle_restore_irq_context(&context);
- }
- void noinstr arch_cpu_idle(void)
- {
-
- cpu_do_idle();
- raw_local_irq_enable();
- }
|