summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMichael Shalayeff <mickey@cvs.openbsd.org>1997-04-21 19:55:40 +0000
committerMichael Shalayeff <mickey@cvs.openbsd.org>1997-04-21 19:55:40 +0000
commit21f3a0490dfa98e8b4b5d2826ce7ccaa03e2a757 (patch)
tree1c8ae1fc9cbff03f26533857d7f0cdb10c1822bb /sys
parent56dee089987861381fc3f59d4d1808513b91337a (diff)
use dev/ic/i8042reg.h, not domestic defines
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/i386/stand/libsa/gateA20.c31
1 files changed, 12 insertions, 19 deletions
diff --git a/sys/arch/i386/stand/libsa/gateA20.c b/sys/arch/i386/stand/libsa/gateA20.c
index 7c3ac5a5fda..046c451c3ca 100644
--- a/sys/arch/i386/stand/libsa/gateA20.c
+++ b/sys/arch/i386/stand/libsa/gateA20.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: gateA20.c,v 1.2 1997/03/31 03:12:13 weingart Exp $ */
+/* $OpenBSD: gateA20.c,v 1.3 1997/04/21 19:55:39 mickey Exp $ */
/*
* Ported to boot 386BSD by Julian Elischer (julian@tfs.com) Sept 1992
@@ -31,15 +31,8 @@
#include <sys/types.h>
#include <machine/pio.h>
#include <stand.h>
+#include <dev/ic/i8042reg.h>
-#define K_RDWR 0x60 /* keyboard data & cmds (read/write) */
-#define K_STATUS 0x64 /* keyboard status */
-#define K_CMD 0x64 /* keybd ctlr command (write-only) */
-
-#define K_OBUF_FUL 0x01 /* output buffer full */
-#define K_IBUF_FUL 0x02 /* input buffer full */
-
-#define KC_CMD_WIN 0xd0 /* read output port */
#define KC_CMD_WOUT 0xd1 /* write output port */
#define KB_A20 0xdf /* enable A20,
enable output buffer full interrupt
@@ -56,21 +49,21 @@ gateA20(on)
#ifdef IBM_L40
outb(0x92, 0x2);
#else IBM_L40
- while (inb(K_STATUS) & K_IBUF_FUL);
+ while (inb(KBSTATP) & KBS_IBF);
- while (inb(K_STATUS) & K_OBUF_FUL)
- (void)inb(K_RDWR);
+ while (inb(KBSTATP) & KBS_DIB)
+ (void)inb(KBDATAP);
- outb(K_CMD, KC_CMD_WOUT);
- while (inb(K_STATUS) & K_IBUF_FUL);
+ outb(KBCMDP, KC_CMD_WOUT);
+ while (inb(KBSTATP) & KBS_IBF);
if (on)
- outb(K_RDWR, KB_A20);
+ outb(KBDATAP, KB_A20);
else
- outb(K_RDWR, 0xcd);
- while (inb(K_STATUS) & K_IBUF_FUL);
+ outb(KBDATAP, 0xcd);
+ while (inb(KBSTATP) & KBS_IBF);
- while (inb(K_STATUS) & K_OBUF_FUL)
- (void)inb(K_RDWR);
+ while (inb(KBSTATP) & KBS_DIB)
+ (void)inb(KBDATAP);
#endif IBM_L40
}