1STRUCT USB_EP(9) Kernel Mode Gadget API STRUCT USB_EP(9)
2
3
4
6 struct_usb_ep - device side representation of USB endpoint
7
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 };
16
18 driver_data
19 for use by the gadget driver. all other fields are read-only to
20 gadget drivers.
21
22 name
23 identifier for the endpoint, such as “ep-a” or “ep9in-bulk”
24
25 ops
26 Function pointers used to access hardware-specific operations.
27
28 ep_list
29 the gadget´s ep_list holds all of its endpoints
30
31 maxpacket
32 The maximum packet size used on this endpoint. The initial value
33 can sometimes be reduced (hardware allowing), according to the
34 endpoint descriptor used to configure the endpoint.
35
37 the bus controller driver lists all the general purpose endpoints in
38 gadget->ep_list. the control endpoint (gadget->ep0) is not in that
39 list, and is accessed only in response to a driver setup callback.
40
42 David Brownell <dbrownell@users.sourceforge.net>
43 Author.
44
46Kernel Hackers Manual 2.6. June 2019 STRUCT USB_EP(9)