summaryrefslogtreecommitdiff
path: root/sys/dev/usb/ehcivar.h
diff options
context:
space:
mode:
authorMartin Pieuchot <mpi@cvs.openbsd.org>2014-08-30 09:33:12 +0000
committerMartin Pieuchot <mpi@cvs.openbsd.org>2014-08-30 09:33:12 +0000
commitd6d1f4ecc54db6c3f48654e14f60ee5042d10a58 (patch)
tree623a8513b29439f05c7a711a5837663cce7c4587 /sys/dev/usb/ehcivar.h
parentb083fb5fde307d5a9145d75001386157313c5535 (diff)
Rewrite how queue heads are inserted and removed from the asynchronous
list. Use a queue head per xfer and no longer per pipe. Since queue heads are now setup when a transfer is submited we do not need to open the control pipe more than once. This also simplify transfer abortion. Tested by many, thanks!
Diffstat (limited to 'sys/dev/usb/ehcivar.h')
-rw-r--r--sys/dev/usb/ehcivar.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/usb/ehcivar.h b/sys/dev/usb/ehcivar.h
index c65fee0be6f..8d2ed756589 100644
--- a/sys/dev/usb/ehcivar.h
+++ b/sys/dev/usb/ehcivar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: ehcivar.h,v 1.32 2014/05/16 18:17:03 mpi Exp $ */
+/* $OpenBSD: ehcivar.h,v 1.33 2014/08/30 09:33:11 mpi Exp $ */
/* $NetBSD: ehcivar.h,v 1.19 2005/04/29 15:04:29 augustss Exp $ */
/*
@@ -79,6 +79,7 @@ struct ehci_soft_itd {
struct ehci_xfer {
struct usbd_xfer xfer;
TAILQ_ENTRY(ehci_xfer) inext; /* list of active xfers */
+ struct ehci_soft_qh *sqh;
struct ehci_soft_qtd *sqtdstart;
struct ehci_soft_qtd *sqtdend;
struct ehci_soft_itd *itdstart;