svn commit: r251249 - head/sys/dev/usb/controller
Hans Petter Selasky
hselasky at FreeBSD.org
Sun Jun 2 10:54:48 UTC 2013
Author: hselasky
Date: Sun Jun 2 10:54:47 2013
New Revision: 251249
URL: http://svnweb.freebsd.org/changeset/base/251249
Log:
Don't set the start ISOC ASAP bit for non-isochronous TRBs.
MFC after: 1 week
Modified:
head/sys/dev/usb/controller/xhci.c
Modified: head/sys/dev/usb/controller/xhci.c
==============================================================================
--- head/sys/dev/usb/controller/xhci.c Sun Jun 2 10:35:08 2013 (r251248)
+++ head/sys/dev/usb/controller/xhci.c Sun Jun 2 10:54:47 2013 (r251249)
@@ -1700,14 +1700,17 @@ restart:
dword = XHCI_TRB_3_CHAIN_BIT | XHCI_TRB_3_CYCLE_BIT |
XHCI_TRB_3_TYPE_SET(temp->trb_type) |
- (temp->do_isoc_sync ?
- XHCI_TRB_3_FRID_SET(temp->isoc_frame / 8) :
- XHCI_TRB_3_ISO_SIA_BIT) |
XHCI_TRB_3_TBC_SET(temp->tbc) |
XHCI_TRB_3_TLBPC_SET(temp->tlbpc);
- temp->do_isoc_sync = 0;
-
+ if (temp->trb_type == XHCI_TRB_TYPE_ISOCH) {
+ if (temp->do_isoc_sync != 0) {
+ temp->do_isoc_sync = 0;
+ dword |= XHCI_TRB_3_FRID_SET(temp->isoc_frame / 8);
+ } else {
+ dword |= XHCI_TRB_3_ISO_SIA_BIT;
+ }
+ }
if (temp->direction == UE_DIR_IN) {
dword |= XHCI_TRB_3_DIR_IN;
More information about the svn-src-head
mailing list