diff options
author | Damien Bergamini <damien@cvs.openbsd.org> | 2005-04-19 08:33:27 +0000 |
---|---|---|
committer | Damien Bergamini <damien@cvs.openbsd.org> | 2005-04-19 08:33:27 +0000 |
commit | 5f3804667e6b3632cde306a2f7265c9eeca0fc83 (patch) | |
tree | 213876cb196ecc9ecccdb01f1a544be5dfacfe09 /sys/dev/usb | |
parent | 90a9ae2e48f09bb46038c9dd15954e8ecb6df391 (diff) |
fix for isochronous pipes:
xfer's busy_free status can be XFER_ONQU when uhci_device_isoc_done()
is called. this happens when the xfer is queued in the driver supplied
callback function that is called before uhci_device_isoc_done().
ok dlg@
Diffstat (limited to 'sys/dev/usb')
-rw-r--r-- | sys/dev/usb/uhci.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/dev/usb/uhci.c b/sys/dev/usb/uhci.c index 14872d9aaa8..c04ec682c48 100644 --- a/sys/dev/usb/uhci.c +++ b/sys/dev/usb/uhci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: uhci.c,v 1.37 2004/11/11 12:15:48 dlg Exp $ */ +/* $OpenBSD: uhci.c,v 1.38 2005/04/19 08:33:26 damien Exp $ */ /* $NetBSD: uhci.c,v 1.172 2003/02/23 04:19:26 simonb Exp $ */ /* $FreeBSD: src/sys/dev/usb/uhci.c,v 1.33 1999/11/17 22:33:41 n_hibma Exp $ */ @@ -2601,9 +2601,8 @@ uhci_device_isoc_done(usbd_xfer_handle xfer) return; #ifdef DIAGNOSTIC - if (xfer->busy_free != XFER_BUSY) { - printf("uhci_device_isoc_done: xfer=%p not busy 0x%08x\n", - xfer, xfer->busy_free); + if (xfer->busy_free == XFER_FREE) { + printf("uhci_device_isoc_done: xfer=%p is free\n", xfer); return; } |