Date: Sun, 26 May 1996 19:30:54 +1000 From: Mark Hannon <mark@seeware.DIALix.oz.au> To: Bruce Evans <bde@zeta.org.au> Cc: jkh@time.cdrom.com, freebsd-current@FreeBSD.ORG Subject: Re: bad keyboard reset routine? Message-ID: <199605260930.TAA00369@putte.seeware.DIALix.oz.au> In-Reply-To: Your message of "Sat, 25 May 1996 20:29:54 %2B1000." <199605251029.UAA13162@godzilla.zeta.org.au>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi,
I made the following changes to syscons.c:
gotack:
DELAY(10);
j = 1000; /* Wait at most 10 ms (supposedly). */
while ((inb(KB_STAT) & KB_BUF_FULL) == 0 && --j > 0) DELAY(10);
DELAY(10);
val = inb(KB_DATA);
if (val == KB_ACK && --i > 0)
goto gotack;
printf("scprobe: Keyboard reset sent %d times\n", 1000-i);
if (val != KB_RESET_DONE)
printf("scprobe: keyboard RESET failed (result = 0x%02x)\n", val);
}
ie, I stepped the number of retries to 1000, the following was the result:
putte:~> dmesg | grep sc
scprobe: Keyboard reset sent 13 times
sc0 at 0x60-0x6f irq 1 on motherboard
sc0: VGA color <16 virtual consoles, flags=0x0>
The keyboard works now.
Rgds/mark
--
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+
| Mark Hannon,| FreeBSD - Free Unix for your PC| mark@seeware.DIALix.oz.au|
| Melbourne, | PGP key available by fingering | epamha@epa.ericsson.se |
| Australia | seeware@melbourne.DIALix.oz.au | |
+-=-=-=-=-=-=-+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199605260930.TAA00369>
