other versions
- wheezy 3.2.78-1
STRUCT USB_EP(9) | Kernel Mode Gadget API | STRUCT USB_EP(9) |
NAME¶
struct_usb_ep - device side representation of USB endpointSYNOPSIS¶
struct usb_ep { void * driver_data; const char * name; const struct usb_ep_ops * ops; struct list_head ep_list; unsigned maxpacket:16; unsigned max_streams:16; unsigned mult:2; unsigned maxburst:4; u8 address; const struct usb_endpoint_descriptor * desc; const struct usb_ss_ep_comp_descriptor * comp_desc; };
MEMBERS¶
driver_datafor use by the gadget driver.
name
identifier for the endpoint, such as
“ep-a” or “ep9in-bulk”
ops
Function pointers used to access
hardware-specific operations.
ep_list
the gadget's ep_list holds all of its
endpoints
maxpacket
The maximum packet size used on this endpoint.
The initial value can sometimes be reduced (hardware allowing), according to
the endpoint descriptor used to configure the endpoint.
max_streams
The maximum number of streams supported by
this EP (0 - 16, actual number is 2^n)
mult
multiplier, 'mult' value for SS Isoc EPs
maxburst
the maximum number of bursts supported by this
EP (for usb3)
address
used to identify the endpoint when finding
descriptor that matches connection speed
desc
endpoint descriptor. This pointer is set
before the endpoint is enabled and remains valid until the endpoint is
disabled.
comp_desc
In case of SuperSpeed support, this is the
endpoint companion descriptor that is used to configure the endpoint
DESCRIPTION¶
the bus controller driver lists all the general purpose endpoints in gadget->ep_list. the control endpoint (gadget->ep0) is not in that list, and is accessed only in response to a driver setup callback.AUTHOR¶
David Brownell <dbrownell@users.sourceforge.net>Author.
COPYRIGHT¶
March 2016 | Kernel Hackers Manual 3.2. |