1USB_CLEAR_HALT(9) USB Core APIs USB_CLEAR_HALT(9)
2
3
4
6 usb_clear_halt - tells device to clear endpoint halt/stall condition
7
9 int usb_clear_halt(struct usb_device * dev, int pipe);
10
12 dev
13 device whose endpoint is halted
14
15 pipe
16 endpoint “pipe” being cleared
17
19 !in_interrupt ()
20
22 This is used to clear halt conditions for bulk and interrupt endpoints,
23 as reported by URB completion status. Endpoints that are halted are
24 sometimes referred to as being “stalled”. Such endpoints are unable to
25 transmit or receive data until the halt status is cleared. Any URBs
26 queued for such an endpoint should normally be unlinked by the driver
27 before clearing the halt condition, as described in sections 5.7.5 and
28 5.8.5 of the USB 2.0 spec.
29
30 Note that control and isochronous endpoints don´t halt, although
31 control endpoints report “protocol stall” (for unsupported requests)
32 using the same status code used to report a true stall.
33
34 This call is synchronous, and may not be used in an interrupt context.
35
36 Returns zero on success, or else the status code returned by the
37 underlying usb_control_msg call.
38
40Kernel Hackers Manual 2.6. June 2019 USB_CLEAR_HALT(9)