summaryrefslogtreecommitdiff
path: root/sys/arch/i386/isa/pccons.c
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>1996-07-16 10:58:37 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>1996-07-16 10:58:37 +0000
commit96e3273218d3ba0bfb9cc0cd2d7133fde2d2b8a3 (patch)
tree168dba9ee0debde2be26a19148e7c997725d4199 /sys/arch/i386/isa/pccons.c
parent8b2378a16bd14494c347a6adb2199965d6aec807 (diff)
pcvt/pccons too fast for some kbds; netbsd pr#2631; mike.long@analog.com
Diffstat (limited to 'sys/arch/i386/isa/pccons.c')
-rw-r--r--sys/arch/i386/isa/pccons.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/arch/i386/isa/pccons.c b/sys/arch/i386/isa/pccons.c
index daf071830fe..43aad7f3fbd 100644
--- a/sys/arch/i386/isa/pccons.c
+++ b/sys/arch/i386/isa/pccons.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pccons.c,v 1.19 1996/06/25 18:32:03 tholo Exp $ */
+/* $OpenBSD: pccons.c,v 1.20 1996/07/16 10:58:34 deraadt Exp $ */
/* $NetBSD: pccons.c,v 1.99.4.1 1996/06/04 20:03:53 cgd Exp $ */
/*-
@@ -172,10 +172,15 @@ void pccnputc __P((dev_t, char));
int pccngetc __P((dev_t));
void pccnpollc __P((dev_t, int));
+/* wait 7+ us for keyboard controller; ~1.25us per inb() */
#define KBD_DELAY \
{ u_char x = inb(0x84); (void) x; } \
{ u_char x = inb(0x84); (void) x; } \
{ u_char x = inb(0x84); (void) x; } \
+ { u_char x = inb(0x84); (void) x; } \
+ { u_char x = inb(0x84); (void) x; } \
+ { u_char x = inb(0x84); (void) x; } \
+ { u_char x = inb(0x84); (void) x; } \
{ u_char x = inb(0x84); (void) x; }
static __inline int