summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoriedowse <iedowse@FreeBSD.org>2006-01-08 03:27:43 +0000
committeriedowse <iedowse@FreeBSD.org>2006-01-08 03:27:43 +0000
commitd2f4cceaf55160a694c481424ffc20ce134c9898 (patch)
tree6f7e4704d51eaf0a6cfccfeceea8683695cdda08
parentd1f7b6d6058fadd65e506ebb78cf2f0bf59c1819 (diff)
downloadFreeBSD-src-d2f4cceaf55160a694c481424ffc20ce134c9898.zip
FreeBSD-src-d2f4cceaf55160a694c481424ffc20ce134c9898.tar.gz
Don't perform an endpoint stall clear every time a pipe is opened.
This should not be necessary, and it is known to confuse certain devices. Obtained from: NetBSD Requested by: many
-rw-r--r--sys/dev/usb/usb_subr.c17
1 files changed, 0 insertions, 17 deletions
diff --git a/sys/dev/usb/usb_subr.c b/sys/dev/usb/usb_subr.c
index ca573b6..655a4e3 100644
--- a/sys/dev/usb/usb_subr.c
+++ b/sys/dev/usb/usb_subr.c
@@ -779,23 +779,6 @@ usbd_setup_pipe(usbd_device_handle dev, usbd_interface_handle iface,
return (err);
}
- if (!(dev->quirks->uq_flags & UQ_NO_OPEN_CLEARSTALL)) {
- /* Clear any stall and make sure DATA0 toggle will be used next. */
- if (UE_GET_ADDR(ep->edesc->bEndpointAddress) != USB_CONTROL_ENDPOINT) {
- err = usbd_clear_endpoint_stall(p);
- /*
- * Some devices reject this command, so ignore a STALL.
- * Some device just time out on this command, so ignore
- * that too.
- */
- if (err && err != USBD_STALLED && err != USBD_TIMEOUT) {
- printf("usbd_setup_pipe: failed to start "
- "endpoint, %s\n", usbd_errstr(err));
- return (err);
- }
- }
- }
-
*pipe = p;
return (USBD_NORMAL_COMPLETION);
}
OpenPOWER on IntegriCloud