diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/cobalt/reset.c | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/arch/mips/cobalt/reset.c b/arch/mips/cobalt/reset.c index 71eb4cc..c3d1baa 100644 --- a/arch/mips/cobalt/reset.c +++ b/arch/mips/cobalt/reset.c @@ -10,7 +10,6 @@ */ #include <linux/init.h> #include <linux/io.h> -#include <linux/jiffies.h> #include <linux/leds.h> #include <cobalt.h> @@ -29,29 +28,13 @@ device_initcall(ledtrig_power_off_init); void cobalt_machine_halt(void) { - int state, last, diff; - unsigned long mark; - /* * turn on power off LED on RaQ - * - * restart if ENTER and SELECT are pressed */ - - last = COBALT_KEY_PORT; - led_trigger_event(power_off_led_trigger, LED_FULL); - for (state = 0;;) { - diff = COBALT_KEY_PORT ^ last; - last ^= diff; - - if((diff & (COBALT_KEY_ENTER | COBALT_KEY_SELECT)) && !(~last & (COBALT_KEY_ENTER | COBALT_KEY_SELECT))) - writeb(RESET, RESET_PORT); - - for (mark = jiffies; jiffies - mark < HZ;) - ; - } + local_irq_disable(); + while (1) ; } void cobalt_machine_restart(char *command) |