Skip to content

Commit aba92c9

Browse files
committed
unicore: Use generic idle loop
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Paul McKenney <paulmck@linux.vnet.ibm.com> Cc: Peter Zijlstra <peterz@infradead.org> Reviewed-by: Cc: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> Cc: Magnus Damm <magnus.damm@gmail.com> Cc: Guan Xuetao <gxt@mprc.pku.edu.cn> Link: http://lkml.kernel.org/r/20130321215235.415426466@linutronix.de Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
1 parent 0dc8153 commit aba92c9

File tree

2 files changed

+4
-18
lines changed

2 files changed

+4
-18
lines changed

arch/unicore32/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ config UNICORE32
1717
select ARCH_WANT_FRAME_POINTERS
1818
select GENERIC_IOMAP
1919
select MODULES_USE_ELF_REL
20+
select GENERIC_IDLE_LOOP
2021
help
2122
UniCore-32 is 32-bit Instruction Set Architecture,
2223
including a series of low-power-consumption RISC chip

arch/unicore32/kernel/process.c

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -45,25 +45,10 @@ static const char * const processor_modes[] = {
4545
"UK18", "UK19", "UK1A", "EXTN", "UK1C", "UK1D", "UK1E", "SUSR"
4646
};
4747

48-
void cpu_idle(void)
48+
void arch_cpu_idle(void)
4949
{
50-
/* endless idle loop with no priority at all */
51-
while (1) {
52-
tick_nohz_idle_enter();
53-
rcu_idle_enter();
54-
while (!need_resched()) {
55-
local_irq_disable();
56-
stop_critical_timings();
57-
cpu_do_idle();
58-
local_irq_enable();
59-
start_critical_timings();
60-
}
61-
rcu_idle_exit();
62-
tick_nohz_idle_exit();
63-
preempt_enable_no_resched();
64-
schedule();
65-
preempt_disable();
66-
}
50+
cpu_do_idle();
51+
local_irq_enable();
6752
}
6853

6954
static char reboot_mode = 'h';

0 commit comments

Comments
 (0)