Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.

usbd_configuration_descriptor()

Get the configuration descriptor for a specific configuration setting

Synopsis:

#include <sys/usbdi.h>

usbd_configuration_descriptor_t 
    *usbd_configuration_descriptor(
        struct usbd_device *device,
        _uint8 cfg, 
        struct usbd_desc_node **node );

Arguments:

device
An opaque handle used to identify the USB device.
cfg
The device's configuration identifier (bConfigurationValue).
node
Indicates the descriptor's location for rooting future requests (e.g. interfaces of this configuration).

Library:

libusbdi

Description:

The usbd_configuration_descriptor() function lets you obtain the configuration descriptor for a specific configuration setting.

The usbd_configuration_descriptor_t structure looks like this:

typedef struct usbd_configuration_descriptor {
    _uint8                  bLength;
    _uint8                  bDescriptorType;
    _uint16                 wTotalLength;
    _uint8                  bNumInterfaces;
    _uint8                  bConfigurationValue;
    _uint8                  iConfiguration;
    _uint8                  bmAttributes;
    _uint8                  MaxPower;
} usbd_configuration_descriptor_t;

Returns:

A pointer to usbd_configuration_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_device_lookup(), usbd_device_extra(), usbd_device_descriptor(), usbd_endpoint_descriptor(), usbd_hcd_info(), usbd_hub_descriptor(), usbd_interface_descriptor(), usbd_languages_descriptor(), usbd_parse_descriptors(), usbd_string(), usbd_urb_status()