Implement cpu_idle() on ia64. We put the processor in a lightweight
halt state that minimizes power consumption while still preserving cache and TLB coherency. Halting the processor is not conditional at this time. Tested with UP and SMP kernels.
This commit is contained in:
parent
55f2099a70
commit
b0f865c1f3
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=121148
@ -272,12 +272,20 @@ cpu_boot(int howto)
|
||||
}
|
||||
|
||||
void
|
||||
cpu_halt(void)
|
||||
cpu_halt()
|
||||
{
|
||||
|
||||
ia64_efi_runtime->ResetSystem(EfiResetWarm, EFI_SUCCESS, 0, 0);
|
||||
}
|
||||
|
||||
void
|
||||
cpu_idle()
|
||||
{
|
||||
struct ia64_pal_result res;
|
||||
|
||||
res = ia64_call_pal_static(PAL_HALT_LIGHT, 0, 0, 0);
|
||||
}
|
||||
|
||||
void
|
||||
cpu_reset()
|
||||
{
|
||||
|
@ -112,7 +112,7 @@ idle_proc(void *dummy)
|
||||
" for a process");
|
||||
#endif
|
||||
|
||||
#ifdef __i386__
|
||||
#if defined(__i386__) || defined(__ia64__)
|
||||
cpu_idle();
|
||||
#endif
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user