mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
USB: add ep->enable
This patch (as944) adds an explicit "enabled" field to the usb_host_endpoint structure and uses it in place of the current mechanism. This is merely a time-space tradeoff; it makes checking whether URBs may be submitted to an endpoint simpler. The existing mechanism is efficient when converting urb->pipe to an endpoint pointer, but it's not so efficient when urb->ep is used instead. As a side effect, the procedure for enabling an endpoint is now a little more complicated. The ad-hoc inline code in usb.c and hub.c for enabling ep0 is now replaced with calls to usb_enable_endpoint, which is no longer static. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
5b653c79c0
commit
bdd016ba64
6 changed files with 17 additions and 16 deletions
|
@ -52,6 +52,7 @@ struct ep_device;
|
|||
* @ep_dev: ep_device for sysfs info
|
||||
* @extra: descriptors following this endpoint in the configuration
|
||||
* @extralen: how many bytes of "extra" are valid
|
||||
* @enabled: URBs may be submitted to this endpoint
|
||||
*
|
||||
* USB requests are always queued to a given endpoint, identified by a
|
||||
* descriptor within an active interface in a given USB configuration.
|
||||
|
@ -64,6 +65,7 @@ struct usb_host_endpoint {
|
|||
|
||||
unsigned char *extra; /* Extra descriptors */
|
||||
int extralen;
|
||||
int enabled;
|
||||
};
|
||||
|
||||
/* host-side wrapper for one interface setting's parsed descriptors */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue