usbd_endpoint_descriptor()

Get the endpoint descriptor for a specific endpoint setting

Synopsis:

#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 );

Arguments:

device
An opaque handle used to identify the USB device.
config
Configuration identifier (bConfigurationValue).
ifc
Interface identifier (bInterfaceNumber).
alt
Alternate identifier (bAlternateSetting).
endpoint
Endpoint identifier (bEndpointAddress).
node
Indicates the descriptor's location for rooting future requests.

Library:

libusbdi

Description:

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;

Returns:

A pointer to usbd_endpoint_descriptor_t on success, or NULL on error.

Classification:

QNX Neutrino, QNX 4

Safety:
Cancellation point No
Interrupt handler No
Signal handler No
Thread Yes

See also:

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()