.\" This documentation was generated from the book titled "USB Gadget API for Linux", which is part of the Linux kernel source. .\" .\" This documentation comes with the following legal notice: .\" .\" This documentation is free software; you can redistribute .\" it and/or modify it under the terms of the GNU General Public .\" License as published by the Free Software Foundation; either .\" version 2 of the License, or (at your option) any later .\" version. .\" .\" This program is distributed in the hope that it will be .\" useful, but WITHOUT ANY WARRANTY; without even the implied .\" warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .\" See the GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public .\" License along with this program; if not, write to the Free .\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, .\" MA 02111-1307 USA .\" .\" For more details see the file COPYING in the source .\" distribution of Linux. .\" .\" For comments on the formatting of this manpage, please contact Michael Still .\" This manpage has been automatically generated by docbook2man .\" from a DocBook document. This tool can be found at: .\" .\" Please send any bug reports, improvements, comments, patches, .\" etc. to Steve Cheng . .TH "USB_EP_SET_HALT" "9" "13 April 2004" "" "" .SH NAME usb_ep_set_halt \- sets the endpoint halt feature. .SH SYNOPSIS .sp \fB .sp int usb_ep_set_halt (struct usb_ep * \fIep\fB); \fR .SH "ARGUMENTS" .TP \fB\fIep\fB\fR the non-isochronous endpoint being stalled .SH "DESCRIPTION" .PP Use this to stall an endpoint, perhaps as an error report. Except for control endpoints, the endpoint stays halted (will not stream any data) until the host clears this feature; drivers may need to empty the endpoint's request queue first, to make sure no inappropriate transfers happen. .PP Note that while an endpoint CLEAR_FEATURE will be invisible to the gadget driver, a SET_INTERFACE will not be. To reset endpoints for the current altsetting, see \fBusb_ep_clear_halt\fR. When switching altsettings, it's simplest to use \fBusb_ep_enable\fR or \fBusb_ep_disable\fR for the endpoints. .PP Returns zero, or a negative error code. On success, this call sets underlying hardware state that blocks data transfers. Attempts to halt IN endpoints will fail (returning -EAGAIN) if any transfer requests are still queued, or if the controller hardware (usually a FIFO) still holds bytes that the host hasn't collected. .SH "ABOUT THIS DOCUMENT" .PP This documentation was generated with kernel version 2.6.1.