Provided by: linux-doc-2.6.15_2.6.15-23.39_all bug


       usb_ep_enable - configure endpoint, making it usable


       int usb_ep_enable  (struct usb_ep * ep,
                            const struct usb_endpoint_descriptor * desc);


       ep     the endpoint being configured. may not  be  the  endpoint  named
              ‘‘ep0’’.  drivers  discover  endpoints  through the ep_list of a

       desc   descriptor for desired behavior. caller guarantees this  pointer
              remains  valid  until  the  endpoint  is disabled; the data byte
              order is little-endian (usb-standard).


       when configurations are set, or when  interface  settings  change,  the
       driver  will  enable  or  disable  the  relevant endpoints. while it is
       enabled, an endpoint may be used for i/o until the  driver  receives  a
       disconnect from the host or until the endpoint is disabled.

       the  ep0 implementation (which calls this routine) must ensure that the
       hardware capabilities of each endpoint match  the  descriptor  provided
       for  it.  for example, an endpoint named ‘‘ep2in-bulk’’ would be usable
       for interrupt transfers as well as bulk, but it likely couldn’t be used
       for  iso  transfers  or  for  endpoint  14.  some  endpoints  are fully
       configurable, with more generic names like ‘‘ep-a’’. (remember that for
       USB, ‘‘in’’ means ‘‘towards the USB master’’.)

       returns zero, or a negative error code.


       David Brownell <>.