1STRUCT USB_HOST_ENDP(9) Host-Side Data Types and Macro STRUCT USB_HOST_ENDP(9)
2
3
4
6 struct_usb_host_endpoint - host-side endpoint descriptor and queue
7
9 struct usb_host_endpoint {
10 struct usb_endpoint_descriptor desc;
11 struct list_head urb_list;
12 void * hcpriv;
13 struct ep_device * ep_dev;
14 struct usb_host_ss_ep_comp * ss_ep_comp;
15 unsigned char * extra;
16 int extralen;
17 int enabled;
18 };
19
21 desc
22 descriptor for this endpoint, wMaxPacketSize in native byteorder
23
24 urb_list
25 urbs queued to this endpoint; maintained by usbcore
26
27 hcpriv
28 for use by HCD; typically holds hardware dma queue head (QH) with
29 one or more transfer descriptors (TDs) per urb
30
31 ep_dev
32 ep_device for sysfs info
33
34 ss_ep_comp
35 companion descriptor information for this endpoint
36
37 extra
38 descriptors following this endpoint in the configuration
39
40 extralen
41 how many bytes of “extra” are valid
42
43 enabled
44 URBs may be submitted to this endpoint
45
47 USB requests are always queued to a given endpoint, identified by a
48 descriptor within an active interface in a given USB configuration.
49
51Kernel Hackers Manual 2.6. June 2019 STRUCT USB_HOST_ENDP(9)