summaryrefslogtreecommitdiffstats
path: root/arch/mips/jazz/hw-access.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1997-07-24 01:55:37 +0000
committerRalf Baechle <ralf@linux-mips.org>1997-07-24 01:55:37 +0000
commite940c15ebb25269923db9a8a912727046cfffa77 (patch)
tree0e4bbd46c2d69a129bfc30bd4e1f8dce132ba64b /arch/mips/jazz/hw-access.c
parent79fa43ce85955f44a4b6fd7b5134743f12c225b0 (diff)
Cleanup the architecture specifics of keyboard and PS/2 mouse drivers.
Diffstat (limited to 'arch/mips/jazz/hw-access.c')
-rw-r--r--arch/mips/jazz/hw-access.c34
1 files changed, 33 insertions, 1 deletions
diff --git a/arch/mips/jazz/hw-access.c b/arch/mips/jazz/hw-access.c
index 52a61165f..482e50cb2 100644
--- a/arch/mips/jazz/hw-access.c
+++ b/arch/mips/jazz/hw-access.c
@@ -5,7 +5,7 @@
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
- * Copyright (C) 1995, 1996 by Ralf Baechle
+ * Copyright (C) 1995, 1996, 1997 by Ralf Baechle
*/
#include <linux/delay.h>
#include <linux/linkage.h>
@@ -15,6 +15,7 @@
#include <asm/vector.h>
#include <asm/jazz.h>
#include <asm/jazzdma.h>
+#include <asm/keyboard.h>
#include <asm/pgtable.h>
#include <asm/mc146818rtc.h>
@@ -146,3 +147,34 @@ struct feature jazz_feature = {
rtc_read_data,
rtc_write_data
};
+
+static volatile keyboard_hardware *jazz_kh = JAZZ_KEYBOARD_ADDRESS;
+
+static unsigned char jazz_read_input(void)
+{
+ return jazz_kh->data;
+}
+
+static void jazz_write_output(unsigned char val)
+{
+ jazz_kh->data = val;
+}
+
+static void jazz_write_command(unsigned char val)
+{
+ jazz_kh->command = val;
+}
+
+static unsigned char jazz_read_status(void)
+{
+ return jazz_kh->command;
+}
+
+void jazz_keyboard_setup(void)
+{
+ kbd_read_input = jazz_read_input;
+ kbd_write_output = jazz_write_output;
+ kbd_write_command = jazz_write_command;
+ kbd_read_status = jazz_read_status;
+ request_region(0x60, 16, "keyboard");
+}