summaryrefslogtreecommitdiff
path: root/sys/dev/uart
diff options
context:
space:
mode:
authorMaksim Yevmenkin <emax@FreeBSD.org>2006-09-18 22:56:59 +0000
committerMaksim Yevmenkin <emax@FreeBSD.org>2006-09-18 22:56:59 +0000
commit8c3c9a505f6e439a80b6eea70ca21f1e90b35d3a (patch)
tree234e2a603e697bd7af8b5b011e33bc494ba2546a /sys/dev/uart
parent3e9b1bcabf088c7e72e929729ce7c2cdc27cef3d (diff)
Notes
Diffstat (limited to 'sys/dev/uart')
-rw-r--r--sys/dev/uart/uart_kbd_sun.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/dev/uart/uart_kbd_sun.c b/sys/dev/uart/uart_kbd_sun.c
index f3f7b2c37717..02db9c63be25 100644
--- a/sys/dev/uart/uart_kbd_sun.c
+++ b/sys/dev/uart/uart_kbd_sun.c
@@ -549,9 +549,11 @@ sunkbd_repeat(void *v)
{
struct sunkbd_softc *sc = v;
- if (sc->sc_repeat_key != -1) {
- sc->sc_repeating = 1;
- sc->sc_kbd.kb_callback.kc_func(&sc->sc_kbd,
- KBDIO_KEYINPUT, sc->sc_kbd.kb_callback.kc_arg);
+ if (KBD_IS_ACTIVE(&sc->sc_kbd) && KBD_IS_BUSY(&sc->sc_kbd)) {
+ if (sc->sc_repeat_key != -1) {
+ sc->sc_repeating = 1;
+ sc->sc_kbd.kb_callback.kc_func(&sc->sc_kbd,
+ KBDIO_KEYINPUT, sc->sc_kbd.kb_callback.kc_arg);
+ }
}
}