|
@@ -1498,10 +1498,10 @@ int xhci_endpoint_init(struct xhci_hcd *xhci,
|
|
|
* use Event Data TRBs, and we don't chain in a link TRB on short
|
|
|
* transfers, we're basically dividing by 1.
|
|
|
*
|
|
|
- * xHCI 1.0 specification indicates that the Average TRB Length should
|
|
|
- * be set to 8 for control endpoints.
|
|
|
+ * xHCI 1.0 and 1.1 specification indicates that the Average TRB Length
|
|
|
+ * should be set to 8 for control endpoints.
|
|
|
*/
|
|
|
- if (usb_endpoint_xfer_control(&ep->desc) && xhci->hci_version == 0x100)
|
|
|
+ if (usb_endpoint_xfer_control(&ep->desc) && xhci->hci_version >= 0x100)
|
|
|
ep_ctx->tx_info |= cpu_to_le32(AVG_TRB_LENGTH_FOR_EP(8));
|
|
|
else
|
|
|
ep_ctx->tx_info |=
|