other versions
USB_CLEAR_HALT(9) | USB Core APIs | USB_CLEAR_HALT(9) |
NAME¶
usb_clear_halt - tells device to clear endpoint halt/stall conditionSYNOPSIS¶
int
usb_clear_halt(struct usb_device * dev,
int pipe);
ARGUMENTS¶
devdevice whose endpoint is halted
pipe
endpoint “pipe” being cleared
CONTEXT¶
!in_interrupt ()DESCRIPTION¶
This is used to clear halt conditions for bulk and interrupt endpoints, as reported by URB completion status. Endpoints that are halted are sometimes referred to as being “stalled”. Such endpoints are unable to transmit or receive data until the halt status is cleared. Any URBs queued for such an endpoint should normally be unlinked by the driver before clearing the halt condition, as described in sections 5.7.5 and 5.8.5 of the USB 2.0 spec. Note that control and isochronous endpoints don't halt, although control endpoints report “protocol stall” (for unsupported requests) using the same status code used to report a true stall. This call is synchronous, and may not be used in an interrupt context.RETURN¶
Zero on success, or else the status code returned by the underlying usb_control_msg call.COPYRIGHT¶
January 2017 | Kernel Hackers Manual 4.8. |