Author: hselasky
Date: Sun May 25 18:15:37 2014
New Revision: 266666
URL: http://svnweb.freebsd.org/changeset/base/266666

Log:
  MFC r266541:
  
  - Fix a bug where the TLBPC value was forced to being odd for IN
  direction isochronous transfers.
  - Remove setting of fields which does not belong to the respective
  TRBs. These fields are currently set as zero and this is more a
  cosmetic change.
  
  Approved by:    re

Modified:
  stable/9/sys/dev/usb/controller/xhci.c
Directory Properties:
  stable/9/sys/   (props changed)
  stable/9/sys/dev/   (props changed)

Modified: stable/9/sys/dev/usb/controller/xhci.c
==============================================================================
--- stable/9/sys/dev/usb/controller/xhci.c      Sun May 25 18:07:23 2014        
(r266665)
+++ stable/9/sys/dev/usb/controller/xhci.c      Sun May 25 18:15:37 2014        
(r266666)
@@ -1815,31 +1815,25 @@ restart:
                                            XHCI_TRB_3_ISO_SIA_BIT;
                                }
                                if (temp->direction == UE_DIR_IN)
-                                       dword |= XHCI_TRB_3_DIR_IN | 
XHCI_TRB_3_ISP_BIT;
+                                       dword |= XHCI_TRB_3_ISP_BIT;
                                break;
                        case XHCI_TRB_TYPE_DATA_STAGE:
                                dword = XHCI_TRB_3_CHAIN_BIT | 
XHCI_TRB_3_CYCLE_BIT |
-                                   
XHCI_TRB_3_TYPE_SET(XHCI_TRB_TYPE_DATA_STAGE) |
-                                   XHCI_TRB_3_TBC_SET(temp->tbc) |
-                                   XHCI_TRB_3_TLBPC_SET(temp->tlbpc);
+                                   
XHCI_TRB_3_TYPE_SET(XHCI_TRB_TYPE_DATA_STAGE);
                                if (temp->direction == UE_DIR_IN)
                                        dword |= XHCI_TRB_3_DIR_IN | 
XHCI_TRB_3_ISP_BIT;
                                break;
                        case XHCI_TRB_TYPE_STATUS_STAGE:
                                dword = XHCI_TRB_3_CHAIN_BIT | 
XHCI_TRB_3_CYCLE_BIT |
-                                   
XHCI_TRB_3_TYPE_SET(XHCI_TRB_TYPE_STATUS_STAGE) |
-                                   XHCI_TRB_3_TBC_SET(temp->tbc) |
-                                   XHCI_TRB_3_TLBPC_SET(temp->tlbpc);
+                                   
XHCI_TRB_3_TYPE_SET(XHCI_TRB_TYPE_STATUS_STAGE);
                                if (temp->direction == UE_DIR_IN)
                                        dword |= XHCI_TRB_3_DIR_IN;
                                break;
                        default:        /* XHCI_TRB_TYPE_NORMAL */
                                dword = XHCI_TRB_3_CHAIN_BIT | 
XHCI_TRB_3_CYCLE_BIT |
-                                   XHCI_TRB_3_TYPE_SET(XHCI_TRB_TYPE_NORMAL) |
-                                   XHCI_TRB_3_TBC_SET(temp->tbc) |
-                                   XHCI_TRB_3_TLBPC_SET(temp->tlbpc);
+                                   XHCI_TRB_3_TYPE_SET(XHCI_TRB_TYPE_NORMAL);
                                if (temp->direction == UE_DIR_IN)
-                                       dword |= XHCI_TRB_3_DIR_IN | 
XHCI_TRB_3_ISP_BIT;
+                                       dword |= XHCI_TRB_3_ISP_BIT;
                                break;
                        }
                        td->td_trb[x].dwTrb3 = htole32(dword);
_______________________________________________
svn-src-stable-9@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-stable-9
To unsubscribe, send any mail to "svn-src-stable-9-unsubscr...@freebsd.org"

Reply via email to