summaryrefslogtreecommitdiffstats
path: root/arch/mips
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips')
-rw-r--r--arch/mips/jazz/hw-access.c23
-rw-r--r--arch/mips/jazz/int-handler.S9
2 files changed, 29 insertions, 3 deletions
diff --git a/arch/mips/jazz/hw-access.c b/arch/mips/jazz/hw-access.c
index 46357d9c4..64eebd252 100644
--- a/arch/mips/jazz/hw-access.c
+++ b/arch/mips/jazz/hw-access.c
@@ -1,4 +1,4 @@
-/* $Id: hw-access.c,v 1.8 1998/05/07 02:57:15 ralf Exp $
+/* $Id: hw-access.c,v 1.9 1998/06/30 00:21:48 ralf Exp $
*
* Low-level hardware access stuff for Jazz family machines.
*
@@ -65,3 +65,24 @@ __initfunc(void jazz_keyboard_setup(void))
r4030_read_reg16(JAZZ_IO_IRQ_ENABLE) |
JAZZ_IE_KEYBOARD);
}
+
+int jazz_ps2_request_irq(void)
+{
+ extern void aux_interrupt(int, void *, struct pt_regs *);
+ int ret;
+
+ ret = request_irq(JAZZ_MOUSE_IRQ, aux_interrupt, 0, "PS/2 Mouse", NULL);
+ if (!ret)
+ r4030_write_reg16(JAZZ_IO_IRQ_ENABLE,
+ r4030_read_reg16(JAZZ_IO_IRQ_ENABLE) |
+ JAZZ_IE_MOUSE);
+ return ret;
+}
+
+void jazz_ps2_free_irq(void)
+{
+ r4030_write_reg16(JAZZ_IO_IRQ_ENABLE,
+ r4030_read_reg16(JAZZ_IO_IRQ_ENABLE) |
+ JAZZ_IE_MOUSE);
+ free_irq(JAZZ_MOUSE_IRQ, NULL);
+}
diff --git a/arch/mips/jazz/int-handler.S b/arch/mips/jazz/int-handler.S
index 3351725bf..46886f75c 100644
--- a/arch/mips/jazz/int-handler.S
+++ b/arch/mips/jazz/int-handler.S
@@ -1,4 +1,4 @@
-/* $Id: int-handler.S,v 1.7 1997/12/29 11:33:56 tsbogend Exp $
+/* $Id: int-handler.S,v 1.8 1998/05/07 23:43:59 ralf Exp $
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
@@ -261,7 +261,12 @@ loc_keyboard: li s1,~JAZZ_IE_KEYBOARD
li a0,JAZZ_KEYBOARD_IRQ
b loc_call
-loc_mouse: PANIC("Unimplemented loc_mouse handler")
+/*
+ * Mouse interrupt handler
+ */
+loc_mouse: li s1,~JAZZ_IE_MOUSE
+ li a0,JAZZ_MOUSE_IRQ
+ b loc_call
/*
* Serial port 1 IRQ