Get the endpoint descriptor for a specific endpoint setting
#include <sys/usbdi.h> usbd_endpoint_descriptor_t *usbd_endpoint_descriptor( struct usbd_device *device, uint8_t config, uint8_t iface, uint8_t alt, uint8_t endpoint, struct usbd_desc_node **node );
libusbdi
The usbd_endpoint_descriptor() function lets you obtain the endpoint descriptor for a specific endpoint on a configuration/interface.
The endpoint_descriptor_t structure looks like this:
typedef struct usbd_endpoint_descriptor { uint8_t bLength; uint8_t bDescriptorType; uint8_t bEndpointAddress; uint8_t bmAttributes; uint16_t wMaxPacketSize; uint8_t bInterval; } usbd_endpoint_descriptor_t;
A pointer to usbd_endpoint_descriptor_t on success, or NULL on error.
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | No |
Thread | Yes |
usbd_args_lookup(), usbd_configuration_descriptor(), usbd_device_lookup(), usbd_device_extra(), usbd_device_descriptor(), usbd_hcd_info(), usbd_hub_descriptor(), usbd_interface_descriptor(), usbd_languages_descriptor(), usbd_parse_descriptors(), usbd_string(), usbd_urb_status()