summaryrefslogtreecommitdiff
path: root/sys/dev/usb
diff options
context:
space:
mode:
authorMarcus Glocker <mglocker@cvs.openbsd.org>2009-06-01 11:26:19 +0000
committerMarcus Glocker <mglocker@cvs.openbsd.org>2009-06-01 11:26:19 +0000
commit4d8d63dbad55e83e6e8a1354e2ed00ef54f6b0cd (patch)
tree7f288270dbb96eea378c1cbc6246d87db431621e /sys/dev/usb
parentc32d9691f9f0565926ad358525a1cd880fcf3967 (diff)
I forgot to apply the End Of Command token for async xfers. Maybe that
caused the stalls seen in some rare conditions? Who knows ...
Diffstat (limited to 'sys/dev/usb')
-rw-r--r--sys/dev/usb/udl.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/usb/udl.c b/sys/dev/usb/udl.c
index d0142c18b03..750da7d1706 100644
--- a/sys/dev/usb/udl.c
+++ b/sys/dev/usb/udl.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: udl.c,v 1.12 2009/05/31 18:26:44 mglocker Exp $ */
+/* $OpenBSD: udl.c,v 1.13 2009/06/01 11:26:18 mglocker Exp $ */
/*
* Copyright (c) 2009 Marcus Glocker <mglocker@openbsd.org>
@@ -1027,6 +1027,10 @@ udl_cmd_send_async(struct udl_softc *sc)
}
cx = &sc->sc_cmd_xfer[i];
+ /* mark end of command stack */
+ udl_cmd_insert_int_1(sc, UDL_BULK_SOC);
+ udl_cmd_insert_int_1(sc, UDL_BULK_CMD_EOC);
+
/* copy command buffer to xfer buffer */
bcopy(cb->buf, cx->buf, cb->off);