-/* $Id: process.c,v 1.28 2004/05/05 16:54:23 lethal Exp $
+/* $Id: process.c,v 1.26 2004/02/06 14:14:14 kkojima Exp $
*
* linux/arch/sh/kernel/process.c
*
#include <asm/uaccess.h>
#include <asm/mmu_context.h>
#include <asm/elf.h>
-#if defined(CONFIG_SH_HS7751RVOIP)
-#include <asm/hs7751rvoip/hs7751rvoip.h>
-#elif defined(CONFIG_SH_RTS7751R2D)
-#include <asm/rts7751r2d/rts7751r2d.h>
-#endif
static int hlt_counter=0;
{
/* endless idle loop with no priority at all */
while (1) {
- if (hlt_counter) {
- while (1)
- if (need_resched())
- break;
- } else {
- while (!need_resched())
- cpu_sleep();
- }
+ while (!need_resched())
+ cpu_relax();
schedule();
}
void machine_halt(void)
{
-#if defined(CONFIG_SH_HS7751RVOIP)
- unsigned short value;
-
- value = ctrl_inw(PA_OUTPORTR);
- ctrl_outw((value & 0xffdf), PA_OUTPORTR);
-#elif defined(CONFIG_SH_RTS7751R2D)
- ctrl_outw(0x0001, PA_POWOFF);
-#endif
while (1)
- cpu_sleep();
+ cpu_relax();
}
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void)
{
-#if defined(CONFIG_SH_HS7751RVOIP)
- unsigned short value;
-
- value = ctrl_inw(PA_OUTPORTR);
- ctrl_outw((value & 0xffdf), PA_OUTPORTR);
-#elif defined(CONFIG_SH_RTS7751R2D)
- ctrl_outw(0x0001, PA_POWOFF);
-#endif
}
EXPORT_SYMBOL(machine_power_off);