summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/usb_request.h
diff options
context:
space:
mode:
authorhselasky <hselasky@FreeBSD.org>2011-06-06 21:45:09 +0000
committerhselasky <hselasky@FreeBSD.org>2011-06-06 21:45:09 +0000
commit5f55faed0601b0486b09dd7ec3727f5312e33d5d (patch)
tree0b32799a28515b5c61e32d9d9a2ae9fedbba5065 /sys/dev/usb/usb_request.h
parentc8e197a2037e17686f997232419f8b02d1e61ffc (diff)
downloadFreeBSD-src-5f55faed0601b0486b09dd7ec3727f5312e33d5d.zip
FreeBSD-src-5f55faed0601b0486b09dd7ec3727f5312e33d5d.tar.gz
Improve enumeration of Low- and Full-speed devices connected through a
High-speed USB HUB by resetting the transaction translator (TT) before trying re-enumeration. Also when clear-stall fails multiple times try a re-enumeration. Suggested by: Trevor Blackwell MFC after: 14 days
Diffstat (limited to 'sys/dev/usb/usb_request.h')
-rw-r--r--sys/dev/usb/usb_request.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/usb/usb_request.h b/sys/dev/usb/usb_request.h
index 12f373d..ac7a7c1 100644
--- a/sys/dev/usb/usb_request.h
+++ b/sys/dev/usb/usb_request.h
@@ -85,5 +85,9 @@ usb_error_t usbd_req_set_hub_u2_timeout(struct usb_device *udev,
struct mtx *mtx, uint8_t port, uint8_t timeout);
usb_error_t usbd_req_set_hub_depth(struct usb_device *udev,
struct mtx *mtx, uint16_t depth);
+usb_error_t usbd_req_reset_tt(struct usb_device *udev, struct mtx *mtx,
+ uint8_t port);
+usb_error_t usbd_req_clear_tt_buffer(struct usb_device *udev, struct mtx *mtx,
+ uint8_t port, uint8_t addr, uint8_t type, uint8_t endpoint);
#endif /* _USB_REQUEST_H_ */
OpenPOWER on IntegriCloud