summaryrefslogtreecommitdiffstats
path: root/arch/mips/sgi/kernel/setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/sgi/kernel/setup.c')
-rw-r--r--arch/mips/sgi/kernel/setup.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/arch/mips/sgi/kernel/setup.c b/arch/mips/sgi/kernel/setup.c
index 9699f812c..451c785f2 100644
--- a/arch/mips/sgi/kernel/setup.c
+++ b/arch/mips/sgi/kernel/setup.c
@@ -1,4 +1,4 @@
-/* $Id: setup.c,v 1.9 1998/05/07 02:57:21 ralf Exp $
+/* $Id: setup.c,v 1.10 1998/06/30 00:21:58 ralf Exp $
*
* setup.c: SGI specific setup, including init of the feature struct.
*
@@ -24,11 +24,8 @@
extern int serial_console; /* in console.c, of course */
-extern void sgi_machine_restart(char *command);
-extern void sgi_machine_halt(void);
-extern void sgi_machine_power_off(void);
-
extern struct rtc_ops indy_rtc_ops;
+void indy_reboot_setup(void);
static volatile struct hpc_keyb *sgi_kh = (struct hpc_keyb *) (KSEG1 + 0x1fbd9800 + 64);
@@ -70,6 +67,13 @@ __initfunc(static void sgi_keyboard_setup(void))
kbd_write_output = sgi_write_output;
kbd_write_command = sgi_write_command;
kbd_read_status = sgi_read_status;
+
+ /* Dirty hack, this get's called as a callback from the keyboard
+ driver. We piggyback the initialization of the front panel
+ button handling on it even though they're technically not
+ related with the keyboard driver in any way. Doing it from
+ indy_setup wouldn't work since kmalloc isn't initialized yet. */
+ indy_reboot_setup();
}
__initfunc(static void sgi_irq_setup(void))
@@ -84,10 +88,6 @@ __initfunc(void sgi_setup(void))
irq_setup = sgi_irq_setup;
keyboard_setup = sgi_keyboard_setup;
- _machine_restart = sgi_machine_restart;
- _machine_halt = sgi_machine_halt;
- _machine_power_off = sgi_machine_power_off;
-
/* Init the INDY HPC I/O controller. Need to call this before
* fucking with the memory controller because it needs to know the
* boardID and whether this is a Guiness or a FullHouse machine.