diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2011-03-18 21:01:18 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2011-03-18 21:01:18 +0000 |
commit | e8992af3c081d88dfb9bf31fb5801e2aea57e815 (patch) | |
tree | 91a6e0ab7e349b66e6218212e55c6a1aedef87ed /sys/arch/sparc64/dev | |
parent | 484d330da4300f7093d4c69dacebcb1d58a0f293 (diff) |
Add some delay between a successful keyboard reset sequence and a keyboard
layout inquiry, as some PS/2 converters (at least the Starview SV 125) need
it to behave correctly.
Found the hard way and researched by Mike Malopolski, thanks!
Diffstat (limited to 'sys/arch/sparc64/dev')
-rw-r--r-- | sys/arch/sparc64/dev/comkbd_ebus.c | 4 | ||||
-rw-r--r-- | sys/arch/sparc64/dev/z8530kbd.c | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/sys/arch/sparc64/dev/comkbd_ebus.c b/sys/arch/sparc64/dev/comkbd_ebus.c index 1ee82f962bd..9c7c9ec0f51 100644 --- a/sys/arch/sparc64/dev/comkbd_ebus.c +++ b/sys/arch/sparc64/dev/comkbd_ebus.c @@ -1,4 +1,4 @@ -/* $OpenBSD: comkbd_ebus.c,v 1.20 2009/01/11 16:12:15 miod Exp $ */ +/* $OpenBSD: comkbd_ebus.c,v 1.21 2011/03/18 21:01:17 miod Exp $ */ /* * Copyright (c) 2002 Jason L. Wright (jason@thought.net) @@ -483,6 +483,8 @@ comkbd_init(sc) if (ltries == 0) continue; + /* Some Sun<=>PS/2 converters need some delay here */ + DELAY(5000); /* Send layout request */ comkbd_putc(sc, SKBD_CMD_LAYOUT); diff --git a/sys/arch/sparc64/dev/z8530kbd.c b/sys/arch/sparc64/dev/z8530kbd.c index 0b7c99e58e0..63426e0f466 100644 --- a/sys/arch/sparc64/dev/z8530kbd.c +++ b/sys/arch/sparc64/dev/z8530kbd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: z8530kbd.c,v 1.23 2009/01/12 21:11:58 miod Exp $ */ +/* $OpenBSD: z8530kbd.c,v 1.24 2011/03/18 21:01:17 miod Exp $ */ /* $NetBSD: z8530tty.c,v 1.77 2001/05/30 15:24:24 lukem Exp $ */ /*- @@ -538,6 +538,8 @@ zskbd_init(zst) if (ltries == 0) continue; + /* Some Sun<=>PS/2 converters need some delay here */ + DELAY(5000); /* Send layout request */ zskbd_putc(zst, SKBD_CMD_LAYOUT); |