1STRUCT USB_EP(9)            Kernel Mode Gadget API            STRUCT USB_EP(9)
2
3
4

NAME

6       struct_usb_ep - device side representation of USB endpoint
7

SYNOPSIS

9       struct usb_ep {
10         void * driver_data;
11         const char * name;
12         const struct usb_ep_ops * ops;
13         struct list_head ep_list;
14         unsigned maxpacket:16;
15         unsigned max_streams:16;
16         unsigned mult:2;
17         unsigned maxburst:5;
18         u8 address;
19         const struct usb_endpoint_descriptor * desc;
20         const struct usb_ss_ep_comp_descriptor * comp_desc;
21       };
22

MEMBERS

24       driver_data
25           for use by the gadget driver.
26
27       name
28           identifier for the endpoint, such as “ep-a” or “ep9in-bulk”
29
30       ops
31           Function pointers used to access hardware-specific operations.
32
33       ep_list
34           the gadget's ep_list holds all of its endpoints
35
36       maxpacket
37           The maximum packet size used on this endpoint. The initial value
38           can sometimes be reduced (hardware allowing), according to the
39           endpoint descriptor used to configure the endpoint.
40
41       max_streams
42           The maximum number of streams supported by this EP (0 - 16, actual
43           number is 2^n)
44
45       mult
46           multiplier, 'mult' value for SS Isoc EPs
47
48       maxburst
49           the maximum number of bursts supported by this EP (for usb3)
50
51       address
52           used to identify the endpoint when finding descriptor that matches
53           connection speed
54
55       desc
56           endpoint descriptor. This pointer is set before the endpoint is
57           enabled and remains valid until the endpoint is disabled.
58
59       comp_desc
60           In case of SuperSpeed support, this is the endpoint companion
61           descriptor that is used to configure the endpoint
62

DESCRIPTION

64       the bus controller driver lists all the general purpose endpoints in
65       gadget->ep_list. the control endpoint (gadget->ep0) is not in that
66       list, and is accessed only in response to a driver setup callback.
67

AUTHOR

69       David Brownell <dbrownell@users.sourceforge.net>
70           Author.
71
73Kernel Hackers Manual 3.10         June 2019                  STRUCT USB_EP(9)
Impressum