Avoid using endless retransmission at EHCI hardware level, hence this hide

errors from the applications. Only use endless retransmission while in the
non-addressed state on a High-Speed device.

Approved by:    thompsa (mentor)
This commit is contained in:
Hans Petter Selasky 2010-10-14 21:26:06 +00:00
parent 1678e1358b
commit 59c9250333

View File

@ -1860,7 +1860,8 @@ ehci_setup_standard_chain(struct usb_xfer *xfer, ehci_qh_t **qh_last)
temp.auto_data_toggle = 1;
}
if (usbd_get_speed(xfer->xroot->udev) != USB_SPEED_HIGH) {
if (xfer->xroot->udev->parent_hs_hub != NULL ||
xfer->xroot->udev->address != 0) {
/* max 3 retries */
temp.qtd_status |=
htohc32(temp.sc, EHCI_QTD_SET_CERR(3));